MCPcopy Create free account
hub / github.com/blizzard4591/openMittsu / TEST_F

Function TEST_F

test/src/MessageCenterTest.cpp:24–72  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

22using ::testing::SizeIs;
23
24TEST_F(DatabaseTestFramework, MessageCenterTestUnknownGroup) {
25 ASSERT_EQ(0, db->getGroupCount());
26 ASSERT_EQ(1, db->getContactCount());
27
28 openmittsu::protocol::ContactId contactIdC(QStringLiteral("CCCCCCCC"));
29 openmittsu::crypto::KeyPair contactIdCKeyPair(openmittsu::crypto::KeyPair::randomKey());
30 ASSERT_NO_THROW(db->storeNewContact(contactIdC, contactIdCKeyPair));
31 ASSERT_TRUE(db->hasContact(contactIdC));
32 ASSERT_EQ(2, db->getContactCount());
33
34 openmittsu::protocol::ContactId contactIdD(QStringLiteral("DDDDDDDD"));
35 openmittsu::crypto::KeyPair contactIdDKeyPair(openmittsu::crypto::KeyPair::randomKey());
36 ASSERT_NO_THROW(db->storeNewContact(contactIdD, contactIdDKeyPair));
37 ASSERT_TRUE(db->hasContact(contactIdD));
38 ASSERT_EQ(3, db->getContactCount());
39
40 openmittsu::protocol::GroupId groupIdA(contactIdC, 1);
41 ASSERT_FALSE(db->hasGroup(groupIdA));
42
43 std::shared_ptr<openmittsu::test::MockNetworkSentMessageAcceptor> networkSentMessageAcceptor = std::make_shared<openmittsu::test::MockNetworkSentMessageAcceptor>();
44
45 ON_CALL(*networkSentMessageAcceptor, isConnected()).WillByDefault(Return(true));
46// EXPECT_CALL(*networkSentMessageAcceptor, isConnected()).Times(2);
47 EXPECT_CALL(*networkSentMessageAcceptor, processSentGroupSyncRequest(groupIdA, AllOf(Contains(contactIdC), SizeIs(1)), _, _));
48
49 openmittsu::database::DatabasePointerAuthority dpa;
50 dpa.setDatabase(db);
51
52 std::unique_ptr<openmittsu::dataproviders::SimpleMessageCenter> mc = std::make_unique<openmittsu::dataproviders::SimpleMessageCenter>(openmittsu::database::TestDatabaseWrapperFactory(&dpa));
53 mc->setNetworkSentMessageAcceptor(networkSentMessageAcceptor);
54 QCoreApplication::processEvents();
55
56 openmittsu::protocol::MessageId const messageA = this->getFreeMessageId();
57 mc->processReceivedGroupMessageText(openmittsu::messages::ReceivedGroupMessageHeader(openmittsu::messages::FullMessageHeader(selfContactId, openmittsu::protocol::MessageTime::fromDatabase(1234567), contactIdD, messageA, openmittsu::messages::MessageFlags(), openmittsu::protocol::PushFromId(QString(""))), groupIdA, openmittsu::protocol::MessageTime::fromDatabase(12345678)), "Test 1");
58
59 openmittsu::protocol::MessageId const messageB = this->getFreeMessageId();
60 mc->processReceivedGroupMessageText(openmittsu::messages::ReceivedGroupMessageHeader(openmittsu::messages::FullMessageHeader(selfContactId, openmittsu::protocol::MessageTime::fromDatabase(2234567), contactIdC, messageB, openmittsu::messages::MessageFlags(), openmittsu::protocol::PushFromId(QString(""))), groupIdA, openmittsu::protocol::MessageTime::fromDatabase(22345678)), "Test 2");
61
62 ASSERT_FALSE(db->hasGroup(groupIdA));
63 ASSERT_EQ(db->getGroupMessageCount(), 1);
64
65 openmittsu::protocol::MessageId const messageC = this->getFreeMessageId();
66 mc->processReceivedGroupCreation(openmittsu::messages::ReceivedGroupMessageHeader(openmittsu::messages::FullMessageHeader(selfContactId, openmittsu::protocol::MessageTime::fromDatabase(3234567), contactIdC, messageC, openmittsu::messages::MessageFlags(), openmittsu::protocol::PushFromId(QString(""))), groupIdA, openmittsu::protocol::MessageTime::fromDatabase(32345678)), { contactIdC, contactIdD, selfContactId });
67 ASSERT_TRUE(db->hasGroup(groupIdA));
68 ASSERT_EQ(db->getGroupMessageCount(), 4);
69
70 ASSERT_TRUE(mc->sendText(groupIdA, "TEST 3"));
71 ASSERT_EQ(db->getGroupMessageCount(), 5);
72}
73
74

Callers

nothing calls this directly

Calls 15

MessageFlagsClass · 0.85
PushFromIdClass · 0.85
setDatabaseMethod · 0.80
getFreeMessageIdMethod · 0.80
FullMessageHeaderClass · 0.50
getGroupCountMethod · 0.45
getContactCountMethod · 0.45
storeNewContactMethod · 0.45
hasContactMethod · 0.45
hasGroupMethod · 0.45

Tested by

no test coverage detected