]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/unittest/test_areastore.cpp
Revert "Make Lint Happy"
[dragonfireclient.git] / src / unittest / test_areastore.cpp
index 62d446f5c076a189bbc2f8a295a4ae068354c0dc..691cd69d28a871c7235e0e6d66850924af2ccca3 100644 (file)
@@ -128,11 +128,11 @@ void TestAreaStore::testSerialization()
        VectorAreaStore store;
 
        Area a(v3s16(-1, 0, 1), v3s16(0, 1, 2));
-       a.data = "Area A";
+       a.data = "Area AA";
        store.insertArea(&a);
 
        Area b(v3s16(123, 456, 789), v3s16(32000, 100, 10));
-       b.data = "Area B";
+       b.data = "Area BB";
        store.insertArea(&b);
 
        std::ostringstream os;
@@ -143,20 +143,31 @@ void TestAreaStore::testSerialization()
                        "\x00\x02"  // Count
                        "\xFF\xFF\x00\x00\x00\x01"  // Area A min edge
                        "\x00\x00\x00\x01\x00\x02"  // Area A max edge
-                       "\x00\x06"  // Area A data length
-                       "Area A"  // Area A data
+                       "\x00\x07"  // Area A data length
+                       "Area AA"   // Area A data
                        "\x00\x7B\x00\x64\x00\x0A"  // Area B min edge (last two swapped with max edge for sorting)
                        "\x7D\x00\x01\xC8\x03\x15"  // Area B max edge (^)
-                       "\x00\x06"  // Area B data length
-                       "Area B",  // Area B data
+                       "\x00\x07"  // Area B data length
+                       "Area BB"   // Area B data
+                       "\x00\x00\x00\x00"  // ID A = 0
+                       "\x00\x00\x00\x01", // ID B = 1
                        1 + 2 +
-                       6 + 6 + 2 + 6 +
-                       6 + 6 + 2 + 6);
-       UASSERTEQ(std::string, str, str_wanted);
+                       (6 + 6 + 2 + 7) * 2 + // min/max edge, length, data
+                       2 * 4); // Area IDs
+
+       UASSERTEQ(const std::string &, str, str_wanted);
 
        std::istringstream is(str);
        store.deserialize(is);
 
-       UASSERTEQ(size_t, store.size(), 4);  // deserialize() doesn't clear the store
+       // deserialize() doesn't clear the store
+       // But existing IDs are overridden
+       UASSERTEQ(size_t, store.size(), 2);
+
+       Area c(v3s16(33, -2, -6), v3s16(4, 77, -76));
+       c.data = "Area CC";
+       store.insertArea(&c);
+
+       UASSERTEQ(u32, c.id, 2);
 }