move MemoryDB's tests into tests module
This commit is contained in:
parent
4efd673c19
commit
ce8f8f40d7
@ -250,46 +250,51 @@ impl HashDB for MemoryDB {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[cfg(test)]
|
||||||
fn memorydb_remove_and_purge() {
|
mod tests {
|
||||||
let hello_bytes = b"Hello world!";
|
use super::*;
|
||||||
let hello_key = hello_bytes.sha3();
|
|
||||||
|
|
||||||
let mut m = MemoryDB::new();
|
#[test]
|
||||||
m.remove(&hello_key);
|
fn memorydb_remove_and_purge() {
|
||||||
assert_eq!(m.raw(&hello_key).unwrap().1, -1);
|
let hello_bytes = b"Hello world!";
|
||||||
m.purge();
|
let hello_key = hello_bytes.sha3();
|
||||||
assert_eq!(m.raw(&hello_key).unwrap().1, -1);
|
|
||||||
m.insert(hello_bytes);
|
|
||||||
assert_eq!(m.raw(&hello_key).unwrap().1, 0);
|
|
||||||
m.purge();
|
|
||||||
assert_eq!(m.raw(&hello_key), None);
|
|
||||||
|
|
||||||
let mut m = MemoryDB::new();
|
let mut m = MemoryDB::new();
|
||||||
assert!(m.remove_and_purge(&hello_key).is_none());
|
m.remove(&hello_key);
|
||||||
assert_eq!(m.raw(&hello_key).unwrap().1, -1);
|
assert_eq!(m.raw(&hello_key).unwrap().1, -1);
|
||||||
m.insert(hello_bytes);
|
m.purge();
|
||||||
m.insert(hello_bytes);
|
assert_eq!(m.raw(&hello_key).unwrap().1, -1);
|
||||||
assert_eq!(m.raw(&hello_key).unwrap().1, 1);
|
m.insert(hello_bytes);
|
||||||
assert_eq!(&*m.remove_and_purge(&hello_key).unwrap(), hello_bytes);
|
assert_eq!(m.raw(&hello_key).unwrap().1, 0);
|
||||||
assert_eq!(m.raw(&hello_key), None);
|
m.purge();
|
||||||
assert!(m.remove_and_purge(&hello_key).is_none());
|
assert_eq!(m.raw(&hello_key), None);
|
||||||
}
|
|
||||||
|
let mut m = MemoryDB::new();
|
||||||
#[test]
|
assert!(m.remove_and_purge(&hello_key).is_none());
|
||||||
fn consolidate() {
|
assert_eq!(m.raw(&hello_key).unwrap().1, -1);
|
||||||
let mut main = MemoryDB::new();
|
m.insert(hello_bytes);
|
||||||
let mut other = MemoryDB::new();
|
m.insert(hello_bytes);
|
||||||
let remove_key = other.insert(b"doggo");
|
assert_eq!(m.raw(&hello_key).unwrap().1, 1);
|
||||||
main.remove(&remove_key);
|
assert_eq!(&*m.remove_and_purge(&hello_key).unwrap(), hello_bytes);
|
||||||
|
assert_eq!(m.raw(&hello_key), None);
|
||||||
let insert_key = other.insert(b"arf");
|
assert!(m.remove_and_purge(&hello_key).is_none());
|
||||||
main.emplace(insert_key, DBValue::from_slice(b"arf"));
|
}
|
||||||
|
|
||||||
main.consolidate(other);
|
#[test]
|
||||||
|
fn consolidate() {
|
||||||
let overlay = main.drain();
|
let mut main = MemoryDB::new();
|
||||||
|
let mut other = MemoryDB::new();
|
||||||
assert_eq!(overlay.get(&remove_key).unwrap(), &(DBValue::from_slice(b"doggo"), 0));
|
let remove_key = other.insert(b"doggo");
|
||||||
assert_eq!(overlay.get(&insert_key).unwrap(), &(DBValue::from_slice(b"arf"), 2));
|
main.remove(&remove_key);
|
||||||
|
|
||||||
|
let insert_key = other.insert(b"arf");
|
||||||
|
main.emplace(insert_key, DBValue::from_slice(b"arf"));
|
||||||
|
|
||||||
|
main.consolidate(other);
|
||||||
|
|
||||||
|
let overlay = main.drain();
|
||||||
|
|
||||||
|
assert_eq!(overlay.get(&remove_key).unwrap(), &(DBValue::from_slice(b"doggo"), 0));
|
||||||
|
assert_eq!(overlay.get(&insert_key).unwrap(), &(DBValue::from_slice(b"arf"), 2));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user