salsa/tests/storage_varieties/tests.rs

34 lines
743 B
Rust
Raw Normal View History

#![cfg(test)]
2018-10-05 08:54:51 +00:00
use crate::implementation::DatabaseImpl;
use crate::queries::Database;
2018-09-29 08:50:08 +00:00
#[test]
fn memoized_twice() {
2018-10-05 08:54:51 +00:00
let query = DatabaseImpl::default();
let v1 = query.memoized().read();
let v2 = query.memoized().read();
2018-09-29 08:50:08 +00:00
assert_eq!(v1, v2);
}
#[test]
2018-09-30 10:09:37 +00:00
fn volatile_twice() {
2018-10-05 08:54:51 +00:00
let query = DatabaseImpl::default();
let v1 = query.volatile().read();
let v2 = query.volatile().read();
2018-09-29 08:50:08 +00:00
assert_eq!(v1 + 1, v2);
}
2018-09-29 08:53:59 +00:00
#[test]
fn intermingled() {
2018-10-05 08:54:51 +00:00
let query = DatabaseImpl::default();
let v1 = query.volatile().read();
let v2 = query.memoized().read();
let v3 = query.volatile().read();
let v4 = query.memoized().read();
2018-09-29 08:53:59 +00:00
assert_eq!(v1 + 1, v2);
assert_eq!(v2 + 1, v3);
assert_eq!(v2, v4);
}