Browse Source

Test: update test_group.cc - WIP

LIB-11
heck 4 years ago
parent
commit
9105e95cb9
  1. 109
      test/test_group.cc

109
test/test_group.cc

@ -9,9 +9,11 @@
#include "../src/Adapter.hh"
#include "../src/utils.hh"
#include "../src/grp_update_interface.hh"
#include "../src/grp_update_drv_engine.hh"
#include "../src/grp_update_drv_dummy.hh"
#include "../src/grp_manager_interface.hh"
#include "../src/grp_driver_engine.hh"
#include "../src/grp_driver_dummy.hh"
#include "../src/grp_driver_replicator.hh"
//#include "../src/adapter_group.h"
#include "../src/status_to_string.hh"
@ -20,18 +22,26 @@
using namespace std;
using namespace pEp;
using namespace pEp::Adapter;
using namespace pEp::Adapter::pEpLog;
bool debug_info_full = true;
// Model
const string lmd_path = "test.db";
::pEp_identity* alice = nullptr;
::pEp_identity* bob = nullptr;
::pEp_identity* carol = nullptr;
::pEp_identity* grp_ident = nullptr;
::PEP_STATUS status;
string dummy_in;
GroupUpdateInterface* gu = nullptr;
GroupQueryInterface* gq = nullptr;
/*
* Callbacks
@ -104,21 +114,20 @@ void test_setup_and_start_sync()
Adapter::sync_initialize(Adapter::SyncModes::Async, &test_messageToSend, &test_notifyHandshake, false);
}
void test_group_create(::identity_list& idl)
void test_group_create()
{
logH2("test_group_create");
log("IDL: " + pEp::Utils::to_string(&idl, debug_info_full));
::identity_list* initial_memberlist = nullptr;
initial_memberlist = new_identity_list(bob);
::identity_list_add(initial_memberlist, carol);
log("create group identity");
grp_ident = ::new_identity("group1@peptest.ch", NULL, "432", "group1");
assert(grp_ident);
status = ::myself(Adapter::session(), grp_ident);
log("STATUS: " + status_to_string(status));
assert(!status);
log("grp_ident:" + pEp::Utils::to_string(grp_ident, debug_info_full));
log("adapter_group_create()");
status = gu->adapter_group_create(Adapter::session(), grp_ident, alice, &idl);
status = gu->adapter_group_create(Adapter::session(), grp_ident, alice, initial_memberlist);
log("STATUS: " + status_to_string(status));
assert(!status);
}
@ -132,14 +141,6 @@ void test_group_invite_member(::pEp_identity& ident)
assert(!status);
}
//void test_group_join(::pEp_identity& ident)
//{
// logH2("test_group_join");
// status = gu->adapter_group_join(Adapter::session(), grp_ident, &ident);
// log("STATUS: " + status_to_string(status));
// assert(!status);
//}
void test_group_remove_member(::pEp_identity& ident)
{
logH2("test_group_remove_member");
@ -148,18 +149,6 @@ void test_group_remove_member(::pEp_identity& ident)
assert(!status);
}
void test_group_rating()
{
logH2("test_group_rating");
// Rating
::PEP_rating rating;
log("adapter_group_rating()");
status = ::group_rating(Adapter::session(), grp_ident, alice, &rating);
log("STATUS: " + status_to_string(status));
assert(!status);
log("Rating: " + string{::rating_to_string(rating)});
}
void test_group_dissolve()
{
logH2("test_group_dissolve");
@ -176,14 +165,14 @@ void test_group_dissolve()
* - group_create(Alice)
* 2. Add Bob
* - group_invite_member(Bob)
* - group_join(Bob)
// * - group_join(Bob)
* 3. Add Carol
* - group_invite_member(Carol)
* - group_join(Carol)
// * - group_join(Carol)
* 4. Remove Carol
* - group_remove_member(Carol)
* 5. Rating
* - group_rating() (Just test once, to see it is generally working)
// * 5. Rating
// * - group_rating() (Just test once, to see it is generally working)
* 6. Dissolve
* - group_dissolve()
*
@ -202,40 +191,52 @@ int main(int argc, char** argv)
Adapter::pEpLog::set_enabled(false);
debug_info_full = true;
GroupUpdateDriverDummy gud{ "test.db" };
GroupUpdateDriverEngine gue{};
// pEpSQLite::log_enabled = true;
// ListManagerDummy::log_enabled = true;
GroupDriverDummy::log_enabled = true;
GroupDriverEngine::log_enabled = true;
GroupDriverReplicator::log_enabled = true;
// gu = &gud;
gu = &gue;
// Setup Test Context
test_create_alice_me();
log("PERUSERDIR: " + string(::per_user_directory()));
// pEp::Utils::file_delete(::per_user_directory());
// cin >> dummy_in;
GroupDriverDummy gdd{ lmd_path };
GroupDriverEngine gde{};
GroupDriverReplicator gdr{};
test_create_alice_me();
// gu = &gde;
// gq = nullptr;
// gu = &gdd;
// gq = &gdd;
gu = &gdr;
gq = &gdr;
// Setup Test Context
test_create_alice_me();
test_create_bob_partner();
test_create_carol_partner();
test_setup_and_start_sync();
logH1("1. Create group");
::identity_list* initial_memberlist = nullptr;
initial_memberlist = new_identity_list(bob);
::identity_list_add(initial_memberlist, carol);
test_group_create(*initial_memberlist);
log("USER DIR: " + string{ ::per_user_directory() });
test_group_create();
logH1("2. Add Bob");
test_group_invite_member(*bob); // Fails
// test_group_join(bob); // Fails
// test_group_invite_member(*bob); // Fails
logH1("3. Add Carol");
// test_group_invite_member(carol);
// test_group_join(carol);
// test_group_invite_member(*carol);
logH1("4. Remove Carol");
test_group_remove_member(*carol);
logH1("5. Rating");
test_group_rating();
if (gq != nullptr) {
::pEp_identity* grp_ident = ::new_identity("group1@peptest.ch", NULL, "432", "group1");
::pEp_identity* manager = nullptr;
PEP_STATUS stat = gq->group_query_manager(Adapter::session(), grp_ident, &manager);
log(status_to_string(stat));
log(::Utils::to_string(manager));
}
logH1("6. Dissolve");
test_group_dissolve();

Loading…
Cancel
Save