From 42410d2d15e49ddbfed7be1c23efc722ff1961eb Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Thu, 8 Oct 2020 22:56:21 +0000 Subject: [PATCH] engine_traits_tests: Another CFNamesExt test Signed-off-by: Brian Anderson --- components/engine_traits_tests/src/lib.rs | 36 +++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/components/engine_traits_tests/src/lib.rs b/components/engine_traits_tests/src/lib.rs index 49d58ae9829e..b6ea3f090eb8 100644 --- a/components/engine_traits_tests/src/lib.rs +++ b/components/engine_traits_tests/src/lib.rs @@ -44,6 +44,18 @@ fn default_engine() -> TempDirEnginePair { } } +fn engine_cfs(cfs: &[&str]) -> TempDirEnginePair { + use engine_test::kv::KvTestEngine; + use engine_test::ctor::EngineConstructorExt; + + let dir = tempdir(); + let path = dir.path().to_str().unwrap(); + let engine = KvTestEngine::new_engine(path, None, cfs, None).unwrap(); + TempDirEnginePair { + engine, tempdir: dir, + } +} + mod ctor { //! Constructor tests @@ -96,3 +108,27 @@ mod basic_read_write { assert_eq!(expected, &*actual); } } + +mod cf_names { + use super::{default_engine, engine_cfs}; + use engine_traits::CFNamesExt; + use engine_traits::{CF_DEFAULT, ALL_CFS}; + + #[test] + fn default_names() { + let db = default_engine(); + let names = db.engine.cf_names(); + assert_eq!(names.len(), 1); + assert_eq!(names[0], CF_DEFAULT); + } + + #[test] + fn cf_names() { + let db = engine_cfs(ALL_CFS); + let names = db.engine.cf_names(); + assert_eq!(names.len(), ALL_CFS.len()); + for cf in ALL_CFS { + assert!(names.contains(cf)); + } + } +}