about summary refs log tree commit diff
path: root/src/libcore/tests/atomic.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2017-04-08 06:56:17 +0000
committerbors <bors@rust-lang.org>2017-04-08 06:56:17 +0000
commit3178d4318c669eb0a7bf985e2d603a8e9e1917e7 (patch)
tree1a53c946e9407e71010e7cf0408eb3d12924fbb9 /src/libcore/tests/atomic.rs
parent547c12b8a61d7d0c047649c236f84b59ca2d2cc9 (diff)
parentc04b39f1f8b645ff938e8ee610f76feeea9132ff (diff)
Auto merge of #41156 - TimNN:rollup, r=TimNN
Rollup of 4 pull requests

- Successful merges: #41135, #41143, #41146, #41152
- Failed merges:
Diffstat (limited to 'src/libcore/tests/atomic.rs')
-rw-r--r--src/libcore/tests/atomic.rs15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/libcore/tests/atomic.rs b/src/libcore/tests/atomic.rs
index b6bb5fddf4a..9babe24a985 100644
--- a/src/libcore/tests/atomic.rs
+++ b/src/libcore/tests/atomic.rs
@@ -24,11 +24,24 @@ fn bool_() {
 #[test]
 fn bool_and() {
     let a = AtomicBool::new(true);
-    assert_eq!(a.fetch_and(false, SeqCst),true);
+    assert_eq!(a.fetch_and(false, SeqCst), true);
     assert_eq!(a.load(SeqCst),false);
 }
 
 #[test]
+fn bool_nand() {
+    let a = AtomicBool::new(false);
+    assert_eq!(a.fetch_nand(false, SeqCst), false);
+    assert_eq!(a.load(SeqCst), true);
+    assert_eq!(a.fetch_nand(false, SeqCst), true);
+    assert_eq!(a.load(SeqCst), true);
+    assert_eq!(a.fetch_nand(true, SeqCst), true);
+    assert_eq!(a.load(SeqCst), false);
+    assert_eq!(a.fetch_nand(true, SeqCst), false);
+    assert_eq!(a.load(SeqCst), true);
+}
+
+#[test]
 fn uint_and() {
     let x = AtomicUsize::new(0xf731);
     assert_eq!(x.fetch_and(0x137f, SeqCst), 0xf731);