[Groonga-commit] groonga/grnxx at 13c8923 [master] Add tests for grnxx::Map::all_keys(), key_id(), and key().

Back to archive index

susumu.yata null+****@clear*****
Mon May 27 16:16:33 JST 2013


susumu.yata	2013-05-27 16:16:33 +0900 (Mon, 27 May 2013)

  New Revision: 13c8923c4f908cf3ba26237dd57a37c904fdb808
  https://github.com/groonga/grnxx/commit/13c8923c4f908cf3ba26237dd57a37c904fdb808

  Message:
    Add tests for grnxx::Map::all_keys(), key_id(), and key().

  Modified files:
    test/test_map.cpp

  Modified: test/test_map.cpp (+76 -44)
===================================================================
--- test/test_map.cpp    2013-05-27 16:09:08 +0900 (6c08e8f)
+++ test/test_map.cpp    2013-05-27 16:16:33 +0900 (6d005b3)
@@ -586,48 +586,78 @@ void test_map_truncate(grnxx::MapType map_type) {
   }
 }
 
-//template <typename T>
-//void test_map_key_id(grnxx::MapType map_type) {
-//  std::unique_ptr<grnxx::Storage> storage(grnxx::Storage::create(nullptr));
-//  std::unique_ptr<grnxx::Map<T>> map(
-//      grnxx::Map<T>::create(map_type, storage.get(),
-//                            grnxx::STORAGE_ROOT_NODE_ID));
-//  assert(map);
-//  const std::int64_t min = 10;
-//  const std::int64_t max = 100;
-
-//  map->key_id() > min;
-//  map->key_id() >= min;
-//  map->key_id() < max;
-//  map->key_id() <= max;
-
-//  min < map->key_id();
-//  min <= map->key_id();
-//  max > map->key_id();
-//  max >= map->key_id();
-
-//  (map->key_id() > min) && (map->key_id() < max);
-//  (map->key_id() > min) && (map->key_id() <= max);
-//  (map->key_id() >= min) && (map->key_id() < max);
-//  (map->key_id() >= min) && (map->key_id() <= max);
-
-//  (map->key_id() < max) && (map->key_id() > min);
-//  (map->key_id() <= max) && (map->key_id() > min);
-//  (map->key_id() < max) && (map->key_id() >= min);
-//  (map->key_id() <= max) && (map->key_id() >= min);
-//}
-
-//template <typename T>
-//void test_map_key(grnxx::MapType map_type) {
-//  std::unique_ptr<grnxx::Storage> storage(grnxx::Storage::create(nullptr));
-//  std::unique_ptr<grnxx::Map<T>> map(
-//      grnxx::Map<T>::create(map_type, storage.get(),
-//                            grnxx::STORAGE_ROOT_NODE_ID));
-//  assert(map);
-//  T key = generate_random_key<T>();
-
-//  map->key() > key;
-//}
+template <typename T>
+void test_map_all_keys(grnxx::MapType map_type) {
+  std::unique_ptr<grnxx::Storage> storage(grnxx::Storage::create(nullptr));
+  std::unique_ptr<grnxx::Map<T>> map(
+      grnxx::Map<T>::create(map_type, storage.get(),
+                            grnxx::STORAGE_ROOT_NODE_ID));
+  assert(map);
+
+  map->all_keys();
+}
+
+template <typename T>
+void test_map_key_id(grnxx::MapType map_type) {
+  std::unique_ptr<grnxx::Storage> storage(grnxx::Storage::create(nullptr));
+  std::unique_ptr<grnxx::Map<T>> map(
+      grnxx::Map<T>::create(map_type, storage.get(),
+                            grnxx::STORAGE_ROOT_NODE_ID));
+  assert(map);
+  const std::int64_t min = 10;
+  const std::int64_t max = 100;
+
+  map->key_id() > min;
+  map->key_id() >= min;
+  map->key_id() < max;
+  map->key_id() <= max;
+
+  min < map->key_id();
+  min <= map->key_id();
+  max > map->key_id();
+  max >= map->key_id();
+
+  (map->key_id() > min) && (map->key_id() < max);
+  (map->key_id() > min) && (map->key_id() <= max);
+  (map->key_id() >= min) && (map->key_id() < max);
+  (map->key_id() >= min) && (map->key_id() <= max);
+
+  (map->key_id() < max) && (map->key_id() > min);
+  (map->key_id() <= max) && (map->key_id() > min);
+  (map->key_id() < max) && (map->key_id() >= min);
+  (map->key_id() <= max) && (map->key_id() >= min);
+}
+
+template <typename T>
+void test_map_key(grnxx::MapType map_type) {
+  std::unique_ptr<grnxx::Storage> storage(grnxx::Storage::create(nullptr));
+  std::unique_ptr<grnxx::Map<T>> map(
+      grnxx::Map<T>::create(map_type, storage.get(),
+                            grnxx::STORAGE_ROOT_NODE_ID));
+  assert(map);
+  T min = generate_random_key<T>();
+  T max = generate_random_key<T>();
+
+  map->key() > min;
+  map->key() >= min;
+  map->key() < max;
+  map->key() <= max;
+
+  min < map->key();
+  min <= map->key();
+  max > map->key();
+  max >= map->key();
+
+  (map->key() > min) && (map->key() < max);
+  (map->key() > min) && (map->key() <= max);
+  (map->key() >= min) && (map->key() < max);
+  (map->key() >= min) && (map->key() <= max);
+
+  (map->key() < max) && (map->key() > min);
+  (map->key() <= max) && (map->key() > min);
+  (map->key() < max) && (map->key() >= min);
+  (map->key() <= max) && (map->key() >= min);
+}
 
 template <typename T>
 void test_map_create_cursor(grnxx::MapType map_type) {
@@ -676,8 +706,9 @@ void test_map(grnxx::MapType map_type) {
   test_map_replace<T>(map_type);
   test_map_find_longest_prefix_match<T>(map_type);
   test_map_truncate<T>(map_type);
-//  test_map_key_id<T>(map_type);
-//  test_map_key<T>(map_type);
+  test_map_all_keys<T>(map_type);
+  test_map_key_id<T>(map_type);
+  test_map_key<T>(map_type);
   test_map_create_cursor<T>(map_type);
   test_map_create_scanner<T>(map_type);
 }
@@ -706,6 +737,7 @@ void test_bytes_store() {
 }
 
 void test_map() {
+  // TODO: Add grnxx::Bytes.
   test_map(std::int8_t(),
            std::uint8_t(),
            std::int16_t(),
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index