about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorCorey Richardson <corey@octayn.net>2013-05-18 22:02:45 -0400
committerCorey Richardson <corey@octayn.net>2013-05-19 08:16:02 -0400
commitcc57ca012a1f49875e19b1b089c91928dc339979 (patch)
tree9f10c27962dbb7c844bc3abb7e20119d75f02aa6 /src/libstd
parent3acf37897a4ca7f019ed8894ec3878801377773d (diff)
downloadrust-cc57ca012a1f49875e19b1b089c91928dc339979.tar.gz
rust-cc57ca012a1f49875e19b1b089c91928dc339979.zip
Use assert_eq! rather than assert! where possible
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/arc.rs46
-rw-r--r--src/libstd/base64.rs20
-rw-r--r--src/libstd/bitv.rs38
-rw-r--r--src/libstd/c_vec.rs8
-rw-r--r--src/libstd/comm.rs4
-rw-r--r--src/libstd/deque.rs110
-rw-r--r--src/libstd/dlist.rs4
-rw-r--r--src/libstd/ebml.rs10
-rw-r--r--src/libstd/flate.rs2
-rw-r--r--src/libstd/flatpipes.rs8
-rw-r--r--src/libstd/future.rs14
-rw-r--r--src/libstd/getopts.rs72
-rw-r--r--src/libstd/list.rs24
-rw-r--r--src/libstd/md4.rs6
-rw-r--r--src/libstd/net_ip.rs2
-rw-r--r--src/libstd/net_tcp.rs2
-rw-r--r--src/libstd/net_url.rs272
-rw-r--r--src/libstd/num/bigint.rs44
-rw-r--r--src/libstd/par.rs6
-rw-r--r--src/libstd/priority_queue.rs68
-rw-r--r--src/libstd/rc.rs2
-rw-r--r--src/libstd/rope.rs10
-rw-r--r--src/libstd/semver.rs24
-rw-r--r--src/libstd/serialize.rs8
-rw-r--r--src/libstd/sha1.rs20
-rw-r--r--src/libstd/smallintmap.rs24
-rw-r--r--src/libstd/sort.rs24
-rw-r--r--src/libstd/sort_stage0.rs28
-rw-r--r--src/libstd/sync.rs10
-rw-r--r--src/libstd/test.rs14
-rw-r--r--src/libstd/time.rs94
-rw-r--r--src/libstd/timer.rs2
-rw-r--r--src/libstd/treemap.rs72
-rw-r--r--src/libstd/uv_iotask.rs2
34 files changed, 547 insertions, 547 deletions
diff --git a/src/libstd/arc.rs b/src/libstd/arc.rs
index df49771258e..f0158acfa79 100644
--- a/src/libstd/arc.rs
+++ b/src/libstd/arc.rs
@@ -501,13 +501,13 @@ mod tests {
             let arc_v = p.recv();
 
             let v = copy *arc::get::<~[int]>(&arc_v);
-            assert!(v[3] == 4);
+            assert_eq!(v[3], 4);
         };
 
         let c = p.recv();
         c.send(arc::clone(&arc_v));
 
-        assert!((*arc::get(&arc_v))[2] == 3);
+        assert_eq!((*arc::get(&arc_v))[2], 3);
 
         info!(arc_v);
     }
@@ -545,7 +545,7 @@ mod tests {
             do arc2.access_cond |one, cond| {
                 cond.signal();
                 // Parent should fail when it wakes up.
-                assert!(*one == 0);
+                assert_eq!(*one, 0);
             }
         }
 
@@ -562,11 +562,11 @@ mod tests {
         let arc2 = ~arc.clone();
         do task::try || {
             do arc2.access |one| {
-                assert!(*one == 2);
+                assert_eq!(*one, 2);
             }
         };
         do arc.access |one| {
-            assert!(*one == 1);
+            assert_eq!(*one, 1);
         }
     }
     #[test] #[should_fail] #[ignore(cfg(windows))]
@@ -575,11 +575,11 @@ mod tests {
         let arc2 = (*arc).clone();
         do task::try || {
             do arc2.write |one| {
-                assert!(*one == 2);
+                assert_eq!(*one, 2);
             }
         };
         do arc.read |one| {
-            assert!(*one == 1);
+            assert_eq!(*one, 1);
         }
     }
     #[test] #[should_fail] #[ignore(cfg(windows))]
@@ -588,11 +588,11 @@ mod tests {
         let arc2 = (*arc).clone();
         do task::try || {
             do arc2.write |one| {
-                assert!(*one == 2);
+                assert_eq!(*one, 2);
             }
         };
         do arc.write |one| {
-            assert!(*one == 1);
+            assert_eq!(*one, 1);
         }
     }
     #[test] #[should_fail] #[ignore(cfg(windows))]
@@ -602,12 +602,12 @@ mod tests {
         do task::try || {
             do arc2.write_downgrade |mut write_mode| {
                 do write_mode.write |one| {
-                    assert!(*one == 2);
+                    assert_eq!(*one, 2);
                 }
             }
         };
         do arc.write |one| {
-            assert!(*one == 1);
+            assert_eq!(*one, 1);
         }
     }
     #[test] #[ignore(cfg(windows))]
@@ -616,11 +616,11 @@ mod tests {
         let arc2 = (*arc).clone();
         do task::try || {
             do arc2.read |one| {
-                assert!(*one == 2);
+                assert_eq!(*one, 2);
             }
         };
         do arc.read |one| {
-            assert!(*one == 1);
+            assert_eq!(*one, 1);
         }
     }
     #[test] #[ignore(cfg(windows))]
@@ -629,11 +629,11 @@ mod tests {
         let arc2 = (*arc).clone();
         do task::try || {
             do arc2.read |one| {
-                assert!(*one == 2);
+                assert_eq!(*one, 2);
             }
         };
         do arc.write |one| {
-            assert!(*one == 1);
+            assert_eq!(*one, 1);
         }
     }
     #[test] #[ignore(cfg(windows))]
@@ -644,12 +644,12 @@ mod tests {
             do arc2.write_downgrade |write_mode| {
                 let read_mode = arc2.downgrade(write_mode);
                 do (&read_mode).read |one| {
-                    assert!(*one == 2);
+                    assert_eq!(*one, 2);
                 }
             }
         };
         do arc.write |one| {
-            assert!(*one == 1);
+            assert_eq!(*one, 1);
         }
     }
     #[test]
@@ -691,7 +691,7 @@ mod tests {
         // Wait for writer to finish
         p.recv();
         do arc.read |num| {
-            assert!(*num == 10);
+            assert_eq!(*num, 10);
         }
     }
     #[test]
