Changeset View
Changeset View
Standalone View
Standalone View
src/tests/base/serialization-test.cpp
| /* | /* | ||||
| * This file is part of libkazv. | * This file is part of libkazv. | ||||
| * SPDX-FileCopyrightText: 2021 Tusooa Zhu <tusooa@kazv.moe> | * SPDX-FileCopyrightText: 2021 Tusooa Zhu <tusooa@kazv.moe> | ||||
| * SPDX-License-Identifier: AGPL-3.0-or-later | * SPDX-License-Identifier: AGPL-3.0-or-later | ||||
| */ | */ | ||||
| #include <libkazv-config.hpp> | #include <libkazv-config.hpp> | ||||
| #include <catch2/catch_all.hpp> | #include <catch2/catch_all.hpp> | ||||
| #include <sstream> | #include <sstream> | ||||
| #include <boost/archive/text_iarchive.hpp> | #include <boost/archive/text_iarchive.hpp> | ||||
| #include <boost/archive/text_oarchive.hpp> | #include <boost/archive/text_oarchive.hpp> | ||||
| #include <serialization/immer-flex-vector.hpp> | #include <serialization/immer-flex-vector.hpp> | ||||
| #include <serialization/immer-map.hpp> | #include <serialization/immer-map.hpp> | ||||
| #include <serialization/immer-set.hpp> | |||||
| #include <serialization/immer-box.hpp> | #include <serialization/immer-box.hpp> | ||||
| #include <serialization/immer-array.hpp> | #include <serialization/immer-array.hpp> | ||||
| #include <serialization/std-optional.hpp> | #include <serialization/std-optional.hpp> | ||||
| #include <event.hpp> | #include <event.hpp> | ||||
| using namespace Kazv; | using namespace Kazv; | ||||
| using IAr = boost::archive::text_iarchive; | using IAr = boost::archive::text_iarchive; | ||||
| Show All 38 Lines | |||||
| { | { | ||||
| auto v = immer::map<int, int>{} | auto v = immer::map<int, int>{} | ||||
| .set(1, 6) | .set(1, 6) | ||||
| .set(2, 7) | .set(2, 7) | ||||
| .set(3, 8) | .set(3, 8) | ||||
| .set(4, 9) | .set(4, 9) | ||||
| .set(5, 10); | .set(5, 10); | ||||
| auto v2 = immer::map<int, int>{}.set(10, 7); | auto v2 = immer::map<int, int>{}.set(10, 7); | ||||
| serializeTest(v, v2); | |||||
| } | |||||
| TEST_CASE("Serialize immer::set", "[base][serialization]") | |||||
| { | |||||
| auto v = immer::set<int>{1, 2, 3, 4, 5}; | |||||
| auto v2 = immer::set<int>{}.insert(10); | |||||
| serializeTest(v, v2); | serializeTest(v, v2); | ||||
| } | } | ||||
| TEST_CASE("Serialize immer::box", "[base][serialization]") | TEST_CASE("Serialize immer::box", "[base][serialization]") | ||||
| { | { | ||||
| auto v = immer::box<int>{42}; | auto v = immer::box<int>{42}; | ||||
| immer::box<int> v2; | immer::box<int> v2; | ||||
| ▲ Show 20 Lines • Show All 41 Lines • Show Last 20 Lines | |||||