Changeset View
Changeset View
Standalone View
Standalone View
src/tests/client/sync-test.cpp
| Show First 20 Lines • Show All 737 Lines • ▼ Show 20 Lines | TEST_CASE("it does not crash when receiving a malformed encrypted event") | ||||
| REQUIRE(messagesMap.at("$0").decrypted()); | REQUIRE(messagesMap.at("$0").decrypted()); | ||||
| REQUIRE(messagesMap.count("$1")); | REQUIRE(messagesMap.count("$1")); | ||||
| auto event = messagesMap.at("$1"); | auto event = messagesMap.at("$1"); | ||||
| REQUIRE(!event.decrypted()); | REQUIRE(!event.decrypted()); | ||||
| REQUIRE(event.content().get().at("moe.kazv.mxc.errcode") == exceptedErrorCode); | REQUIRE(event.content().get().at("moe.kazv.mxc.errcode") == exceptedErrorCode); | ||||
| } | } | ||||
| TEST_CASE("emit SaveEventsRequested", "[client][sync]") | |||||
| { | |||||
| ClientModel m = makeClient( | |||||
| withRoom(makeRoom( | |||||
| withRoomId("!exampleroomid:example.com")))); | |||||
| auto resp = makeResponse( | |||||
| "Sync", | |||||
| withResponseJsonBody(syncResponseJson) | |||||
| | withResponseDataKV("is", "incremental") | |||||
| ); | |||||
| auto [next, _] = ClientModel::update(m, ProcessResponseAction{SyncResponse{resp}}); | |||||
| auto it = std::find_if(next.nextTriggers.begin(), next.nextTriggers.end(), [](const auto &trigger) { | |||||
| return std::holds_alternative<SaveEventsRequested>(trigger); | |||||
| }); | |||||
| REQUIRE(it != next.nextTriggers.end()); | |||||
| auto t = std::get<SaveEventsRequested>(*it); | |||||
| REQUIRE(t.timelineEvents["!726s6s6q:example.com"].size() == 2); | |||||
| } | |||||