@@ -713,7 +713,7 @@ mod tests {
             do task::spawn || {
                 rp1.recv(); // wait for downgrader to give go-ahead
                 do arcn.read |state| {
-                    assert!(*state == 31337);
+                    assert_eq!(*state, 31337);
                     rc2.send(());
                 }
             }
@@ -725,7 +725,7 @@ mod tests {
         do task::spawn || {
             wp1.recv();
             do arc2.write_cond |state, cond| {
-                assert!(*state == 0);
+                assert_eq!(*state, 0);
                 *state = 42;
                 cond.signal();
             }
@@ -733,7 +733,7 @@ mod tests {
             do arc2.write |state| {
                 // This shouldn't happen until after the downgrade read
                 // section, and all other readers, finish.
-                assert!(*state == 31337);
+                assert_eq!(*state, 31337);
                 *state = 42;
             }
             wc2.send(());
@@ -746,7 +746,7 @@ mod tests {
                 while *state == 0 {
                     cond.wait();
                 }
-                assert!(*state == 42);
+                assert_eq!(*state, 42);
                 *state = 31337;
                 // send to other readers
                 for reader_convos.each |x| {
@@ -764,7 +764,7 @@ mod tests {
                     }
                 }
                 wc1.send(()); // tell writer to try again
-                assert!(*state == 31337);
+                assert_eq!(*state, 31337);
             }
         }
 
diff --git a/src/libstd/base64.rs b/src/libstd/base64.rs
index 68242f88fae..76df1081737 100644
--- a/src/libstd/base64.rs
+++ b/src/libstd/base64.rs
@@ -229,23 +229,23 @@ mod tests {
 
     #[test]
     fn test_to_base64() {
-        assert!((~"").to_base64()       == ~"");
+        assert_eq!((~"").to_base64(), ~"");
         assert!((~"f").to_base64()      == ~"Zg==");
-        assert!((~"fo").to_base64()     == ~"Zm8=");
-        assert!((~"foo").to_base64()    == ~"Zm9v");
+        assert_eq!((~"fo").to_base64(), ~"Zm8=");
+        assert_eq!((~"foo").to_base64(), ~"Zm9v");
         assert!((~"foob").to_base64()   == ~"Zm9vYg==");
-        assert!((~"fooba").to_base64()  == ~"Zm9vYmE=");
-        assert!((~"foobar").to_base64() == ~"Zm9vYmFy");
+        assert_eq!((~"fooba").to_base64(), ~"Zm9vYmE=");
+        assert_eq!((~"foobar").to_base64(), ~"Zm9vYmFy");
     }
 
     #[test]
     fn test_from_base64() {
-        assert!((~"").from_base64() == str::to_bytes(~""));
+        assert_eq!((~"").from_base64(), str::to_bytes(~""));
         assert!((~"Zg==").from_base64() == str::to_bytes(~"f"));
-        assert!((~"Zm8=").from_base64() == str::to_bytes(~"fo"));
-        assert!((~"Zm9v").from_base64() == str::to_bytes(~"foo"));
+        assert_eq!((~"Zm8=").from_base64(), str::to_bytes(~"fo"));
+        assert_eq!((~"Zm9v").from_base64(), str::to_bytes(~"foo"));
         assert!((~"Zm9vYg==").from_base64() == str::to_bytes(~"foob"));
-        assert!((~"Zm9vYmE=").from_base64() == str::to_bytes(~"fooba"));
-        assert!((~"Zm9vYmFy").from_base64() == str::to_bytes(~"foobar"));
+        assert_eq!((~"Zm9vYmE=").from_base64(), str::to_bytes(~"fooba"))
+        assert_eq!((~"Zm9vYmFy").from_base64(), str::to_bytes(~"foobar"));
     }
 }
diff --git a/src/libstd/bitv.rs b/src/libstd/bitv.rs
index e31818ecc1c..f0632e550fa 100644
--- a/src/libstd/bitv.rs
+++ b/src/libstd/bitv.rs
@@ -127,7 +127,7 @@ pub impl BigBitv {
     fn process(&mut self, b: &BigBitv, nbits: uint,
                op: &fn(uint, uint) -> uint) -> bool {
         let len = b.storage.len();
-        assert!((self.storage.len() == len));
+        assert_eq!(self.storage.len(), len);
         let mut changed = false;
         for uint::range(0, len) |i| {
             let mask = big_mask(nbits, i);
@@ -508,7 +508,7 @@ pub impl Bitv {
      * the bitvector and vector must have the same length
      */
     fn eq_vec(&self, v: ~[uint]) -> bool {
-        assert!(self.nbits == v.len());
+        assert_eq!(self.nbits, v.len());
         let mut i = 0;
         while i < self.nbits {
             let w0 = self.get(i);
@@ -909,10 +909,10 @@ mod tests {
     #[test]
     fn test_to_str() {
         let zerolen = Bitv::new(0u, false);
-        assert!(zerolen.to_str() == ~"");
+        assert_eq!(zerolen.to_str(), ~"");
 
         let eightbits = Bitv::new(8u, false);
-        assert!(eightbits.to_str() == ~"00000000");
+        assert_eq!(eightbits.to_str(), ~"00000000");
     }
 
     #[test]
@@ -938,7 +938,7 @@ mod tests {
         let mut b = bitv::Bitv::new(2, false);
         b.set(0, true);
         b.set(1, false);
-        assert!(b.to_str() == ~"10");
+        assert_eq!(b.to_str(), ~"10");
     }
 
     #[test]
@@ -1248,19 +1248,19 @@ mod tests {
     fn test_from_bytes() {
         let bitv = from_bytes([0b10110110, 0b00000000, 0b11111111]);
         let str = ~"10110110" + ~"00000000" + ~"11111111";
-        assert!(bitv.to_str() == str);
+        assert_eq!(bitv.to_str(), str);
     }
 
     #[test]
     fn test_to_bytes() {
         let mut bv = Bitv::new(3, true);
         bv.set(1, false);
-        assert!(bv.to_bytes() == ~[0b10100000]);
+        assert_eq!(bv.to_bytes(), ~[0b10100000]);
 
         let mut bv = Bitv::new(9, false);
         bv.set(2, true);
         bv.set(8, true);
-        assert!(bv.to_bytes() == ~[0b00100000, 0b10000000]);
+        assert_eq!(bv.to_bytes(), ~[0b00100000, 0b10000000]);
     }
 
     #[test]
@@ -1272,7 +1272,7 @@ mod tests {
     #[test]
     fn test_to_bools() {
         let bools = ~[false, false, true, false, false, true, true, false];
-        assert!(from_bytes([0b00100110]).to_bools() == bools);
+        assert_eq!(from_bytes([0b00100110]).to_bools(), bools);
     }
 
     #[test]
@@ -1330,7 +1330,7 @@ mod tests {
         assert!(b.insert(400));
         assert!(!b.insert(400));
         assert!(b.contains(&400));
-        assert!(b.len() == 2);
+        assert_eq!(b.len(), 2);
     }
 
     #[test]
@@ -1354,10 +1354,10 @@ mod tests {
         let mut i = 0;
         let expected = [3, 5, 11, 77];
         for a.intersection(&b) |x| {
-            assert!(*x == expected[i]);
+            assert_eq!(*x, expected[i]);
             i += 1
         }
-        assert!(i == expected.len());
+        assert_eq!(i, expected.len());
     }
 
     #[test]
@@ -1377,10 +1377,10 @@ mod tests {
         let mut i = 0;
         let expected = [1, 5, 500];
         for a.difference(&b) |x| {
-            assert!(*x == expected[i]);
+            assert_eq!(*x, expected[i]);
             i += 1
         }
-        assert!(i == expected.len());
+        assert_eq!(i, expected.len());
     }
 
     #[test]
@@ -1402,10 +1402,10 @@ mod tests {
         let mut i = 0;
         let expected = [1, 5, 11, 14, 220];
         for a.symmetric_difference(&b) |x| {
-            assert!(*x == expected[i]);
+            assert_eq!(*x, expected[i]);
             i += 1
         }
-        assert!(i == expected.len());
+        assert_eq!(i, expected.len());
     }
 
     #[test]
@@ -1430,10 +1430,10 @@ mod tests {
         let mut i = 0;
         let expected = [1, 3, 5, 9, 11, 13, 19, 24, 160];
         for a.union(&b) |x| {
-            assert!(*x == expected[i]);
+            assert_eq!(*x, expected[i]);
             i += 1
         }
-        assert!(i == expected.len());
+        assert_eq!(i, expected.len());
     }
 
     #[test]
@@ -1448,7 +1448,7 @@ mod tests {
 
         assert!(a.insert(1000));
         assert!(a.remove(&1000));
-        assert!(a.capacity() == uint::bits);
+        assert_eq!(a.capacity(), uint::bits);
     }
 
     fn rng() -> rand::IsaacRng {
diff --git a/src/libstd/c_vec.rs b/src/libstd/c_vec.rs
index 17b7bae6de5..e463e597188 100644
--- a/src/libstd/c_vec.rs
+++ b/src/libstd/c_vec.rs
@@ -165,9 +165,9 @@ mod tests {
 
         set(cv, 3u, 8u8);
         set(cv, 4u, 9u8);
-        assert!(get(cv, 3u) == 8u8);
-        assert!(get(cv, 4u) == 9u8);
-        assert!(len(cv) == 16u);
+        assert_eq!(get(cv, 3u), 8u8);
+        assert_eq!(get(cv, 4u), 9u8);
+        assert_eq!(len(cv), 16u);
     }
 
     #[test]
@@ -195,7 +195,7 @@ mod tests {
 
         set(cv, 0u, 32u8);
         set(cv, 1u, 33u8);
-        assert!(unsafe { *p } == 32u8);
+        assert_eq!(unsafe { *p }, 32u8);
         set(cv, 2u, 34u8); /* safety */
     }
 
diff --git a/src/libstd/comm.rs b/src/libstd/comm.rs
index 20ab2d61ecc..28d3d329b26 100644
--- a/src/libstd/comm.rs
+++ b/src/libstd/comm.rs
@@ -104,7 +104,7 @@ mod test {
         left.send(~"abc");
         right.send(123);
 
-        assert!(left.recv() == 123);
-        assert!(right.recv() == ~"abc");
+        assert_eq!(left.recv(), 123);
+        assert_eq!(right.recv(), ~"abc");
     }
 }
diff --git a/src/libstd/deque.rs b/src/libstd/deque.rs
index c94acaa1f70..eac765de006 100644
--- a/src/libstd/deque.rs
+++ b/src/libstd/deque.rs
@@ -140,7 +140,7 @@ pub impl<T> Deque<T> {
 /// Grow is only called on full elts, so nelts is also len(elts), unlike
 /// elsewhere.
 fn grow<T>(nelts: uint, lo: uint, elts: &mut [Option<T>]) -> ~[Option<T>] {
-    assert!(nelts == elts.len());
+    assert_eq!(nelts, elts.len());
     let mut rv = ~[];
 
     do rv.grow_fn(nelts + 1) |i| {
@@ -163,46 +163,46 @@ mod tests {
     #[test]
     fn test_simple() {
         let mut d = Deque::new();
-        assert!(d.len() == 0u);
+        assert_eq!(d.len(), 0u);
         d.add_front(17);
         d.add_front(42);
         d.add_back(137);
-        assert!(d.len() == 3u);
+        assert_eq!(d.len(), 3u);
         d.add_back(137);
-        assert!(d.len() == 4u);
+        assert_eq!(d.len(), 4u);
         debug!(d.peek_front());
-        assert!(*d.peek_front() == 42);
+        assert_eq!(*d.peek_front(), 42);
         debug!(d.peek_back());
-        assert!(*d.peek_back() == 137);
+        assert_eq!(*d.peek_back(), 137);
         let mut i: int = d.pop_front();
         debug!(i);
-        assert!(i == 42);
+        assert_eq!(i, 42);
         i = d.pop_back();
         debug!(i);
-        assert!(i == 137);
+        assert_eq!(i, 137);
         i = d.pop_back();
         debug!(i);
-        assert!(i == 137);
+        assert_eq!(i, 137);
         i = d.pop_back();
         debug!(i);
-        assert!(i == 17);
-        assert!(d.len() == 0u);
+        assert_eq!(i, 17);
+        assert_eq!(d.len(), 0u);
         d.add_back(3);
-        assert!(d.len() == 1u);
+        assert_eq!(d.len(), 1u);
         d.add_front(2);
-        assert!(d.len() == 2u);
+        assert_eq!(d.len(), 2u);
         d.add_back(4);
-        assert!(d.len() == 3u);
+        assert_eq!(d.len(), 3u);
         d.add_front(1);
-        assert!(d.len() == 4u);
+        assert_eq!(d.len(), 4u);
         debug!(d.get(0));
         debug!(d.get(1));
         debug!(d.get(2));
         debug!(d.get(3));
-        assert!(*d.get(0) == 1);
-        assert!(*d.get(1) == 2);
-        assert!(*d.get(2) == 3);
-        assert!(*d.get(3) == 4);
+        assert_eq!(*d.get(0), 1);
+        assert_eq!(*d.get(1), 2);
+        assert_eq!(*d.get(2), 3);
+        assert_eq!(*d.get(3), 4);
     }
 
     #[test]
@@ -213,63 +213,63 @@ mod tests {
         let d: @int = @175;
 
         let mut deq = Deque::new();
-        assert!(deq.len() == 0);
+        assert_eq!(deq.len(), 0);
         deq.add_front(a);
         deq.add_front(b);
         deq.add_back(c);
-        assert!(deq.len() == 3);
+        assert_eq!(deq.len(), 3);
         deq.add_back(d);
-        assert!(deq.len() == 4);
-        assert!(*deq.peek_front() == b);
-        assert!(*deq.peek_back() == d);
-        assert!(deq.pop_front() == b);
-        assert!(deq.pop_back() == d);
-        assert!(deq.pop_back() == c);
-        assert!(deq.pop_back() == a);
-        assert!(deq.len() == 0);
+        assert_eq!(deq.len(), 4);
+        assert_eq!(*deq.peek_front(), b);
+        assert_eq!(*deq.peek_back(), d);
+        assert_eq!(deq.pop_front(), b);
+        assert_eq!(deq.pop_back(), d);
+        assert_eq!(deq.pop_back(), c);
+        assert_eq!(deq.pop_back(), a);
+        assert_eq!(deq.len(), 0);
         deq.add_back(c);
-        assert!(deq.len() == 1);
+        assert_eq!(deq.len(), 1);
         deq.add_front(b);
-        assert!(deq.len() == 2);
+        assert_eq!(deq.len(), 2);
         deq.add_back(d);
-        assert!(deq.len() == 3);
+        assert_eq!(deq.len(), 3);
         deq.add_front(a);
-        assert!(deq.len() == 4);
-        assert!(*deq.get(0) == a);
-        assert!(*deq.get(1) == b);
-        assert!(*deq.get(2) == c);
-        assert!(*deq.get(3) == d);
+        assert_eq!(deq.len(), 4);
+        assert_eq!(*deq.get(0), a);
+        assert_eq!(*deq.get(1), b);
+        assert_eq!(*deq.get(2), c);
+        assert_eq!(*deq.get(3), d);
     }
 
     #[cfg(test)]
     fn test_parameterized<T:Copy + Eq>(a: T, b: T, c: T, d: T) {
         let mut deq = Deque::new();
-        assert!(deq.len() == 0);
+        assert_eq!(deq.len(), 0);
         deq.add_front(a);
         deq.add_front(b);
         deq.add_back(c);
-        assert!(deq.len() == 3);
+        assert_eq!(deq.len(), 3);
         deq.add_back(d);
-        assert!(deq.len() == 4);
-        assert!(*deq.peek_front() == b);
-        assert!(*deq.peek_back() == d);
-        assert!(deq.pop_front() == b);
-        assert!(deq.pop_back() == d);
-        assert!(deq.pop_back() == c);
-        assert!(deq.pop_back() == a);
-        assert!(deq.len() == 0);
+        assert_eq!(deq.len(), 4);
+        assert_eq!(*deq.peek_front(), b);
+        assert_eq!(*deq.peek_back(), d);
+        assert_eq!(deq.pop_front(), b);
+        assert_eq!(deq.pop_back(), d);
+        assert_eq!(deq.pop_back(), c);
+        assert_eq!(deq.pop_back(), a);
+        assert_eq!(deq.len(), 0);
         deq.add_back(c);
-        assert!(deq.len() == 1);
+        assert_eq!(deq.len(), 1);
         deq.add_front(b);
-        assert!(deq.len() == 2);
+        assert_eq!(deq.len(), 2);
         deq.add_back(d);
-        assert!(deq.len() == 3);
+        assert_eq!(deq.len(), 3);
         deq.add_front(a);
-        assert!(deq.len() == 4);
-        assert!(*deq.get(0) == a);
-        assert!(*deq.get(1) == b);
-        assert!(*deq.get(2) == c);
-        assert!(*deq.get(3) == d);
+        assert_eq!(deq.len(), 4);
+        assert_eq!(*deq.get(0), a);
+        assert_eq!(*deq.get(1), b);
+        assert_eq!(*deq.get(2), c);
+        assert_eq!(*deq.get(3), d);
     }
 
     #[deriving(Eq)]
diff --git a/src/libstd/dlist.rs b/src/libstd/dlist.rs
index 84bd803afe7..e0b4d746d53 100644
--- a/src/libstd/dlist.rs
+++ b/src/libstd/dlist.rs
@@ -438,7 +438,7 @@ pub impl<T> DList<T> {
             link = nobe.next_link();
             count += 1;
         }
-        assert!(count == self.len());
+        assert_eq!(count, self.len());
         // iterate backwards - some of this is probably redundant.
         link = self.peek_tail_n();
         rabbit = link;
@@ -459,7 +459,7 @@ pub impl<T> DList<T> {
             link = nobe.prev_link();
             count -= 1;
         }
-        assert!(count == 0);
+        assert_eq!(count, 0);
     }
 }
 
diff --git a/src/libstd/ebml.rs b/src/libstd/ebml.rs
index 64f78d5ab7b..8d550081d1e 100644
--- a/src/libstd/ebml.rs
+++ b/src/libstd/ebml.rs
@@ -273,22 +273,22 @@ pub mod reader {
     pub fn doc_as_str(d: Doc) -> ~str { str::from_bytes(doc_data(d)) }
 
     pub fn doc_as_u8(d: Doc) -> u8 {
-        assert!(d.end == d.start + 1u);
+        assert_eq!(d.end, d.start + 1u);
         (*d.data)[d.start]
     }
 
     pub fn doc_as_u16(d: Doc) -> u16 {
-        assert!(d.end == d.start + 2u);
+        assert_eq!(d.end, d.start + 2u);
         io::u64_from_be_bytes(*d.data, d.start, 2u) as u16
     }
 
     pub fn doc_as_u32(d: Doc) -> u32 {
-        assert!(d.end == d.start + 4u);
+        assert_eq!(d.end, d.start + 4u);
         io::u64_from_be_bytes(*d.data, d.start, 4u) as u32
     }
 
     pub fn doc_as_u64(d: Doc) -> u64 {
-        assert!(d.end == d.start + 8u);
+        assert_eq!(d.end, d.start + 8u);
         io::u64_from_be_bytes(*d.data, d.start, 8u)
     }
 
@@ -988,7 +988,7 @@ mod tests {
             let mut deser = reader::Decoder(ebml_doc);
             let v1 = serialize::Decodable::decode(&mut deser);
             debug!("v1 == %?", v1);
-            assert!(v == v1);
+            assert_eq!(v, v1);
         }
 
         test_v(Some(22));
diff --git a/src/libstd/flate.rs b/src/libstd/flate.rs
index 7485f2645bd..b0d219bc945 100644
--- a/src/libstd/flate.rs
+++ b/src/libstd/flate.rs
@@ -102,6 +102,6 @@ fn test_flate_round_trip() {
         debug!("%u bytes deflated to %u (%.1f%% size)",
                in.len(), cmp.len(),
                100.0 * ((cmp.len() as float) / (in.len() as float)));
-        assert!((in == out));
+        assert_eq!(in, out);
     }
 }
diff --git a/src/libstd/flatpipes.rs b/src/libstd/flatpipes.rs
index f4b581f84fc..a634f88dcf5 100644
--- a/src/libstd/flatpipes.rs
+++ b/src/libstd/flatpipes.rs
@@ -356,7 +356,7 @@ pub mod flatteners {
     impl<T:Copy + Owned> Unflattener<T> for PodUnflattener<T> {
         fn unflatten(&self, buf: ~[u8]) -> T {
             assert!(size_of::<T>() != 0);
-            assert!(size_of::<T>() == buf.len());
+            assert_eq!(size_of::<T>(), buf.len());
             let addr_of_init: &u8 = unsafe { &*vec::raw::to_ptr(buf) };
             let addr_of_value: &T = unsafe { cast::transmute(addr_of_init) };
             copy *addr_of_value
@@ -652,7 +652,7 @@ mod test {
         let port = serial::reader_port(reader);
 
         let res: int = port.recv();
-        assert!(res == 10i);
+        assert_eq!(res, 10i);
     }
 
     #[test]
@@ -700,7 +700,7 @@ mod test {
         let port = pod::reader_port(reader);
 
         let res: int = port.recv();
-        assert!(res == 10);
+        assert_eq!(res, 10);
     }
 
     #[test]
@@ -843,7 +843,7 @@ mod test {
             for int::range(0, 10) |i| {
                 let j = port.recv();
                 debug!("received %?", j);
-                assert!(i == j);
+                assert_eq!(i, j);
             }
 
             // The test is over!
diff --git a/src/libstd/future.rs b/src/libstd/future.rs
index 93b6540a40d..02828b8eaee 100644
--- a/src/libstd/future.rs
+++ b/src/libstd/future.rs
@@ -154,7 +154,7 @@ mod test {
     #[test]
     fn test_from_value() {
         let mut f = from_value(~"snail");
-        assert!(f.get() == ~"snail");
+        assert_eq!(f.get(), ~"snail");
     }
 
     #[test]
@@ -162,31 +162,31 @@ mod test {
         let (po, ch) = oneshot();
         send_one(ch, ~"whale");
         let mut f = from_port(po);
-        assert!(f.get() == ~"whale");
+        assert_eq!(f.get(), ~"whale");
     }
 
     #[test]
     fn test_from_fn() {
         let mut f = from_fn(|| ~"brail");
-        assert!(f.get() == ~"brail");
+        assert_eq!(f.get(), ~"brail");
     }
 
     #[test]
     fn test_interface_get() {
         let mut f = from_value(~"fail");
-        assert!(f.get() == ~"fail");
+        assert_eq!(f.get(), ~"fail");
     }
 
     #[test]
     fn test_get_ref_method() {
         let mut f = from_value(22);
-        assert!(*f.get_ref() == 22);
+        assert_eq!(*f.get_ref(), 22);
     }
 
     #[test]
     fn test_spawn() {
         let mut f = spawn(|| ~"bale");
-        assert!(f.get() == ~"bale");
+        assert_eq!(f.get(), ~"bale");
     }
 
     #[test]
@@ -204,7 +204,7 @@ mod test {
         do task::spawn {
             let mut f = f.take();
             let actual = f.get();
-            assert!(actual == expected);
+            assert_eq!(actual, expected);
         }
     }
 }
diff --git a/src/libstd/getopts.rs b/src/libstd/getopts.rs
index 1cb63124456..d0b298deb89 100644
--- a/src/libstd/getopts.rs
+++ b/src/libstd/getopts.rs
@@ -684,7 +684,7 @@ mod tests {
         match rs {
           Ok(ref m) => {
             assert!((opt_present(m, ~"test")));
-            assert!((opt_str(m, ~"test") == ~"20"));
+            assert_eq!(opt_str(m, ~"test"), ~"20");
           }
           _ => { fail!("test_reqopt_long failed"); }
         }
@@ -731,7 +731,7 @@ mod tests {
         match rs {
           Ok(ref m) => {
             assert!((opt_present(m, ~"t")));
-            assert!((opt_str(m, ~"t") == ~"20"));
+            assert_eq!(opt_str(m, ~"t"), ~"20");
           }
           _ => fail!()
         }
@@ -780,7 +780,7 @@ mod tests {
         match rs {
           Ok(ref m) => {
             assert!((opt_present(m, ~"test")));
-            assert!((opt_str(m, ~"test") == ~"20"));
+            assert_eq!(opt_str(m, ~"test"), ~"20");
           }
           _ => fail!()
         }
@@ -827,7 +827,7 @@ mod tests {
         match rs {
           Ok(ref m) => {
             assert!((opt_present(m, ~"t")));
-            assert!((opt_str(m, ~"t") == ~"20"));
+            assert_eq!(opt_str(m, ~"t"), ~"20");
           }
           _ => fail!()
         }
@@ -946,7 +946,7 @@ mod tests {
           Ok(ref m) => {
             // The next variable after the flag is just a free argument
 
-            assert!((m.free[0] == ~"20"));
+            assert!(m.free[0] == ~"20");
           }
           _ => fail!()
         }
@@ -971,7 +971,7 @@ mod tests {
         let rs = getopts(args, opts);
         match rs {
           Ok(ref m) => {
-            assert!((opt_count(m, ~"v") == 1));
+            assert_eq!(opt_count(m, ~"v"), 1);
           }
           _ => fail!()
         }
@@ -984,7 +984,7 @@ mod tests {
         let rs = getopts(args, opts);
         match rs {
           Ok(ref m) => {
-            assert!((opt_count(m, ~"v") == 2));
+            assert_eq!(opt_count(m, ~"v"), 2);
           }
           _ => fail!()
         }
@@ -997,7 +997,7 @@ mod tests {
         let rs = getopts(args, opts);
         match rs {
           Ok(ref m) => {
-            assert!((opt_count(m, ~"v") == 2));
+            assert_eq!(opt_count(m, ~"v"), 2);
           }
           _ => fail!()
         }
@@ -1010,7 +1010,7 @@ mod tests {
         let rs = getopts(args, opts);
         match rs {
           Ok(ref m) => {
-            assert!((opt_count(m, ~"verbose") == 1));
+            assert_eq!(opt_count(m, ~"verbose"), 1);
           }
           _ => fail!()
         }
@@ -1023,7 +1023,7 @@ mod tests {
         let rs = getopts(args, opts);
         match rs {
           Ok(ref m) => {
-            assert!((opt_count(m, ~"verbose") == 2));
+            assert_eq!(opt_count(m, ~"verbose"), 2);
           }
           _ => fail!()
         }
@@ -1038,7 +1038,7 @@ mod tests {
         match rs {
           Ok(ref m) => {
             assert!((opt_present(m, ~"test")));
-            assert!((opt_str(m, ~"test") == ~"20"));
+            assert_eq!(opt_str(m, ~"test"), ~"20");
           }
           _ => fail!()
         }
@@ -1073,11 +1073,11 @@ mod tests {
         let rs = getopts(args, opts);
         match rs {
           Ok(ref m) => {
-              assert!((opt_present(m, ~"test")));
-              assert!((opt_str(m, ~"test") == ~"20"));
+              assert!(opt_present(m, ~"test"));
+              assert_eq!(opt_str(m, ~"test"), ~"20");
               let pair = opt_strs(m, ~"test");
-              assert!((pair[0] == ~"20"));
-              assert!((pair[1] == ~"30"));
+              assert!(pair[0] == ~"20");
+              assert!(pair[1] == ~"30");
           }
           _ => fail!()
         }
@@ -1091,7 +1091,7 @@ mod tests {
         match rs {
           Ok(ref m) => {
             assert!((opt_present(m, ~"t")));
-            assert!((opt_str(m, ~"t") == ~"20"));
+            assert_eq!(opt_str(m, ~"t"), ~"20");
           }
           _ => fail!()
         }
@@ -1127,10 +1127,10 @@ mod tests {
         match rs {
           Ok(ref m) => {
             assert!((opt_present(m, ~"t")));
-            assert!((opt_str(m, ~"t") == ~"20"));
+            assert_eq!(opt_str(m, ~"t"), ~"20");
             let pair = opt_strs(m, ~"t");
-            assert!((pair[0] == ~"20"));
-            assert!((pair[1] == ~"30"));
+            assert!(pair[0] == ~"20");
+            assert!(pair[1] == ~"30");
           }
           _ => fail!()
         }
@@ -1171,19 +1171,19 @@ mod tests {
         let rs = getopts(args, opts);
         match rs {
           Ok(ref m) => {
-            assert!((m.free[0] == ~"prog"));
-            assert!((m.free[1] == ~"free1"));
-            assert!((opt_str(m, ~"s") == ~"20"));
-            assert!((m.free[2] == ~"free2"));
+            assert!(m.free[0] == ~"prog");
+            assert!(m.free[1] == ~"free1");
+            assert_eq!(opt_str(m, ~"s"), ~"20");
+            assert!(m.free[2] == ~"free2");
             assert!((opt_present(m, ~"flag")));
-            assert!((opt_str(m, ~"long") == ~"30"));
+            assert_eq!(opt_str(m, ~"long"), ~"30");
             assert!((opt_present(m, ~"f")));
             let pair = opt_strs(m, ~"m");
-            assert!((pair[0] == ~"40"));
-            assert!((pair[1] == ~"50"));
+            assert!(pair[0] == ~"40");
+            assert!(pair[1] == ~"50");
             let pair = opt_strs(m, ~"n");
-            assert!((pair[0] == ~"-A B"));
-            assert!((pair[1] == ~"-60 70"));
+            assert!(pair[0] == ~"-A B");
+            assert!(pair[1] == ~"-60 70");
             assert!((!opt_present(m, ~"notpresent")));
           }
           _ => fail!()
@@ -1206,10 +1206,10 @@ mod tests {
         assert!(!opts_present(matches, ~[~"thing"]));
         assert!(!opts_present(matches, ~[]));
 
-        assert!(opts_str(matches, ~[~"e"]) == ~"foo");
-        assert!(opts_str(matches, ~[~"encrypt"]) == ~"foo");
-        assert!(opts_str(matches, ~[~"e", ~"encrypt"]) == ~"foo");
-        assert!(opts_str(matches, ~[~"encrypt", ~"e"]) == ~"foo");
+        assert_eq!(opts_str(matches, ~[~"e"]), ~"foo");
+        assert_eq!(opts_str(matches, ~[~"encrypt"]), ~"foo");
+        assert_eq!(opts_str(matches, ~[~"e", ~"encrypt"]), ~"foo");
+        assert_eq!(opts_str(matches, ~[~"encrypt", ~"e"]), ~"foo");
     }
 
     #[test]
@@ -1221,9 +1221,9 @@ mod tests {
           result::Err(_) => fail!()
         };
         assert!(opts_present(matches, ~[~"L"]));
-        assert!(opts_str(matches, ~[~"L"]) == ~"foo");
+        assert_eq!(opts_str(matches, ~[~"L"]), ~"foo");
         assert!(opts_present(matches, ~[~"M"]));
-        assert!(opts_str(matches, ~[~"M"]) == ~".");
+        assert_eq!(opts_str(matches, ~[~"M"]), ~".");
 
     }
 
@@ -1290,7 +1290,7 @@ mod tests {
         let verbose = groups::reqopt(~"b", ~"banana",
                                        ~"some bananas", ~"VAL");
 
-        assert!(groups::long_to_short(&verbose) == short);
+        assert_eq!(groups::long_to_short(&verbose), short);
     }
 
     #[test]
@@ -1347,7 +1347,7 @@ Options:
 
         debug!("expected: <<%s>>", expected);
         debug!("generated: <<%s>>", generated_usage);
-        assert!(generated_usage == expected);
+        assert_eq!(generated_usage, expected);
     }
 
     #[test]
diff --git a/src/libstd/list.rs b/src/libstd/list.rs
index aa4abbac9d3..ae3251b961c 100644
--- a/src/libstd/list.rs
+++ b/src/libstd/list.rs
@@ -228,19 +228,19 @@ mod tests {
     fn test_from_vec() {
         let l = from_vec(~[0, 1, 2]);
 
-        assert!((head(l) == 0));
+        assert_eq!(head(l), 0);
 
         let tail_l = tail(l);
-        assert!((head(tail_l) == 1));
+        assert_eq!(head(tail_l), 1);
 
         let tail_tail_l = tail(tail_l);
-        assert!((head(tail_tail_l) == 2));
+        assert_eq!(head(tail_tail_l), 2);
     }
 
     #[test]
     fn test_from_vec_empty() {
         let empty : @list::List<int> = from_vec(~[]);
-        assert!((empty == @list::Nil::<int>));
+        assert_eq!(empty, @list::Nil::<int>);
     }
 
     #[test]
@@ -248,8 +248,8 @@ mod tests {
         fn add(a: &uint, b: &int) -> uint { return *a + (*b as uint); }
         let l = from_vec(~[0, 1, 2, 3, 4]);
         let empty = @list::Nil::<int>;
-        assert!((list::foldl(0u, l, add) == 10u));
-        assert!((list::foldl(0u, empty, add) == 0u));
+        assert_eq!(list::foldl(0u, l, add), 10u);
+        assert_eq!(list::foldl(0u, empty, add), 0u);
     }
 
     #[test]
@@ -258,14 +258,14 @@ mod tests {
             *a - *b
         }
         let l = from_vec(~[1, 2, 3, 4]);
-        assert!((list::foldl(0, l, sub) == -10));
+        assert_eq!(list::foldl(0, l, sub), -10);
     }
 
     #[test]
     fn test_find_success() {
         fn match_(i: &int) -> bool { return *i == 2; }
         let l = from_vec(~[0, 1, 2]);
-        assert!((list::find(l, match_) == option::Some(2)));
+        assert_eq!(list::find(l, match_), option::Some(2));
     }
 
     #[test]
@@ -273,8 +273,8 @@ mod tests {
         fn match_(_i: &int) -> bool { return false; }
         let l = from_vec(~[0, 1, 2]);
         let empty = @list::Nil::<int>;
-        assert!((list::find(l, match_) == option::None::<int>));
-        assert!((list::find(empty, match_) == option::None::<int>));
+        assert_eq!(list::find(l, match_), option::None::<int>);
+        assert_eq!(list::find(empty, match_), option::None::<int>);
     }
 
     #[test]
@@ -291,8 +291,8 @@ mod tests {
     fn test_len() {
         let l = from_vec(~[0, 1, 2]);
         let empty = @list::Nil::<int>;
-        assert!((list::len(l) == 3u));
-        assert!((list::len(empty) == 0u));
+        assert_eq!(list::len(l), 3u);
+        assert_eq!(list::len(empty), 0u);
     }
 
     #[test]
diff --git a/src/libstd/md4.rs b/src/libstd/md4.rs
index 84561256cd1..19cd418915e 100644
--- a/src/libstd/md4.rs
+++ b/src/libstd/md4.rs
@@ -125,9 +125,9 @@ pub fn md4_text(msg: &str) -> ~str { md4_str(str::to_bytes(msg)) }
 
 #[test]
 fn test_md4() {
-    assert!(md4_text(~"") == ~"31d6cfe0d16ae931b73c59d7e0c089c0");
-    assert!(md4_text(~"a") == ~"bde52cb31de33e46245e05fbdbd6fb24");
-    assert!(md4_text(~"abc") == ~"a448017aaf21d8525fc10ae87aa6729d");
+    assert_eq!(md4_text(~""), ~"31d6cfe0d16ae931b73c59d7e0c089c0");
+    assert_eq!(md4_text(~"a"), ~"bde52cb31de33e46245e05fbdbd6fb24");
+    assert_eq!(md4_text(~"abc"), ~"a448017aaf21d8525fc10ae87aa6729d");
     assert!(md4_text(~"message digest") ==
         ~"d9130a8164549fe818874806e1c7014b");
     assert!(md4_text(~"abcdefghijklmnopqrstuvwxyz") ==
diff --git a/src/libstd/net_ip.rs b/src/libstd/net_ip.rs
index cc4e7ee0204..4f67f1c5f13 100644
--- a/src/libstd/net_ip.rs
+++ b/src/libstd/net_ip.rs
@@ -383,7 +383,7 @@ mod test {
         let format_result = format_addr(&v6::parse_addr(localhost_str));
         debug!("results: expected: '%s' actual: '%s'",
             localhost_str, format_result);
-        assert!(format_result == localhost_str);
+        assert_eq!(format_result, localhost_str);
     }
     #[test]
     fn test_ip_ipv4_bad_parse() {
diff --git a/src/libstd/net_tcp.rs b/src/libstd/net_tcp.rs
index 37578e42baf..db61679890b 100644
--- a/src/libstd/net_tcp.rs
+++ b/src/libstd/net_tcp.rs
@@ -1623,7 +1623,7 @@ mod test {
         // This is what we are actually testing!
         assert!(net::ip::format_addr(&sock.get_peer_addr()) ==
             ~"127.0.0.1");
-        assert!(net::ip::get_port(&sock.get_peer_addr()) == 8887);
+        assert_eq!(net::ip::get_port(&sock.get_peer_addr()), 8887);
 
         // Fulfill the protocol the test server expects
         let resp_bytes = str::to_bytes(~"ping");
diff --git a/src/libstd/net_url.rs b/src/libstd/net_url.rs
index e7cf710cf67..ef503817b55 100644
--- a/src/libstd/net_url.rs
+++ b/src/libstd/net_url.rs
@@ -722,53 +722,53 @@ impl IterBytes for Url {
 #[test]
 fn test_split_char_first() {
     let (u,v) = split_char_first(~"hello, sweet world", ',');
-    assert!(u == ~"hello");
-    assert!(v == ~" sweet world");
+    assert_eq!(u, ~"hello");
+    assert_eq!(v, ~" sweet world");
 
     let (u,v) = split_char_first(~"hello sweet world", ',');
-    assert!(u == ~"hello sweet world");
-    assert!(v == ~"");
+    assert_eq!(u, ~"hello sweet world");
+    assert_eq!(v, ~"");
 }
 
 #[test]
 fn test_get_authority() {
     let (u, h, p, r) = get_authority(
         "//user:pass@rust-lang.org/something").unwrap();
-    assert!(u == Some(UserInfo::new(~"user", Some(~"pass"))));
-    assert!(h == ~"rust-lang.org");
+    assert_eq!(u, Some(UserInfo::new(~"user", Some(~"pass"))));
+    assert_eq!(h, ~"rust-lang.org");
     assert!(p.is_none());
-    assert!(r == ~"/something");
+    assert_eq!(r, ~"/something");
 
     let (u, h, p, r) = get_authority(
         "//rust-lang.org:8000?something").unwrap();
     assert!(u.is_none());
-    assert!(h == ~"rust-lang.org");
-    assert!(p == Some(~"8000"));
-    assert!(r == ~"?something");
+    assert_eq!(h, ~"rust-lang.org");
+    assert_eq!(p, Some(~"8000"));
+    assert_eq!(r, ~"?something");
 
     let (u, h, p, r) = get_authority(
         "//rust-lang.org#blah").unwrap();
     assert!(u.is_none());
-    assert!(h == ~"rust-lang.org");
+    assert_eq!(h, ~"rust-lang.org");
     assert!(p.is_none());
-    assert!(r == ~"#blah");
+    assert_eq!(r, ~"#blah");
 
     // ipv6 tests
     let (_, h, _, _) = get_authority(
         "//2001:0db8:85a3:0042:0000:8a2e:0370:7334#blah").unwrap();
-    assert!(h == ~"2001:0db8:85a3:0042:0000:8a2e:0370:7334");
+    assert_eq!(h, ~"2001:0db8:85a3:0042:0000:8a2e:0370:7334");
 
     let (_, h, p, _) = get_authority(
         "//2001:0db8:85a3:0042:0000:8a2e:0370:7334:8000#blah").unwrap();
-    assert!(h == ~"2001:0db8:85a3:0042:0000:8a2e:0370:7334");
-    assert!(p == Some(~"8000"));
+    assert_eq!(h, ~"2001:0db8:85a3:0042:0000:8a2e:0370:7334");
+    assert_eq!(p, Some(~"8000"));
 
     let (u, h, p, _) = get_authority(
         "//us:p@2001:0db8:85a3:0042:0000:8a2e:0370:7334:8000#blah"
     ).unwrap();
-    assert!(u == Some(UserInfo::new(~"us", Some(~"p"))));
-    assert!(h == ~"2001:0db8:85a3:0042:0000:8a2e:0370:7334");
-    assert!(p == Some(~"8000"));
+    assert_eq!(u, Some(UserInfo::new(~"us", Some(~"p"))));
+    assert_eq!(h, ~"2001:0db8:85a3:0042:0000:8a2e:0370:7334");
+    assert_eq!(p, Some(~"8000"));
 
     // invalid authorities;
     assert!(get_authority("//user:pass@rust-lang:something").is_err());
@@ -780,22 +780,22 @@ fn test_get_authority() {
 
     // these parse as empty, because they don't start with '//'
     let (_, h, _, _) = get_authority(~"user:pass@rust-lang").unwrap();
-    assert!(h == ~"");
+    assert_eq!(h, ~"");
     let (_, h, _, _) = get_authority(~"rust-lang.org").unwrap();
-    assert!(h == ~"");
+    assert_eq!(h, ~"");
 }
 
 #[test]
 fn test_get_path() {
     let (p, r) = get_path("/something+%20orother", true).unwrap();
-    assert!(p == ~"/something+ orother");
-    assert!(r == ~"");
+    assert_eq!(p, ~"/something+ orother");
+    assert_eq!(r, ~"");
     let (p, r) = get_path("test@email.com#fragment", false).unwrap();
-    assert!(p == ~"test@email.com");
-    assert!(r == ~"#fragment");
+    assert_eq!(p, ~"test@email.com");
+    assert_eq!(r, ~"#fragment");
     let (p, r) = get_path(~"/gen/:addr=?q=v", false).unwrap();
-    assert!(p == ~"/gen/:addr=");
-    assert!(r == ~"?q=v");
+    assert_eq!(p, ~"/gen/:addr=");
+    assert_eq!(r, ~"?q=v");
 
     //failure cases
     assert!(get_path(~"something?q", true).is_err());
@@ -860,56 +860,56 @@ mod tests {
     #[test]
     fn test_full_url_parse_and_format() {
         let url = ~"http://user:pass@rust-lang.org/doc?s=v#something";
-        assert!(from_str(url).unwrap().to_str() == url);
+        assert_eq!(from_str(url).unwrap().to_str(), url);
     }
 
     #[test]
     fn test_userless_url_parse_and_format() {
         let url = ~"http://rust-lang.org/doc?s=v#something";
-        assert!(from_str(url).unwrap().to_str() == url);
+        assert_eq!(from_str(url).unwrap().to_str(), url);
     }
 
     #[test]
     fn test_queryless_url_parse_and_format() {
         let url = ~"http://user:pass@rust-lang.org/doc#something";
-        assert!(from_str(url).unwrap().to_str() == url);
+        assert_eq!(from_str(url).unwrap().to_str(), url);
     }
 
     #[test]
     fn test_empty_query_url_parse_and_format() {
         let url = ~"http://user:pass@rust-lang.org/doc?#something";
         let should_be = ~"http://user:pass@rust-lang.org/doc#something";
-        assert!(from_str(url).unwrap().to_str() == should_be);
+        assert_eq!(from_str(url).unwrap().to_str(), should_be);
     }
 
     #[test]
     fn test_fragmentless_url_parse_and_format() {
         let url = ~"http://user:pass@rust-lang.org/doc?q=v";
-        assert!(from_str(url).unwrap().to_str() == url);
+        assert_eq!(from_str(url).unwrap().to_str(), url);
     }
 
     #[test]
     fn test_minimal_url_parse_and_format() {
         let url = ~"http://rust-lang.org/doc";
-        assert!(from_str(url).unwrap().to_str() == url);
+        assert_eq!(from_str(url).unwrap().to_str(), url);
     }
 
     #[test]
     fn test_scheme_host_only_url_parse_and_format() {
         let url = ~"http://rust-lang.org";
-        assert!(from_str(url).unwrap().to_str() == url);
+        assert_eq!(from_str(url).unwrap().to_str(), url);
     }
 
     #[test]
     fn test_pathless_url_parse_and_format() {
         let url = ~"http://user:pass@rust-lang.org?q=v#something";
-        assert!(from_str(url).unwrap().to_str() == url);
+        assert_eq!(from_str(url).unwrap().to_str(), url);
     }
 
     #[test]
     fn test_scheme_host_fragment_only_url_parse_and_format() {
         let url = ~"http://rust-lang.org#something";
-        assert!(from_str(url).unwrap().to_str() == url);
+        assert_eq!(from_str(url).unwrap().to_str(), url);
     }
 
     #[test]
@@ -923,134 +923,134 @@ mod tests {
     #[test]
     fn test_url_without_authority() {
         let url = ~"mailto:test@email.com";
-        assert!(from_str(url).unwrap().to_str() == url);
+        assert_eq!(from_str(url).unwrap().to_str(), url);
     }
 
     #[test]
     fn test_encode() {
-        assert!(encode("") == ~"");
-        assert!(encode("http://example.com") == ~"http://example.com");
-        assert!(encode("foo bar% baz") == ~"foo%20bar%25%20baz");
-        assert!(encode(" ") == ~"%20");
-        assert!(encode("!") == ~"!");
-        assert!(encode("\"") == ~"\"");
-        assert!(encode("#") == ~"#");
-        assert!(encode("$") == ~"$");
-        assert!(encode("%") == ~"%25");
-        assert!(encode("&") == ~"&");
-        assert!(encode("'") == ~"%27");
-        assert!(encode("(") == ~"(");
-        assert!(encode(")") == ~")");
-        assert!(encode("*") == ~"*");
-        assert!(encode("+") == ~"+");
-        assert!(encode(",") == ~",");
-        assert!(encode("/") == ~"/");
-        assert!(encode(":") == ~":");
-        assert!(encode(";") == ~";");
-        assert!(encode("=") == ~"=");
-        assert!(encode("?") == ~"?");
-        assert!(encode("@") == ~"@");
-        assert!(encode("[") == ~"[");
-        assert!(encode("]") == ~"]");
+        assert_eq!(encode(""), ~"");
+        assert_eq!(encode("http://example.com"), ~"http://example.com");
+        assert_eq!(encode("foo bar% baz"), ~"foo%20bar%25%20baz");
+        assert_eq!(encode(" "), ~"%20");
+        assert_eq!(encode("!"), ~"!");
+        assert_eq!(encode("\""), ~"\"");
+        assert_eq!(encode("#"), ~"#");
+        assert_eq!(encode("$"), ~"$");
+        assert_eq!(encode("%"), ~"%25");
+        assert_eq!(encode("&"), ~"&");
+        assert_eq!(encode("'"), ~"%27");
+        assert_eq!(encode("("), ~"(");
+        assert_eq!(encode(")"), ~")");
+        assert_eq!(encode("*"), ~"*");
+        assert_eq!(encode("+"), ~"+");
+        assert_eq!(encode(","), ~",");
+        assert_eq!(encode("/"), ~"/");
+        assert_eq!(encode(":"), ~":");
+        assert_eq!(encode(";"), ~";");
+        assert_eq!(encode("="), ~"=");
+        assert_eq!(encode("?"), ~"?");
+        assert_eq!(encode("@"), ~"@");
+        assert_eq!(encode("["), ~"[");
+        assert_eq!(encode("]"), ~"]");
     }
 
     #[test]
     fn test_encode_component() {
-        assert!(encode_component("") == ~"");
+        assert_eq!(encode_component(""), ~"");
         assert!(encode_component("http://example.com") ==
             ~"http%3A%2F%2Fexample.com");
         assert!(encode_component("foo bar% baz") ==
             ~"foo%20bar%25%20baz");
-        assert!(encode_component(" ") == ~"%20");
-        assert!(encode_component("!") == ~"%21");
-        assert!(encode_component("#") == ~"%23");
-        assert!(encode_component("$") == ~"%24");
-        assert!(encode_component("%") == ~"%25");
-        assert!(encode_component("&") == ~"%26");
-        assert!(encode_component("'") == ~"%27");
-        assert!(encode_component("(") == ~"%28");
-        assert!(encode_component(")") == ~"%29");
-        assert!(encode_component("*") == ~"%2A");
-        assert!(encode_component("+") == ~"%2B");
-        assert!(encode_component(",") == ~"%2C");
-        assert!(encode_component("/") == ~"%2F");
-        assert!(encode_component(":") == ~"%3A");
-        assert!(encode_component(";") == ~"%3B");
-        assert!(encode_component("=") == ~"%3D");
-        assert!(encode_component("?") == ~"%3F");
-        assert!(encode_component("@") == ~"%40");
-        assert!(encode_component("[") == ~"%5B");
-        assert!(encode_component("]") == ~"%5D");
+        assert_eq!(encode_component(" "), ~"%20");
+        assert_eq!(encode_component("!"), ~"%21");
+        assert_eq!(encode_component("#"), ~"%23");
+        assert_eq!(encode_component("$"), ~"%24");
+        assert_eq!(encode_component("%"), ~"%25");
+        assert_eq!(encode_component("&"), ~"%26");
+        assert_eq!(encode_component("'"), ~"%27");
+        assert_eq!(encode_component("("), ~"%28");
+        assert_eq!(encode_component(")"), ~"%29");
+        assert_eq!(encode_component("*"), ~"%2A");
+        assert_eq!(encode_component("+"), ~"%2B");
+        assert_eq!(encode_component(","), ~"%2C");
+        assert_eq!(encode_component("/"), ~"%2F");
+        assert_eq!(encode_component(":"), ~"%3A");
+        assert_eq!(encode_component(";"), ~"%3B");
+        assert_eq!(encode_component("="), ~"%3D");
+        assert_eq!(encode_component("?"), ~"%3F");
+        assert_eq!(encode_component("@"), ~"%40");
+        assert_eq!(encode_component("["), ~"%5B");
+        assert_eq!(encode_component("]"), ~"%5D");
     }
 
     #[test]
     fn test_decode() {
-        assert!(decode("") == ~"");
-        assert!(decode("abc/def 123") == ~"abc/def 123");
-        assert!(decode("abc%2Fdef%20123") == ~"abc%2Fdef 123");
-        assert!(decode("%20") == ~" ");
-        assert!(decode("%21") == ~"%21");
-        assert!(decode("%22") == ~"%22");
-        assert!(decode("%23") == ~"%23");
-        assert!(decode("%24") == ~"%24");
-        assert!(decode("%25") == ~"%");
-        assert!(decode("%26") == ~"%26");
-        assert!(decode("%27") == ~"'");
-        assert!(decode("%28") == ~"%28");
-        assert!(decode("%29") == ~"%29");
-        assert!(decode("%2A") == ~"%2A");
-        assert!(decode("%2B") == ~"%2B");
-        assert!(decode("%2C") == ~"%2C");
-        assert!(decode("%2F") == ~"%2F");
-        assert!(decode("%3A") == ~"%3A");
-        assert!(decode("%3B") == ~"%3B");
-        assert!(decode("%3D") == ~"%3D");
-        assert!(decode("%3F") == ~"%3F");
-        assert!(decode("%40") == ~"%40");
-        assert!(decode("%5B") == ~"%5B");
-        assert!(decode("%5D") == ~"%5D");
+        assert_eq!(decode(""), ~"");
+        assert_eq!(decode("abc/def 123"), ~"abc/def 123");
+        assert_eq!(decode("abc%2Fdef%20123"), ~"abc%2Fdef 123");
+        assert_eq!(decode("%20"), ~" ");
+        assert_eq!(decode("%21"), ~"%21");
+        assert_eq!(decode("%22"), ~"%22");
+        assert_eq!(decode("%23"), ~"%23");
+        assert_eq!(decode("%24"), ~"%24");
+        assert_eq!(decode("%25"), ~"%");
+        assert_eq!(decode("%26"), ~"%26");
+        assert_eq!(decode("%27"), ~"'");
+        assert_eq!(decode("%28"), ~"%28");
+        assert_eq!(decode("%29"), ~"%29");
+        assert_eq!(decode("%2A"), ~"%2A");
+        assert_eq!(decode("%2B"), ~"%2B");
+        assert_eq!(decode("%2C"), ~"%2C");
+        assert_eq!(decode("%2F"), ~"%2F");
+        assert_eq!(decode("%3A"), ~"%3A");
+        assert_eq!(decode("%3B"), ~"%3B");
+        assert_eq!(decode("%3D"), ~"%3D");
+        assert_eq!(decode("%3F"), ~"%3F");
+        assert_eq!(decode("%40"), ~"%40");
+        assert_eq!(decode("%5B"), ~"%5B");
+        assert_eq!(decode("%5D"), ~"%5D");
     }
 
     #[test]
     fn test_decode_component() {
-        assert!(decode_component("") == ~"");
-        assert!(decode_component("abc/def 123") == ~"abc/def 123");
-        assert!(decode_component("abc%2Fdef%20123") == ~"abc/def 123");
-        assert!(decode_component("%20") == ~" ");
-        assert!(decode_component("%21") == ~"!");
-        assert!(decode_component("%22") == ~"\"");
-        assert!(decode_component("%23") == ~"#");
-        assert!(decode_component("%24") == ~"$");
-        assert!(decode_component("%25") == ~"%");
-        assert!(decode_component("%26") == ~"&");
-        assert!(decode_component("%27") == ~"'");
-        assert!(decode_component("%28") == ~"(");
-        assert!(decode_component("%29") == ~")");
-        assert!(decode_component("%2A") == ~"*");
-        assert!(decode_component("%2B") == ~"+");
-        assert!(decode_component("%2C") == ~",");
-        assert!(decode_component("%2F") == ~"/");
-        assert!(decode_component("%3A") == ~":");
-        assert!(decode_component("%3B") == ~";");
-        assert!(decode_component("%3D") == ~"=");
-        assert!(decode_component("%3F") == ~"?");
-        assert!(decode_component("%40") == ~"@");
-        assert!(decode_component("%5B") == ~"[");
-        assert!(decode_component("%5D") == ~"]");
+        assert_eq!(decode_component(""), ~"");
+        assert_eq!(decode_component("abc/def 123"), ~"abc/def 123");
+        assert_eq!(decode_component("abc%2Fdef%20123"), ~"abc/def 123");
+        assert_eq!(decode_component("%20"), ~" ");
+        assert_eq!(decode_component("%21"), ~"!");
+        assert_eq!(decode_component("%22"), ~"\"");
+        assert_eq!(decode_component("%23"), ~"#");
+        assert_eq!(decode_component("%24"), ~"$");
+        assert_eq!(decode_component("%25"), ~"%");
+        assert_eq!(decode_component("%26"), ~"&");
+        assert_eq!(decode_component("%27"), ~"'");
+        assert_eq!(decode_component("%28"), ~"(");
+        assert_eq!(decode_component("%29"), ~")");
+        assert_eq!(decode_component("%2A"), ~"*");
+        assert_eq!(decode_component("%2B"), ~"+");
+        assert_eq!(decode_component("%2C"), ~",");
+        assert_eq!(decode_component("%2F"), ~"/");
+        assert_eq!(decode_component("%3A"), ~":");
+        assert_eq!(decode_component("%3B"), ~";");
+        assert_eq!(decode_component("%3D"), ~"=");
+        assert_eq!(decode_component("%3F"), ~"?");
+        assert_eq!(decode_component("%40"), ~"@");
+        assert_eq!(decode_component("%5B"), ~"[");
+        assert_eq!(decode_component("%5D"), ~"]");
     }
 
     #[test]
     fn test_encode_form_urlencoded() {
         let mut m = HashMap::new();
-        assert!(encode_form_urlencoded(&m) == ~"");
+        assert_eq!(encode_form_urlencoded(&m), ~"");
 
         m.insert(~"", ~[]);
         m.insert(~"foo", ~[]);
-        assert!(encode_form_urlencoded(&m) == ~"");
+        assert_eq!(encode_form_urlencoded(&m), ~"");
 
         let mut m = HashMap::new();
         m.insert(~"foo", ~[~"bar", ~"123"]);
-        assert!(encode_form_urlencoded(&m) == ~"foo=bar&foo=123");
+        assert_eq!(encode_form_urlencoded(&m), ~"foo=bar&foo=123");
 
         let mut m = HashMap::new();
         m.insert(~"foo bar", ~[~"abc", ~"12 = 34"]);
@@ -1063,13 +1063,13 @@ mod tests {
         // FIXME #4449: Commented out because this causes an ICE, but only
         // on FreeBSD
         /*
-        assert!(decode_form_urlencoded(~[]).len() == 0);
+        assert_eq!(decode_form_urlencoded(~[]).len(), 0);
 
         let s = str::to_bytes("a=1&foo+bar=abc&foo+bar=12+%3D+34");
         let form = decode_form_urlencoded(s);
-        assert!(form.len() == 2);
-        assert!(form.get_ref(&~"a") == &~[~"1"]);
-        assert!(form.get_ref(&~"foo bar") == &~[~"abc", ~"12 = 34"]);
+        assert_eq!(form.len(), 2);
+        assert_eq!(form.get_ref(&~"a"), &~[~"1"]);
+        assert_eq!(form.get_ref(&~"foo bar"), &~[~"abc", ~"12 = 34"]);
         */
     }
 }
diff --git a/src/libstd/num/bigint.rs b/src/libstd/num/bigint.rs
index c35415c5331..21685b03c07 100644
--- a/src/libstd/num/bigint.rs
+++ b/src/libstd/num/bigint.rs
@@ -238,7 +238,7 @@ impl Sub<BigUint, BigUint> for BigUint {
             lo
         };
 
-        assert!(borrow == 0);     // <=> assert!((self >= other));
+        assert_eq!(borrow, 0);     // <=> assert!((self >= other));
         return BigUint::new(diff);
     }
 }
@@ -1170,7 +1170,7 @@ mod biguint_tests {
                 if i == j {
                     assert_eq!(ni.cmp(nj), Equal);
                     assert_eq!(nj.cmp(ni), Equal);
-                    assert!(ni == nj);
+                    assert_eq!(ni, nj);
                     assert!(!(ni != nj));
                     assert!(ni <= nj);
                     assert!(ni >= nj);
@@ -1200,7 +1200,7 @@ mod biguint_tests {
     #[test]
     fn test_shl() {
         fn check(v: ~[BigDigit], shift: uint, ans: ~[BigDigit]) {
-            assert!(BigUint::new(v) << shift == BigUint::new(ans));
+            assert_eq!(BigUint::new(v) << shift, BigUint::new(ans));
         }
 
         check(~[], 3, ~[]);
@@ -1245,7 +1245,7 @@ mod biguint_tests {
     #[ignore(cfg(target_arch = "mips"))]
     fn test_shr() {
         fn check(v: ~[BigDigit], shift: uint, ans: ~[BigDigit]) {
-            assert!(BigUint::new(v) >> shift == BigUint::new(ans));
+            assert_eq!(BigUint::new(v) >> shift, BigUint::new(ans));
         }
 
         check(~[], 3, ~[]);
@@ -1298,9 +1298,9 @@ mod biguint_tests {
         check(~[ 0,  1], ((uint::max_value >> BigDigit::bits) + 1) as int);
         check(~[-1, -1 >> 1], int::max_value);
 
-        assert!(BigUint::new(~[0, -1]).to_int() == int::max_value);
-        assert!(BigUint::new(~[0, 0, 1]).to_int() == int::max_value);
-        assert!(BigUint::new(~[0, 0, -1]).to_int() == int::max_value);
+        assert_eq!(BigUint::new(~[0, -1]).to_int(), int::max_value);
+        assert_eq!(BigUint::new(~[0, 0, 1]).to_int(), int::max_value);
+        assert_eq!(BigUint::new(~[0, 0, -1]).to_int(), int::max_value);
     }
 
     #[test]
@@ -1318,8 +1318,8 @@ mod biguint_tests {
         check(~[ 0, -1], uint::max_value << BigDigit::bits);
         check(~[-1, -1], uint::max_value);
 
-        assert!(BigUint::new(~[0, 0, 1]).to_uint()  == uint::max_value);
-        assert!(BigUint::new(~[0, 0, -1]).to_uint() == uint::max_value);
+        assert_eq!(BigUint::new(~[0, 0, 1]).to_uint(), uint::max_value);
+        assert_eq!(BigUint::new(~[0, 0, -1]).to_uint(), uint::max_value);
     }
 
     static sum_triples: &'static [(&'static [BigDigit],
@@ -1433,10 +1433,10 @@ mod biguint_tests {
             let c = BigUint::from_slice(cVec);
 
             if !a.is_zero() {
-                assert!(c.div_rem(&a) == (b.clone(), Zero::zero()));
+                assert_eq!(c.div_rem(&a), (b.clone(), Zero::zero()));
             }
             if !b.is_zero() {
-                assert!(c.div_rem(&b) == (a.clone(), Zero::zero()));
+                assert_eq!(c.div_rem(&b), (a.clone(), Zero::zero()));
             }
         }
 
@@ -1560,7 +1560,7 @@ mod biguint_tests {
             let &(n, rs) = num_pair;
             for rs.each |str_pair| {
                 let &(radix, str) = str_pair;
-                assert!(n.to_str_radix(radix) == str);
+                assert_eq!(n.to_str_radix(radix), str);
             }
         }
     }
@@ -1597,7 +1597,7 @@ mod biguint_tests {
             let ans = match FromStrRadix::from_str_radix(s, 10) {
                 Some(x) => x, None => fail!()
             };
-            assert!(n == ans);
+            assert_eq!(n, ans);
         }
 
         check(3, "6");
@@ -1618,7 +1618,7 @@ mod bigint_tests {
         fn check(inp_s: Sign, inp_n: uint, ans_s: Sign, ans_n: uint) {
             let inp = BigInt::from_biguint(inp_s, BigUint::from_uint(inp_n));
             let ans = BigInt { sign: ans_s, data: BigUint::from_uint(ans_n)};
-            assert!(inp == ans);
+            assert_eq!(inp, ans);
         }
         check(Plus, 1, Plus, 1);
         check(Plus, 0, Zero, 0);
@@ -1640,7 +1640,7 @@ mod bigint_tests {
                 if i == j {
                     assert_eq!(ni.cmp(nj), Equal);
                     assert_eq!(nj.cmp(ni), Equal);
-                    assert!(ni == nj);
+                    assert_eq!(ni, nj);
                     assert!(!(ni != nj));
                     assert!(ni <= nj);
                     assert!(ni >= nj);
@@ -1751,7 +1751,7 @@ mod bigint_tests {
             assert!(c + (-b) == a);
             assert!(a + (-c) == (-b));
             assert!(b + (-c) == (-a));
-            assert!((-a) + (-b) == (-c));
+            assert!((-a) + (-b) == (-c))
             assert!(a + (-a) == Zero::zero());
         }
     }
@@ -1766,8 +1766,8 @@ mod bigint_tests {
 
             assert!(c - a == b);
             assert!(c - b == a);
-            assert!((-b) - a == (-c));
-            assert!((-a) - b == (-c));
+            assert!((-b) - a == (-c))
+            assert!((-a) - b == (-c))
             assert!(b - (-a) == c);
             assert!(a - (-b) == c);
             assert!((-c) - (-a) == (-b));
@@ -1845,7 +1845,7 @@ mod bigint_tests {
         fn check_sub(a: &BigInt, b: &BigInt, ans_d: &BigInt, ans_m: &BigInt) {
             let (d, m) = a.div_mod_floor(b);
             if !m.is_zero() {
-                assert!(m.sign == b.sign);
+                assert_eq!(m.sign, b.sign);
             }
             assert!(m.abs() <= b.abs());
             assert!(*a == b * d + m);
@@ -1896,7 +1896,7 @@ mod bigint_tests {
         fn check_sub(a: &BigInt, b: &BigInt, ans_q: &BigInt, ans_r: &BigInt) {
             let (q, r) = a.div_rem(b);
             if !r.is_zero() {
-                assert!(r.sign == a.sign);
+                assert_eq!(r.sign, a.sign);
             }
             assert!(r.abs() <= b.abs());
             assert!(*a == b * q + r);
@@ -1999,7 +1999,7 @@ mod bigint_tests {
     fn test_from_str_radix() {
         fn check(s: &str, ans: Option<int>) {
             let ans = ans.map(|&n| IntConvertible::from_int::<BigInt>(n));
-            assert!(FromStrRadix::from_str_radix(s, 10) == ans);
+            assert_eq!(FromStrRadix::from_str_radix(s, 10), ans);
         }
         check("10", Some(10));
         check("1", Some(1));
@@ -2016,6 +2016,6 @@ mod bigint_tests {
             BigInt::new(Minus, ~[1, 1, 1]));
         assert!(-BigInt::new(Minus, ~[1, 1, 1]) ==
             BigInt::new(Plus,  ~[1, 1, 1]));
-        assert!(-Zero::zero::<BigInt>() == Zero::zero::<BigInt>());
+        assert_eq!(-Zero::zero::<BigInt>(), Zero::zero::<BigInt>());
     }
 }
diff --git a/src/libstd/par.rs b/src/libstd/par.rs
index d1af484cb22..e766d2d3bf0 100644
--- a/src/libstd/par.rs
+++ b/src/libstd/par.rs
@@ -59,7 +59,7 @@ fn map_slices<A:Copy + Owned,B:Copy + Owned>(
                         let slice : &[A] =
                             cast::transmute(slice);
                         info!("slice: %?", (base, slice.len(), end - base));
-                        assert!(slice.len() == end - base);
+                        assert_eq!(slice.len(), end - base);
                         f(base, slice)
                     }
                 };
@@ -70,7 +70,7 @@ fn map_slices<A:Copy + Owned,B:Copy + Owned>(
         info!("tasks spawned");
 
         info!("num_tasks: %?", (num_tasks, futures.len()));
-        assert!((num_tasks == futures.len()));
+        assert_eq!(num_tasks, futures.len());
 
         let r = do vec::map_consume(futures) |ys| {
             let mut ys = ys;
@@ -106,7 +106,7 @@ pub fn mapi<A:Copy + Owned,B:Copy + Owned>(
     });
     let r = vec::concat(slices);
     info!("%?", (r.len(), xs.len()));
-    assert!((r.len() == xs.len()));
+    assert_eq!(r.len(), xs.len());
     r
 }
 
diff --git a/src/libstd/priority_queue.rs b/src/libstd/priority_queue.rs
index 3c96a8e145d..b54fc81aac1 100644
--- a/src/libstd/priority_queue.rs
+++ b/src/libstd/priority_queue.rs
@@ -196,87 +196,87 @@ mod tests {
         let mut sorted = merge_sort(data, le);
         let mut heap = from_vec(data);
         while !heap.is_empty() {
-            assert!(heap.top() == sorted.last());
-            assert!(heap.pop() == sorted.pop());
+            assert_eq!(heap.top(), sorted.last());
+            assert_eq!(heap.pop(), sorted.pop());
         }
     }
 
     #[test]
     fn test_push() {
         let mut heap = from_vec(~[2, 4, 9]);
-        assert!(heap.len() == 3);
+        assert_eq!(heap.len(), 3);
         assert!(*heap.top() == 9);
         heap.push(11);
-        assert!(heap.len() == 4);
+        assert_eq!(heap.len(), 4);
         assert!(*heap.top() == 11);
         heap.push(5);
-        assert!(heap.len() == 5);
+        assert_eq!(heap.len(), 5);
         assert!(*heap.top() == 11);
         heap.push(27);
-        assert!(heap.len() == 6);
+        assert_eq!(heap.len(), 6);
         assert!(*heap.top() == 27);
         heap.push(3);
-        assert!(heap.len() == 7);
+        assert_eq!(heap.len(), 7);
         assert!(*heap.top() == 27);
         heap.push(103);
-        assert!(heap.len() == 8);
+        assert_eq!(heap.len(), 8);
         assert!(*heap.top() == 103);
     }
 
     #[test]
     fn test_push_unique() {
         let mut heap = from_vec(~[~2, ~4, ~9]);
-        assert!(heap.len() == 3);
+        assert_eq!(heap.len(), 3);
         assert!(*heap.top() == ~9);
         heap.push(~11);
-        assert!(heap.len() == 4);
+        assert_eq!(heap.len(), 4);
         assert!(*heap.top() == ~11);
         heap.push(~5);
-        assert!(heap.len() == 5);
+        assert_eq!(heap.len(), 5);
         assert!(*heap.top() == ~11);
         heap.push(~27);
-        assert!(heap.len() == 6);
+        assert_eq!(heap.len(), 6);
         assert!(*heap.top() == ~27);
         heap.push(~3);
-        assert!(heap.len() == 7);
+        assert_eq!(heap.len(), 7);
         assert!(*heap.top() == ~27);
         heap.push(~103);
-        assert!(heap.len() == 8);
+        assert_eq!(heap.len(), 8);
         assert!(*heap.top() == ~103);
     }
 
     #[test]
     fn test_push_pop() {
         let mut heap = from_vec(~[5, 5, 2, 1, 3]);
-        assert!(heap.len() == 5);
-        assert!(heap.push_pop(6) == 6);
-        assert!(heap.len() == 5);
-        assert!(heap.push_pop(0) == 5);
-        assert!(heap.len() == 5);
-        assert!(heap.push_pop(4) == 5);
-        assert!(heap.len() == 5);
-        assert!(heap.push_pop(1) == 4);
-        assert!(heap.len() == 5);
+        assert_eq!(heap.len(), 5);
+        assert_eq!(heap.push_pop(6), 6);
+        assert_eq!(heap.len(), 5);
+        assert_eq!(heap.push_pop(0), 5);
+        assert_eq!(heap.len(), 5);
+        assert_eq!(heap.push_pop(4), 5);
+        assert_eq!(heap.len(), 5);
+        assert_eq!(heap.push_pop(1), 4);
+        assert_eq!(heap.len(), 5);
     }
 
     #[test]
     fn test_replace() {
         let mut heap = from_vec(~[5, 5, 2, 1, 3]);
-        assert!(heap.len() == 5);
-        assert!(heap.replace(6) == 5);
-        assert!(heap.len() == 5);
-        assert!(heap.replace(0) == 6);
-        assert!(heap.len() == 5);
-        assert!(heap.replace(4) == 5);
-        assert!(heap.len() == 5);
-        assert!(heap.replace(1) == 4);
-        assert!(heap.len() == 5);
+        assert_eq!(heap.len(), 5);
+        assert_eq!(heap.replace(6), 5);
+        assert_eq!(heap.len(), 5);
+        assert_eq!(heap.replace(0), 6);
+        assert_eq!(heap.len(), 5);
+        assert_eq!(heap.replace(4), 5);
+        assert_eq!(heap.len(), 5);
+        assert_eq!(heap.replace(1), 4);
+        assert_eq!(heap.len(), 5);
     }
 
     fn check_to_vec(data: ~[int]) {
         let heap = from_vec(copy data);
-        assert!(merge_sort((copy heap).to_vec(), le) == merge_sort(data, le));
-        assert!(heap.to_sorted_vec() == merge_sort(data, le));
+        assert_eq!(merge_sort((copy heap).to_vec(), le), merge_sort(data, le));
+        assert_eq!(heap.to_sorted_vec(), merge_sort(data, le));
     }
 
     #[test]
diff --git a/src/libstd/rc.rs b/src/libstd/rc.rs
index 46f50eafec1..cc1492ba448 100644
--- a/src/libstd/rc.rs
+++ b/src/libstd/rc.rs
@@ -218,7 +218,7 @@ pub impl<T> RcMut<T> {
     #[inline]
     fn with_mut_borrow<U>(&self, f: &fn(&mut T) -> U) -> U {
         unsafe {
-            assert!((*self.ptr).borrow == Nothing);
+            assert_eq!((*self.ptr).borrow, Nothing);
             (*self.ptr).borrow = Mutable;
             let res = f(&mut (*self.ptr).value);
             (*self.ptr).borrow = Nothing;
diff --git a/src/libstd/rope.rs b/src/libstd/rope.rs
index 9afa7262ce4..925f79b66c9 100644
--- a/src/libstd/rope.rs
+++ b/src/libstd/rope.rs
@@ -1281,8 +1281,8 @@ mod tests {
 
     #[test]
     fn trivial() {
-        assert!(char_len(empty()) == 0u);
-        assert!(byte_len(empty()) == 0u);
+        assert_eq!(char_len(empty()), 0u);
+        assert_eq!(byte_len(empty()), 0u);
     }
 
     #[test]
@@ -1290,7 +1290,7 @@ mod tests {
         let sample = @~"0123456789ABCDE";
         let r      = of_str(sample);
 
-        assert!(char_len(r) == str::char_len(*sample));
+        assert_eq!(char_len(r), str::char_len(*sample));
         assert!(rope_to_string(r) == *sample);
     }
 
@@ -1352,7 +1352,7 @@ mod tests {
             }
         }
 
-        assert!(len == str::char_len(*sample));
+        assert_eq!(len, str::char_len(*sample));
     }
 
     #[test]
@@ -1375,7 +1375,7 @@ mod tests {
 
         assert!(eq(r1, r2));
         let r3 = bal(r2);
-        assert!(char_len(r1) == char_len(r3));
+        assert_eq!(char_len(r1), char_len(r3));
 
         assert!(eq(r1, r3));
     }
diff --git a/src/libstd/semver.rs b/src/libstd/semver.rs
index f6d1b1ba2ec..09855c9334e 100644
--- a/src/libstd/semver.rs
+++ b/src/libstd/semver.rs
@@ -239,16 +239,16 @@ pub fn parse(s: &str) -> Option<Version> {
 
 #[test]
 fn test_parse() {
-    assert!(parse("") == None);
-    assert!(parse("  ") == None);
-    assert!(parse("1") == None);
-    assert!(parse("1.2") == None);
-    assert!(parse("1.2") == None);
-    assert!(parse("1") == None);
-    assert!(parse("1.2") == None);
-    assert!(parse("1.2.3-") == None);
-    assert!(parse("a.b.c") == None);
-    assert!(parse("1.2.3 abc") == None);
+    assert_eq!(parse(""), None);
+    assert_eq!(parse("  "), None);
+    assert_eq!(parse("1"), None);
+    assert_eq!(parse("1.2"), None);
+    assert_eq!(parse("1.2"), None);
+    assert_eq!(parse("1"), None);
+    assert_eq!(parse("1.2"), None);
+    assert_eq!(parse("1.2.3-"), None);
+    assert_eq!(parse("a.b.c"), None);
+    assert_eq!(parse("1.2.3 abc"), None);
 
     assert!(parse("1.2.3") == Some(Version {
         major: 1u,
@@ -320,8 +320,8 @@ fn test_parse() {
 
 #[test]
 fn test_eq() {
-    assert!(parse("1.2.3")        == parse("1.2.3"));
-    assert!(parse("1.2.3-alpha1") == parse("1.2.3-alpha1"));
+    assert_eq!(parse("1.2.3"), parse("1.2.3"));
+    assert_eq!(parse("1.2.3-alpha1"), parse("1.2.3-alpha1"));
 }
 
 #[test]
diff --git a/src/libstd/serialize.rs b/src/libstd/serialize.rs
index a5d2604b6f6..c270f46751f 100644
--- a/src/libstd/serialize.rs
+++ b/src/libstd/serialize.rs
@@ -500,7 +500,7 @@ impl<S:Encoder,T0:Encodable<S>,T1:Encodable<S>> Encodable<S> for (T0, T1) {
 impl<D:Decoder,T0:Decodable<D>,T1:Decodable<D>> Decodable<D> for (T0, T1) {
     fn decode(d: &mut D) -> (T0, T1) {
         do d.read_seq |d, len| {
-            assert!(len == 2);
+            assert_eq!(len, 2);
             (
                 d.read_seq_elt(0, |d| Decodable::decode(d)),
                 d.read_seq_elt(1, |d| Decodable::decode(d))
@@ -536,7 +536,7 @@ impl<
 > Decodable<D> for (T0, T1, T2) {
     fn decode(d: &mut D) -> (T0, T1, T2) {
         do d.read_seq |d, len| {
-            assert!(len == 3);
+            assert_eq!(len, 3);
             (
                 d.read_seq_elt(0, |d| Decodable::decode(d)),
                 d.read_seq_elt(1, |d| Decodable::decode(d)),
@@ -576,7 +576,7 @@ impl<
 > Decodable<D> for (T0, T1, T2, T3) {
     fn decode(d: &mut D) -> (T0, T1, T2, T3) {
         do d.read_seq |d, len| {
-            assert!(len == 4);
+            assert_eq!(len, 4);
             (
                 d.read_seq_elt(0, |d| Decodable::decode(d)),
                 d.read_seq_elt(1, |d| Decodable::decode(d)),
@@ -620,7 +620,7 @@ impl<
 > Decodable<D> for (T0, T1, T2, T3, T4) {
     fn decode(d: &mut D) -> (T0, T1, T2, T3, T4) {
         do d.read_seq |d, len| {
-            assert!(len == 5);
+            assert_eq!(len, 5);
             (
                 d.read_seq_elt(0, |d| Decodable::decode(d)),
                 d.read_seq_elt(1, |d| Decodable::decode(d)),
diff --git a/src/libstd/sha1.rs b/src/libstd/sha1.rs
index 6d8bf20d837..bb3be8a55ea 100644
--- a/src/libstd/sha1.rs
+++ b/src/libstd/sha1.rs
@@ -90,8 +90,8 @@ pub fn sha1() -> @Sha1 {
         }
     }
     fn process_msg_block(st: &mut Sha1State) {
-        assert!(st.h.len() == digest_buf_len);
-        assert!(vec::uniq_len(st.work_buf) == work_buf_len);
+        assert_eq!(st.h.len(), digest_buf_len);
+        assert_eq!(vec::uniq_len(st.work_buf), work_buf_len);
         let mut t: int; // Loop counter
         let w = st.work_buf;
 
@@ -192,7 +192,7 @@ pub fn sha1() -> @Sha1 {
      * can be assumed that the message digest has been computed.
      */
     fn pad_msg(st: &mut Sha1State) {
-        assert!((vec::len((*st).msg_block) == msg_block_len));
+        assert_eq!(vec::len((*st).msg_block), msg_block_len);
 
         /*
          * Check to see if the current message block is too small to hold
@@ -230,7 +230,7 @@ pub fn sha1() -> @Sha1 {
 
     impl Sha1 for Sha1State {
         fn reset(&mut self) {
-            assert!(self.h.len() == digest_buf_len);
+            assert_eq!(self.h.len(), digest_buf_len);
             self.len_low = 0u32;
             self.len_high = 0u32;
             self.msg_block_idx = 0u;
@@ -365,13 +365,13 @@ mod tests {
         ];
         let tests = fips_180_1_tests + wikipedia_tests;
         fn check_vec_eq(v0: ~[u8], v1: ~[u8]) {
-            assert!((vec::len::<u8>(v0) == vec::len::<u8>(v1)));
+            assert_eq!(vec::len::<u8>(v0), vec::len::<u8>(v1));
             let len = vec::len::<u8>(v0);
             let mut i = 0u;
             while i < len {
                 let a = v0[i];
                 let b = v1[i];
-                assert!((a == b));
+                assert_eq!(a, b);
                 i += 1u;
             }
         }
@@ -384,8 +384,8 @@ mod tests {
             check_vec_eq(copy t.output, out);
 
             let out_str = sh.result_str();
-            assert!((out_str.len() == 40));
-            assert!((out_str == t.output_str));
+            assert_eq!(out_str.len(), 40);
+            assert!(out_str == t.output_str);
 
             sh.reset();
         }
@@ -405,8 +405,8 @@ mod tests {
             check_vec_eq(copy t.output, out);
 
             let out_str = sh.result_str();
-            assert!((out_str.len() == 40));
-            assert!((out_str == t.output_str));
+            assert_eq!(out_str.len(), 40);
+            assert!(out_str == t.output_str);
 
             sh.reset();
         }
diff --git a/src/libstd/smallintmap.rs b/src/libstd/smallintmap.rs
index afc1d0fe65f..a336bd54a61 100644
--- a/src/libstd/smallintmap.rs
+++ b/src/libstd/smallintmap.rs
@@ -249,16 +249,16 @@ mod tests {
     #[test]
     fn test_len() {
         let mut map = SmallIntMap::new();
-        assert!(map.len() == 0);
+        assert_eq!(map.len(), 0);
         assert!(map.is_empty());
         assert!(map.insert(5, 20));
-        assert!(map.len() == 1);
+        assert_eq!(map.len(), 1);
         assert!(!map.is_empty());
         assert!(map.insert(11, 12));
-        assert!(map.len() == 2);
+        assert_eq!(map.len(), 2);
         assert!(!map.is_empty());
         assert!(map.insert(14, 22));
-        assert!(map.len() == 3);
+        assert_eq!(map.len(), 3);
         assert!(!map.is_empty());
     }
 
@@ -297,9 +297,9 @@ mod tests {
         map.update_with_key(3, 2, addMoreToCount);
 
         // check the total counts
-        assert!(map.find(&3).get() == &10);
-        assert!(map.find(&5).get() == &3);
-        assert!(map.find(&9).get() == &1);
+        assert_eq!(map.find(&3).get(), &10);
+        assert_eq!(map.find(&5).get(), &3);
+        assert_eq!(map.find(&9).get(), &1);
 
         // sadly, no sevens were counted
         assert!(map.find(&7).is_none());
@@ -308,16 +308,16 @@ mod tests {
     #[test]
     fn test_swap() {
         let mut m = SmallIntMap::new();
-        assert!(m.swap(1, 2) == None);
-        assert!(m.swap(1, 3) == Some(2));
-        assert!(m.swap(1, 4) == Some(3));
+        assert_eq!(m.swap(1, 2), None);
+        assert_eq!(m.swap(1, 3), Some(2));
+        assert_eq!(m.swap(1, 4), Some(3));
     }
 
     #[test]
     fn test_pop() {
         let mut m = SmallIntMap::new();
         m.insert(1, 2);
-        assert!(m.pop(&1) == Some(2));
-        assert!(m.pop(&1) == None);
+        assert_eq!(m.pop(&1), Some(2));
+        assert_eq!(m.pop(&1), None);
     }
 }
diff --git a/src/libstd/sort.rs b/src/libstd/sort.rs
index 0d94a1830a6..ca752a48298 100644
--- a/src/libstd/sort.rs
+++ b/src/libstd/sort.rs
@@ -261,7 +261,7 @@ fn binarysort<T:Copy + Ord>(array: &mut [T], start: uint) {
                 left = mid+1;
             }
         }
-        assert!(left == right);
+        assert_eq!(left, right);
         let n = start-left;
 
         shift_vec(array, left+1, left, n);
@@ -357,7 +357,7 @@ fn gallop_left<T:Copy + Ord>(key: &T,
             ofs = m;
         }
     }
-    assert!(last_ofs == ofs);
+    assert_eq!(last_ofs, ofs);
     return ofs;
 }
 
@@ -410,7 +410,7 @@ fn gallop_right<T:Copy + Ord>(key: &T,
             ofs = m;
         }
     }
-    assert!(last_ofs == ofs);
+    assert_eq!(last_ofs, ofs);
     return ofs;
 }
 
@@ -449,7 +449,7 @@ impl<T:Copy + Ord> MergeState<T> {
         let l2 = self.runs[n+1].len;
 
         assert!(l1 > 0 && l2 > 0);
-        assert!(b1 + l1 == b2);
+        assert_eq!(b1 + l1, b2);
 
         self.runs[n].len = l1 + l2;
         if n == size-3 {
@@ -583,7 +583,7 @@ impl<T:Copy + Ord> MergeState<T> {
         } else if len1 == 0 {
             fail!("Comparison violates its contract!");
         } else {
-            assert!(len2 == 0);
+            assert_eq!(len2, 0);
             assert!(len1 > 1);
             copy_vec(array, dest, tmp.slice(c1, c1+len1));
         }
@@ -705,7 +705,7 @@ impl<T:Copy + Ord> MergeState<T> {
         } else if len2 == 0 {
             fail!("Comparison violates its contract!");
         } else {
-            assert!(len1 == 0);
+            assert_eq!(len1, 0);
             assert!(len2 != 0);
             copy_vec(array, dest-(len2-1), tmp.slice(0, len2));
         }
@@ -818,7 +818,7 @@ mod test_qsort {
         let mut i = 0u;
         while i < len {
             // debug!(v2[i]);
-            assert!((v2[i] == v1[i]));
+            assert_eq!(v2[i], v1[i]);
             i += 1;
         }
     }
@@ -863,7 +863,7 @@ mod test_qsort {
         for pairs.each |p| {
             let (a, b) = *p;
             debug!("%d %d", a, b);
-            assert!((a == b));
+            assert_eq!(a, b);
         }
     }
 }
@@ -883,7 +883,7 @@ mod tests {
         let mut i = 0u;
         while i < len {
             debug!(v3[i]);
-            assert!((v3[i] == v2[i]));
+            assert_eq!(v3[i], v2[i]);
             i += 1;
         }
     }
@@ -910,7 +910,7 @@ mod tests {
         pub fn le(a: &int, b: &int) -> bool { *a <= *b }
         let mut v1 = ~[3, 2, 1];
         let v2 = merge_sort(v1, le);
-        assert!(v2 == ~[1, 2, 3]);
+        assert_eq!(v2, ~[1, 2, 3]);
     }
 
     #[test]
@@ -932,7 +932,7 @@ mod tests {
         let names2 = ~["Alex Andy", "Jack Brown", "joe bob", "Joe Bob",
                        "JOE Bob", "JOE BOB", "Sally Mae"];
         let names3 = merge_sort(names1, ile);
-        assert!(names3 == names2);
+        assert_eq!(names3, names2);
     }
 }
 
@@ -964,7 +964,7 @@ mod test_tim_sort {
         let mut i = 0u;
         while i < len {
             // debug!(v2[i]);
-            assert!((v2[i] == v1[i]));
+            assert_eq!(v2[i], v1[i]);
             i += 1u;
         }
     }
diff --git a/src/libstd/sort_stage0.rs b/src/libstd/sort_stage0.rs
index 270f7196d29..cdef8e220ce 100644
--- a/src/libstd/sort_stage0.rs
+++ b/src/libstd/sort_stage0.rs
@@ -261,7 +261,7 @@ fn binarysort<T:Copy + Ord>(array: &mut [T], start: uint) {
                 left = mid+1;
             }
         }
-        assert!(left == right);
+        assert_eq!(left, right);
         let n = start-left;
 
         copy_vec(array, left+1, array, left, n);
@@ -357,7 +357,7 @@ fn gallop_left<T:Copy + Ord>(key: &const T,
             ofs = m;
         }
     }
-    assert!(last_ofs == ofs);
+    assert_eq!(last_ofs, ofs);
     return ofs;
 }
 
@@ -410,7 +410,7 @@ fn gallop_right<T:Copy + Ord>(key: &const T,
             ofs = m;
         }
     }
-    assert!(last_ofs == ofs);
+    assert_eq!(last_ofs, ofs);
     return ofs;
 }
 
@@ -449,7 +449,7 @@ impl<T:Copy + Ord> MergeState<T> {
         let l2 = self.runs[n+1].len;
 
         assert!(l1 > 0 && l2 > 0);
-        assert!(b1 + l1 == b2);
+        assert_eq!(b1 + l1, b2);
 
         self.runs[n].len = l1 + l2;
         if n == size-3 {
@@ -579,7 +579,7 @@ impl<T:Copy + Ord> MergeState<T> {
         } else if len1 == 0 {
             fail!("Comparison violates its contract!");
         } else {
-            assert!(len2 == 0);
+            assert_eq!(len2, 0);
             assert!(len1 > 1);
             copy_vec(array, dest, tmp, c1, len1);
         }
@@ -587,7 +587,7 @@ impl<T:Copy + Ord> MergeState<T> {
 
     fn merge_hi(&mut self, array: &mut [T], base1: uint, len1: uint,
                 base2: uint, len2: uint) {
-        assert!(len1 != 1 && len2 != 0 && base1 + len1 == base2);
+        assert!(len1 != 1 && len2 != 0 && base1+len1 == base2);
 
         let mut tmp = ~[];
         for uint::range(base2, base2+len2) |i| {
@@ -701,7 +701,7 @@ impl<T:Copy + Ord> MergeState<T> {
         } else if len2 == 0 {
             fail!("Comparison violates its contract!");
         } else {
-            assert!(len1 == 0);
+            assert_eq!(len1, 0);
             assert!(len2 != 0);
             copy_vec(array, dest-(len2-1), tmp, 0, len2);
         }
@@ -766,7 +766,7 @@ mod test_qsort3 {
         let mut i = 0;
         while i < len {
             // debug!(v2[i]);
-            assert!((v2[i] == v1[i]));
+            assert_eq!(v2[i], v1[i]);
             i += 1;
         }
     }
@@ -811,7 +811,7 @@ mod test_qsort {
         let mut i = 0u;
         while i < len {
             // debug!(v2[i]);
-            assert!((v2[i] == v1[i]));
+            assert_eq!(v2[i], v1[i]);
             i += 1;
         }
     }
@@ -856,7 +856,7 @@ mod test_qsort {
         for pairs.each |p| {
             let (a, b) = *p;
             debug!("%d %d", a, b);
-            assert!((a == b));
+            assert_eq!(a, b);
         }
     }
 }
@@ -876,7 +876,7 @@ mod tests {
         let mut i = 0u;
         while i < len {
             debug!(v3[i]);
-            assert!((v3[i] == v2[i]));
+            assert_eq!(v3[i], v2[i]);
             i += 1;
         }
     }
@@ -903,7 +903,7 @@ mod tests {
         pub fn le(a: &int, b: &int) -> bool { *a <= *b }
         let mut v1 = ~[3, 2, 1];
         let v2 = merge_sort(v1, le);
-        assert!(v2 == ~[1, 2, 3]);
+        assert_eq!(v2, ~[1, 2, 3]);
     }
 
     #[test]
@@ -925,7 +925,7 @@ mod tests {
         let names2 = ~["Alex Andy", "Jack Brown", "joe bob", "Joe Bob",
                        "JOE Bob", "JOE BOB", "Sally Mae"];
         let names3 = merge_sort(names1, ile);
-        assert!(names3 == names2);
+        assert_eq!(names3, names2);
     }
 }
 
@@ -955,7 +955,7 @@ mod test_tim_sort {
         let mut i = 0u;
         while i < len {
             // debug!(v2[i]);
-            assert!((v2[i] == v1[i]));
+            assert_eq!(v2[i], v1[i]);
             i += 1u;
         }
     }
diff --git a/src/libstd/sync.rs b/src/libstd/sync.rs
index 449edacad32..002c6b2eca3 100644
--- a/src/libstd/sync.rs
+++ b/src/libstd/sync.rs
@@ -839,7 +839,7 @@ mod tests {
             access_shared(sharedstate, m, 10);
             let _ = p.recv();
 
-            assert!(*sharedstate == 20);
+            assert_eq!(*sharedstate, 20);
         }
 
         fn access_shared(sharedstate: &mut int, m: &Mutex, n: uint) {
@@ -906,7 +906,7 @@ mod tests {
         for ports.each |port| { let _ = port.recv(); }
         do m.lock_cond |cond| {
             let num_woken = cond.broadcast();
-            assert!(num_woken == num_waiters);
+            assert_eq!(num_woken, num_waiters);
         }
         // wait until all children wake up
         for ports.each |port| { let _ = port.recv(); }
@@ -1006,7 +1006,7 @@ mod tests {
         for vec::each(p.recv()) |p| { p.recv(); } // wait on all its siblings
         do m.lock_cond |cond| {
             let woken = cond.broadcast();
-            assert!(woken == 0);
+            assert_eq!(woken, 0);
         }
         struct SendOnFailure {
             c: comm::Chan<()>,
@@ -1120,7 +1120,7 @@ mod tests {
             access_shared(sharedstate, x, mode2, 10);
             let _ = p.recv();
 
-            assert!(*sharedstate == 20);
+            assert_eq!(*sharedstate, 20);
         }
 
         fn access_shared(sharedstate: &mut int, x: &RWlock, mode: RWlockMode,
@@ -1273,7 +1273,7 @@ mod tests {
         for ports.each |port| { let _ = port.recv(); }
         do lock_cond(x, dg2) |cond| {
             let num_woken = cond.broadcast();
-            assert!(num_woken == num_waiters);
+            assert_eq!(num_woken, num_waiters);
         }
         // wait until all children wake up
         for ports.each |port| { let _ = port.recv(); }
diff --git a/src/libstd/test.rs b/src/libstd/test.rs
index b2f73df316d..e9fd4e9a2b8 100644
--- a/src/libstd/test.rs
+++ b/src/libstd/test.rs
@@ -804,7 +804,7 @@ mod tests {
         let ch = SharedChan::new(ch);
         run_test(false, desc, ch);
         let (_, res) = p.recv();
-        assert!(res == TrIgnored);
+        assert_eq!(res, TrIgnored);
     }
 
     #[test]
@@ -823,7 +823,7 @@ mod tests {
         let ch = SharedChan::new(ch);
         run_test(false, desc, ch);
         let (_, res) = p.recv();
-        assert!(res == TrOk);
+        assert_eq!(res, TrOk);
     }
 
     #[test]
@@ -841,7 +841,7 @@ mod tests {
         let ch = SharedChan::new(ch);
         run_test(false, desc, ch);
         let (_, res) = p.recv();
-        assert!(res == TrFailed);
+        assert_eq!(res, TrFailed);
     }
 
     #[test]
@@ -901,9 +901,9 @@ mod tests {
         ];
         let filtered = filter_tests(&opts, tests);
 
-        assert!(filtered.len() == 1);
-        assert!((filtered[0].desc.name.to_str() == ~"1"));
-        assert!((filtered[0].desc.ignore == false));
+        assert_eq!(filtered.len(), 1);
+        assert_eq!(filtered[0].desc.name.to_str(), ~"1");
+        assert!(filtered[0].desc.ignore == false);
     }
 
     #[test]
@@ -958,7 +958,7 @@ mod tests {
         for pairs.each |p| {
             match *p {
                 (ref a, ref b) => {
-                    assert!((*a == b.desc.name.to_str()));
+                    assert!(*a == b.desc.name.to_str());
                 }
             }
         }
diff --git a/src/libstd/time.rs b/src/libstd/time.rs
index 202b96f9797..9e6a45137a4 100644
--- a/src/libstd/time.rs
+++ b/src/libstd/time.rs
@@ -952,8 +952,8 @@ mod tests {
         let time = ::time::Timespec::new(1234567890, 54321);
         let utc = at_utc(time);
 
-        assert!(utc.to_timespec() == time);
-        assert!(utc.to_local().to_timespec() == time);
+        assert_eq!(utc.to_timespec(), time);
+        assert_eq!(utc.to_local().to_timespec(), time);
     }
 
     fn test_conversions() {
@@ -985,7 +985,7 @@ mod tests {
             assert!(tm.tm_mon == 0_i32);
             assert!(tm.tm_year == 0_i32);
             assert!(tm.tm_wday == 0_i32);
-            assert!(tm.tm_isdst== 0_i32);
+            assert!(tm.tm_isdst == 0_i32);
             assert!(tm.tm_gmtoff == 0_i32);
             assert!(tm.tm_zone == ~"");
             assert!(tm.tm_nsec == 0_i32);
@@ -994,7 +994,7 @@ mod tests {
         }
 
         let format = ~"%a %b %e %T %Y";
-        assert!(strptime(~"", format) == Err(~"Invalid time"));
+        assert_eq!(strptime(~"", format), Err(~"Invalid time"));
         assert!(strptime(~"Fri Feb 13 15:31:30", format)
             == Err(~"Invalid time"));
 
@@ -1140,8 +1140,8 @@ mod tests {
 
         error!("test_ctime: %? %?", utc.ctime(), local.ctime());
 
-        assert!(utc.ctime()   == ~"Fri Feb 13 23:31:30 2009");
-        assert!(local.ctime() == ~"Fri Feb 13 15:31:30 2009");
+        assert_eq!(utc.ctime(), ~"Fri Feb 13 23:31:30 2009");
+        assert_eq!(local.ctime(), ~"Fri Feb 13 15:31:30 2009");
     }
 
     fn test_strftime() {
@@ -1152,53 +1152,53 @@ mod tests {
         let utc = at_utc(time);
         let local = at(time);
 
-        assert!(local.strftime(~"") == ~"");
-        assert!(local.strftime(~"%A") == ~"Friday");
-        assert!(local.strftime(~"%a") == ~"Fri");
-        assert!(local.strftime(~"%B") == ~"February");
-        assert!(local.strftime(~"%b") == ~"Feb");
-        assert!(local.strftime(~"%C") == ~"20");
-        assert!(local.strftime(~"%c") == ~"Fri Feb 13 15:31:30 2009");
-        assert!(local.strftime(~"%D") == ~"02/13/09");
-        assert!(local.strftime(~"%d") == ~"13");
-        assert!(local.strftime(~"%e") == ~"13");
-        assert!(local.strftime(~"%F") == ~"2009-02-13");
+        assert_eq!(local.strftime(~""), ~"");
+        assert_eq!(local.strftime(~"%A"), ~"Friday");
+        assert_eq!(local.strftime(~"%a"), ~"Fri");
+        assert_eq!(local.strftime(~"%B"), ~"February");
+        assert_eq!(local.strftime(~"%b"), ~"Feb");
+        assert_eq!(local.strftime(~"%C"), ~"20");
+        assert_eq!(local.strftime(~"%c"), ~"Fri Feb 13 15:31:30 2009");
+        assert_eq!(local.strftime(~"%D"), ~"02/13/09");
+        assert_eq!(local.strftime(~"%d"), ~"13");
+        assert_eq!(local.strftime(~"%e"), ~"13");
+        assert_eq!(local.strftime(~"%F"), ~"2009-02-13");
         // assert!(local.strftime("%G") == "2009");
         // assert!(local.strftime("%g") == "09");
-        assert!(local.strftime(~"%H") == ~"15");
-        assert!(local.strftime(~"%I") == ~"03");
-        assert!(local.strftime(~"%j") == ~"044");
-        assert!(local.strftime(~"%k") == ~"15");
-        assert!(local.strftime(~"%l") == ~" 3");
-        assert!(local.strftime(~"%M") == ~"31");
-        assert!(local.strftime(~"%m") == ~"02");
-        assert!(local.strftime(~"%n") == ~"\n");
-        assert!(local.strftime(~"%P") == ~"pm");
-        assert!(local.strftime(~"%p") == ~"PM");
-        assert!(local.strftime(~"%R") == ~"15:31");
-        assert!(local.strftime(~"%r") == ~"03:31:30 PM");
-        assert!(local.strftime(~"%S") == ~"30");
-        assert!(local.strftime(~"%s") == ~"1234567890");
-        assert!(local.strftime(~"%T") == ~"15:31:30");
-        assert!(local.strftime(~"%t") == ~"\t");
+        assert_eq!(local.strftime(~"%H"), ~"15");
+        assert_eq!(local.strftime(~"%I"), ~"03");
+        assert_eq!(local.strftime(~"%j"), ~"044");
+        assert_eq!(local.strftime(~"%k"), ~"15");
+        assert_eq!(local.strftime(~"%l"), ~" 3");
+        assert_eq!(local.strftime(~"%M"), ~"31");
+        assert_eq!(local.strftime(~"%m"), ~"02");
+        assert_eq!(local.strftime(~"%n"), ~"\n");
+        assert_eq!(local.strftime(~"%P"), ~"pm");
+        assert_eq!(local.strftime(~"%p"), ~"PM");
+        assert_eq!(local.strftime(~"%R"), ~"15:31");
+        assert_eq!(local.strftime(~"%r"), ~"03:31:30 PM");
+        assert_eq!(local.strftime(~"%S"), ~"30");
+        assert_eq!(local.strftime(~"%s"), ~"1234567890");
+        assert_eq!(local.strftime(~"%T"), ~"15:31:30");
+        assert_eq!(local.strftime(~"%t"), ~"\t");
         // assert!(local.strftime("%U") == "06");
-        assert!(local.strftime(~"%u") == ~"5");
+        assert_eq!(local.strftime(~"%u"), ~"5");
         // assert!(local.strftime("%V") == "07");
-        assert!(local.strftime(~"%v") == ~"13-Feb-2009");
+        assert_eq!(local.strftime(~"%v"), ~"13-Feb-2009");
         // assert!(local.strftime("%W") == "06");
-        assert!(local.strftime(~"%w") == ~"5");
+        assert_eq!(local.strftime(~"%w"), ~"5");
         // handle "%X"
         // handle "%x"
-        assert!(local.strftime(~"%Y") == ~"2009");
-        assert!(local.strftime(~"%y") == ~"09");
+        assert_eq!(local.strftime(~"%Y"), ~"2009");
+        assert_eq!(local.strftime(~"%y"), ~"09");
 
         // FIXME (#2350): We should probably standardize on the timezone
         // abbreviation.
         let zone = local.strftime(~"%Z");
         assert!(zone == ~"PST" || zone == ~"Pacific Standard Time");
 
-        assert!(local.strftime(~"%z") == ~"-0800");
-        assert!(local.strftime(~"%%") == ~"%");
+        assert_eq!(local.strftime(~"%z"), ~"-0800");
+        assert_eq!(local.strftime(~"%%"), ~"%");
 
         // FIXME (#2350): We should probably standardize on the timezone
         // abbreviation.
@@ -1207,14 +1207,14 @@ mod tests {
         assert!(rfc822 == prefix + ~"PST" ||
                      rfc822 == prefix + ~"Pacific Standard Time");
 
-        assert!(local.ctime() == ~"Fri Feb 13 15:31:30 2009");
-        assert!(local.rfc822z() == ~"Fri, 13 Feb 2009 15:31:30 -0800");
-        assert!(local.rfc3339() == ~"2009-02-13T15:31:30-08:00");
+        assert_eq!(local.ctime(), ~"Fri Feb 13 15:31:30 2009");
+        assert_eq!(local.rfc822z(), ~"Fri, 13 Feb 2009 15:31:30 -0800");
+        assert_eq!(local.rfc3339(), ~"2009-02-13T15:31:30-08:00");
 
-        assert!(utc.ctime() == ~"Fri Feb 13 23:31:30 2009");
-        assert!(utc.rfc822() == ~"Fri, 13 Feb 2009 23:31:30 GMT");
-        assert!(utc.rfc822z() == ~"Fri, 13 Feb 2009 23:31:30 -0000");
-        assert!(utc.rfc3339() == ~"2009-02-13T23:31:30Z");
+        assert_eq!(utc.ctime(), ~"Fri Feb 13 23:31:30 2009");
+        assert_eq!(utc.rfc822(), ~"Fri, 13 Feb 2009 23:31:30 GMT");
+        assert_eq!(utc.rfc822z(), ~"Fri, 13 Feb 2009 23:31:30 -0000");
+        assert_eq!(utc.rfc3339(), ~"2009-02-13T23:31:30Z");
     }
 
     fn test_timespec_eq_ord() {
diff --git a/src/libstd/timer.rs b/src/libstd/timer.rs
index e9fd0414244..7fea94a39a7 100644
--- a/src/libstd/timer.rs
+++ b/src/libstd/timer.rs
@@ -256,7 +256,7 @@ mod test {
 
             match recv_timeout(hl_loop, 10u, &test_po) {
               Some(val) => {
-                assert!(val == expected);
+                assert_eq!(val, expected);
                 successes += 1;
               }
               _ => failures += 1
diff --git a/src/libstd/treemap.rs b/src/libstd/treemap.rs
index e0ee3a1ee01..e4026d7306f 100644
--- a/src/libstd/treemap.rs
+++ b/src/libstd/treemap.rs
@@ -920,7 +920,7 @@ mod test_treemap {
         assert!(m.insert(1, 2));
         assert!(m.insert(5, 3));
         assert!(m.insert(9, 3));
-        assert!(m.find(&2) == None);
+        assert_eq!(m.find(&2), None);
     }
 
     #[test]
@@ -942,7 +942,7 @@ mod test_treemap {
         assert!(m.insert(5, 2));
         assert!(m.insert(2, 9));
         assert!(!m.insert(2, 11));
-        assert!(m.find(&2).unwrap() == &11);
+        assert_eq!(m.find(&2).unwrap(), &11);
     }
 
     #[test]
@@ -971,13 +971,13 @@ mod test_treemap {
         m.insert(copy k1, copy v1);
         m.insert(copy k2, copy v2);
 
-        assert!(m.find(&k2) == Some(&v2));
-        assert!(m.find(&k1) == Some(&v1));
+        assert_eq!(m.find(&k2), Some(&v2));
+        assert_eq!(m.find(&k1), Some(&v1));
     }
 
     fn check_equal<K: Eq + TotalOrd, V: Eq>(ctrl: &[(K, V)],
                                             map: &TreeMap<K, V>) {
-        assert!(ctrl.is_empty() == map.is_empty());
+        assert_eq!(ctrl.is_empty(), map.is_empty());
         for ctrl.each |x| {
             let &(k, v) = x;
             assert!(map.find(&k).unwrap() == &v)
@@ -1000,7 +1000,7 @@ mod test_treemap {
                                   parent: &~TreeNode<K, V>) {
         match *node {
           Some(ref r) => {
-            assert!(r.key.cmp(&parent.key) == Less);
+            assert_eq!(r.key.cmp(&parent.key), Less);
             assert!(r.level == parent.level - 1); // left is black
             check_left(&r.left, r);
             check_right(&r.right, r, false);
@@ -1014,7 +1014,7 @@ mod test_treemap {
                                    parent_red: bool) {
         match *node {
           Some(ref r) => {
-            assert!(r.key.cmp(&parent.key) == Greater);
+            assert_eq!(r.key.cmp(&parent.key), Greater);
             let red = r.level == parent.level;
             if parent_red { assert!(!red) } // no dual horizontal links
             // Right red or black
@@ -1072,19 +1072,19 @@ mod test_treemap {
     fn test_len() {
         let mut m = TreeMap::new();
         assert!(m.insert(3, 6));
-        assert!(m.len() == 1);
+        assert_eq!(m.len(), 1);
         assert!(m.insert(0, 0));
-        assert!(m.len() == 2);
+        assert_eq!(m.len(), 2);
         assert!(m.insert(4, 8));
-        assert!(m.len() == 3);
+        assert_eq!(m.len(), 3);
         assert!(m.remove(&3));
-        assert!(m.len() == 2);
+        assert_eq!(m.len(), 2);
         assert!(!m.remove(&5));
-        assert!(m.len() == 2);
+        assert_eq!(m.len(), 2);
         assert!(m.insert(2, 4));
-        assert!(m.len() == 3);
+        assert_eq!(m.len(), 3);
         assert!(m.insert(1, 2));
-        assert!(m.len() == 4);
+        assert_eq!(m.len(), 4);
     }
 
     #[test]
@@ -1099,8 +1099,8 @@ mod test_treemap {
 
         let mut n = 0;
         for m.each |k, v| {
-            assert!(*k == n);
-            assert!(*v == n * 2);
+            assert_eq!(*k, n);
+            assert_eq!(*v, n * 2);
             n += 1;
         }
     }
@@ -1117,8 +1117,8 @@ mod test_treemap {
 
         let mut n = 4;
         for m.each_reverse |k, v| {
-            assert!(*k == n);
-            assert!(*v == n * 2);
+            assert_eq!(*k, n);
+            assert_eq!(*v, n * 2);
             n -= 1;
         }
     }
@@ -1191,11 +1191,11 @@ mod test_treemap {
         let m = m;
         let mut a = m.iter();
 
-        assert!(a.next().unwrap() == (&x1, &y1));
-        assert!(a.next().unwrap() == (&x2, &y2));
-        assert!(a.next().unwrap() == (&x3, &y3));
-        assert!(a.next().unwrap() == (&x4, &y4));
-        assert!(a.next().unwrap() == (&x5, &y5));
+        assert_eq!(a.next().unwrap(), (&x1, &y1));
+        assert_eq!(a.next().unwrap(), (&x2, &y2));
+        assert_eq!(a.next().unwrap(), (&x3, &y3));
+        assert_eq!(a.next().unwrap(), (&x4, &y4));
+        assert_eq!(a.next().unwrap(), (&x5, &y5));
 
         assert!(a.next().is_none());
 
@@ -1206,7 +1206,7 @@ mod test_treemap {
         let mut i = 0;
 
         for b.advance |x| {
-            assert!(expected[i] == x);
+            assert_eq!(expected[i], x);
             i += 1;
 
             if i == 2 {
@@ -1215,7 +1215,7 @@ mod test_treemap {
         }
 
         for b.advance |x| {
-            assert!(expected[i] == x);
+            assert_eq!(expected[i], x);
             i += 1;
         }
     }
@@ -1303,7 +1303,7 @@ mod test_set {
 
         let mut n = 0;
         for m.each |x| {
-            assert!(*x == n);
+            assert_eq!(*x, n);
             n += 1
         }
     }
@@ -1320,7 +1320,7 @@ mod test_set {
 
         let mut n = 4;
         for m.each_reverse |x| {
-            assert!(*x == n);
+            assert_eq!(*x, n);
             n -= 1
         }
     }
@@ -1335,10 +1335,10 @@ mod test_set {
 
         let mut i = 0;
         for f(&set_a, &set_b) |x| {
-            assert!(*x == expected[i]);
+            assert_eq!(*x, expected[i]);
             i += 1;
         }
-        assert!(i == expected.len());
+        assert_eq!(i, expected.len());
     }
 
     #[test]
@@ -1421,10 +1421,10 @@ mod test_set {
 
         // FIXME: #5801: this needs a type hint to compile...
         let result: Option<(&uint, & &'static str)> = z.next();
-        assert!(result.unwrap() == (&5u, & &"bar"));
+        assert_eq!(result.unwrap(), (&5u, & &"bar"));
 
         let result: Option<(&uint, & &'static str)> = z.next();
-        assert!(result.unwrap() == (&11u, & &"foo"));
+        assert_eq!(result.unwrap(), (&11u, & &"foo"));
 
         let result: Option<(&uint, & &'static str)> = z.next();
         assert!(result.is_none());
@@ -1433,16 +1433,16 @@ mod test_set {
     #[test]
     fn test_swap() {
         let mut m = TreeMap::new();
-        assert!(m.swap(1, 2) == None);
-        assert!(m.swap(1, 3) == Some(2));
-        assert!(m.swap(1, 4) == Some(3));
+        assert_eq!(m.swap(1, 2), None);
+        assert_eq!(m.swap(1, 3), Some(2));
+        assert_eq!(m.swap(1, 4), Some(3));
     }
 
     #[test]
     fn test_pop() {
         let mut m = TreeMap::new();
         m.insert(1, 2);
-        assert!(m.pop(&1) == Some(2));
-        assert!(m.pop(&1) == None);
+        assert_eq!(m.pop(&1), Some(2));
+        assert_eq!(m.pop(&1), None);
     }
 }
diff --git a/src/libstd/uv_iotask.rs b/src/libstd/uv_iotask.rs
index 2922f403f34..d1a95c5b9f7 100644
--- a/src/libstd/uv_iotask.rs
+++ b/src/libstd/uv_iotask.rs
@@ -183,7 +183,7 @@ extern fn tear_down_walk_cb(handle: *libc::c_void, arg: *libc::c_void) {
     // pretty much, if we still have an active handle and it is *not*
     // the async handle that facilities global loop communication, we
     // want to barf out and fail
-    assert!(handle == arg);
+    assert_eq!(handle, arg);
 }
 
 extern fn tear_down_close_cb(handle: *ll::uv_async_t) {