From 7a571a7c7dd80a6a429b28373d2c3ce3ef0753a7 Mon Sep 17 00:00:00 2001 From: Alex Chi Date: Sat, 24 Dec 2022 18:12:57 -0500 Subject: [PATCH] feat(tests): day4 tests Signed-off-by: Alex Chi --- mini-lsm-starter/src/lib.rs | 3 +++ mini-lsm-starter/src/lsm_storage.rs | 8 ++++---- mini-lsm-starter/src/tests.rs | 1 + mini-lsm-starter/src/tests/day4_tests.rs | 1 + mini-lsm/src/tests.rs | 2 +- mini-lsm/src/tests/{day3_tests.rs => day4_tests.rs} | 0 xtask/src/main.rs | 9 +++++++++ 7 files changed, 19 insertions(+), 5 deletions(-) create mode 100644 mini-lsm-starter/src/tests.rs create mode 100644 mini-lsm-starter/src/tests/day4_tests.rs rename mini-lsm/src/tests/{day3_tests.rs => day4_tests.rs} (100%) diff --git a/mini-lsm-starter/src/lib.rs b/mini-lsm-starter/src/lib.rs index c78ce8a..40ff84a 100644 --- a/mini-lsm-starter/src/lib.rs +++ b/mini-lsm-starter/src/lib.rs @@ -4,3 +4,6 @@ pub mod lsm_iterator; pub mod lsm_storage; pub mod mem_table; pub mod table; + +#[cfg(test)] +mod tests; diff --git a/mini-lsm-starter/src/lsm_storage.rs b/mini-lsm-starter/src/lsm_storage.rs index e7c50fd..930f1cd 100644 --- a/mini-lsm-starter/src/lsm_storage.rs +++ b/mini-lsm-starter/src/lsm_storage.rs @@ -39,7 +39,7 @@ pub struct LsmStorage { } impl LsmStorage { - pub fn open(_path: &Path) -> Result { + pub fn open(path: impl AsRef) -> Result { Ok(Self { inner: ArcSwap::from_pointee(LsmStorageInner::create()), }) @@ -49,17 +49,17 @@ impl LsmStorage { unimplemented!() } - pub fn put(&mut self, key: &[u8], value: &[u8]) -> Result<()> { + pub fn put(&self, key: &[u8], value: &[u8]) -> Result<()> { assert!(!value.is_empty(), "value cannot be empty"); assert!(!key.is_empty(), "key cannot be empty"); unimplemented!() } - pub fn delete(&mut self, _key: &[u8]) -> Result<()> { + pub fn delete(&self, _key: &[u8]) -> Result<()> { unimplemented!() } - pub fn sync(&mut self) -> Result<()> { + pub fn sync(&self) -> Result<()> { unimplemented!() } diff --git a/mini-lsm-starter/src/tests.rs b/mini-lsm-starter/src/tests.rs new file mode 100644 index 0000000..45dd43c --- /dev/null +++ b/mini-lsm-starter/src/tests.rs @@ -0,0 +1 @@ +pub mod day4_tests; diff --git a/mini-lsm-starter/src/tests/day4_tests.rs b/mini-lsm-starter/src/tests/day4_tests.rs new file mode 100644 index 0000000..9406576 --- /dev/null +++ b/mini-lsm-starter/src/tests/day4_tests.rs @@ -0,0 +1 @@ +//! Please copy `mini-lsm/src/tests/day4_tests.rs` here so that you can run tests. diff --git a/mini-lsm/src/tests.rs b/mini-lsm/src/tests.rs index da46569..45dd43c 100644 --- a/mini-lsm/src/tests.rs +++ b/mini-lsm/src/tests.rs @@ -1 +1 @@ -pub mod day3_tests; +pub mod day4_tests; diff --git a/mini-lsm/src/tests/day3_tests.rs b/mini-lsm/src/tests/day4_tests.rs similarity index 100% rename from mini-lsm/src/tests/day3_tests.rs rename to mini-lsm/src/tests/day4_tests.rs diff --git a/xtask/src/main.rs b/xtask/src/main.rs index 3f1b29b..1194976 100644 --- a/xtask/src/main.rs +++ b/xtask/src/main.rs @@ -10,6 +10,7 @@ enum CopyTestAction { Day1, Day2, Day3, + Day4, } #[derive(clap::Subcommand, Debug)] @@ -168,6 +169,14 @@ fn copy_test_case(test: CopyTestAction) -> Result<()> { ) .run()?; } + CopyTestAction::Day4 => { + cmd!( + "cp", + "mini-lsm/src/tests/day4_tests.rs", + "mini-lsm-starter/src/tests/day4_tests.rs" + ) + .run()?; + } } Ok(()) }