Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/query-group-macro/tests/lru.rs')
| -rw-r--r-- | crates/query-group-macro/tests/lru.rs | 35 |
1 files changed, 15 insertions, 20 deletions
diff --git a/crates/query-group-macro/tests/lru.rs b/crates/query-group-macro/tests/lru.rs index f56dd5c2f9..a0817c4013 100644 --- a/crates/query-group-macro/tests/lru.rs +++ b/crates/query-group-macro/tests/lru.rs @@ -4,12 +4,13 @@ mod logger_db; use logger_db::LoggerDb; use query_group_macro::query_group; +#[salsa::input(singleton)] +struct InputString { + inner: String, +} + #[query_group] pub trait LruDB: salsa::Database { - // // input with no params - #[salsa::input] - fn input_string(&self) -> String; - #[salsa::lru(16)] #[salsa::invoke_interned(length_query)] fn length_query(&self, key: ()) -> usize; @@ -20,49 +21,43 @@ pub trait LruDB: salsa::Database { } fn length_query(db: &dyn LruDB, _key: ()) -> usize { - db.input_string().len() + InputString::get(db).inner(db).len() } fn invoked_query(db: &dyn LruDB, _key: ()) -> usize { - db.input_string().len() + InputString::get(db).inner(db).len() } #[test] fn plain_lru() { - let mut db = LoggerDb::default(); + let db = LoggerDb::default(); - db.set_input_string(String::from("Hello, world!")); + InputString::new(&db, String::from("Hello, world!")); let len = db.length_query(()); assert_eq!(len, 13); db.assert_logs(expect![[r#" [ "salsa_event(WillCheckCancellation)", - "salsa_event(WillExecute { database_key: create_data_LruDB(Id(0)) })", - "salsa_event(WillCheckCancellation)", - "salsa_event(DidValidateMemoizedValue { database_key: create_data_LruDB(Id(0)) })", - "salsa_event(WillCheckCancellation)", - "salsa_event(WillExecute { database_key: length_query_shim(Id(800)) })", + "salsa_event(WillExecute { database_key: create_data_LruDB(Id(400)) })", "salsa_event(WillCheckCancellation)", + "salsa_event(WillExecute { database_key: length_query_shim(Id(c00)) })", ]"#]]); } #[test] fn invoke_lru() { - let mut db = LoggerDb::default(); + let db = LoggerDb::default(); - db.set_input_string(String::from("Hello, world!")); + InputString::new(&db, String::from("Hello, world!")); let len = db.length_query_invoke(()); assert_eq!(len, 13); db.assert_logs(expect![[r#" [ "salsa_event(WillCheckCancellation)", - "salsa_event(WillExecute { database_key: create_data_LruDB(Id(0)) })", - "salsa_event(WillCheckCancellation)", - "salsa_event(DidValidateMemoizedValue { database_key: create_data_LruDB(Id(0)) })", - "salsa_event(WillCheckCancellation)", - "salsa_event(WillExecute { database_key: length_query_invoke_shim(Id(800)) })", + "salsa_event(WillExecute { database_key: create_data_LruDB(Id(400)) })", "salsa_event(WillCheckCancellation)", + "salsa_event(WillExecute { database_key: length_query_invoke_shim(Id(c00)) })", ]"#]]); } |