#include "common.hpp" #include "die.hpp" #include "reader.hpp" #include "test.hpp" #include "writer.hpp" StaticArena<64 * 1024 * 1024> arena; TEST_CASE(dict_insert) { auto d = DIEX(Dict::create()); d = DIEX(d.set(1, 2)); d = DIEX(d.set(1, 3)); d = DIEX(d.set(3, 3)); d = DIEX(d.set(0, 4)); d = DIEX(d.set(0, 5)); d = DIEX(d.set(2, 6)); DIEX(arena_gc()); auto s = DIEX(write_one(d)); DIEX(arena_gc()); ASSERT_EQUALS(s, "{0 5 1 3 2 6 3 3}"); } TEST_CASE(dict_read) { auto v = DIEX(read_one("{}", false, false)); auto s = DIEX(write_one(v)); ASSERT_EQUALS(s, "{}"); v = DIEX(read_one("{1 2 3 4}", false, false)); s = DIEX(write_one(v)); ASSERT_EQUALS(s, "{1 2 3 4}"); auto vv = DIEX(v.get(1)); ASSERT_EQUALS(vv, 2); }