Make use of logger provided by ndn-cxx
This commit also introduces a basic implmentation of DummyForwarder to
remove dependency on (and uncertainty of) the running instance of NFD.
Change-Id: Iba9fcbf3d3ebb1a5ae47018ad3be5d7d2b9c7462
diff --git a/tests/unit-tests/sync-core.t.cpp b/tests/unit-tests/sync-core.t.cpp
index 5fdd5fa..d0c47f5 100644
--- a/tests/unit-tests/sync-core.t.cpp
+++ b/tests/unit-tests/sync-core.t.cpp
@@ -21,6 +21,7 @@
#include "sync-core.hpp"
#include "test-common.hpp"
+#include "dummy-forwarder.hpp"
namespace ndn {
namespace chronoshare {
@@ -28,19 +29,18 @@
namespace fs = boost::filesystem;
-INIT_LOGGER("Test.SyncCore")
+_LOG_INIT(Test.SyncCore);
class TestSyncCoreFixture : public IdentityManagementTimeFixture
{
public:
- void
- advanceClocks()
+ TestSyncCoreFixture()
+ : forwarder(m_io, m_keyChain)
{
- for (int i = 0; i < 100; ++i) {
- usleep(10000);
- IdentityManagementTimeFixture::advanceClocks(time::milliseconds(10), 1);
- }
}
+
+public:
+ DummyForwarder forwarder;
};
BOOST_FIXTURE_TEST_SUITE(TestSyncCore, TestSyncCoreFixture)
@@ -77,47 +77,42 @@
Name loc2("/locator2");
Name syncPrefix("/broadcast/arslan");
- shared_ptr<Face> c1 = make_shared<Face>(this->m_io);
+ Face& c1 = forwarder.addFace();
auto log1 = make_shared<SyncLog>(dir1, user1);
- auto core1 = make_shared<SyncCore>(*c1, log1, user1, loc1, syncPrefix, bind(&callback, _1));
+ auto core1 = make_shared<SyncCore>(c1, log1, user1, loc1, syncPrefix, bind(&callback, _1));
- shared_ptr<Face> c2 = make_shared<Face>(this->m_io);
+ Face& c2 = forwarder.addFace();
auto log2 = make_shared<SyncLog>(dir2, user2);
- auto core2 = make_shared<SyncCore>(*c2, log2, user2, loc2, syncPrefix, bind(&callback, _1));
+ auto core2 = make_shared<SyncCore>(c2, log2, user2, loc2, syncPrefix, bind(&callback, _1));
- // @TODO: Implement test using the dummy forwarder and disable dependency on real time
-
- this->advanceClocks();
+ advanceClocks(time::milliseconds(10), 100);
BOOST_CHECK_EQUAL(toHex(*core1->root()), toHex(*core2->root()));
- // _LOG_TRACE("\n\n\n\n\n\n----------\n");
-
core1->updateLocalState(1);
- this->advanceClocks();
+ advanceClocks(time::milliseconds(10), 10);
BOOST_CHECK_EQUAL(toHex(*core1->root()), toHex(*core2->root()));
BOOST_CHECK_EQUAL(core2->seq(user1), 1);
BOOST_CHECK_EQUAL(log2->LookupLocator(user1), loc1);
core1->updateLocalState(5);
- this->advanceClocks();
+ advanceClocks(time::milliseconds(10), 10);
BOOST_CHECK_EQUAL(toHex(*core1->root()), toHex(*core2->root()));
BOOST_CHECK_EQUAL(core2->seq(user1), 5);
BOOST_CHECK_EQUAL(log2->LookupLocator(user1), loc1);
core2->updateLocalState(10);
- this->advanceClocks();
+ advanceClocks(time::milliseconds(10), 10);
BOOST_CHECK_EQUAL(toHex(*core1->root()), toHex(*core2->root()));
BOOST_CHECK_EQUAL(core1->seq(user2), 10);
BOOST_CHECK_EQUAL(log1->LookupLocator(user2), loc2);
// simple simultaneous data generation
- _LOG_TRACE("\n\n\n\n\n\n----------Simultaneous\n");
core1->updateLocalState(11);
- this->advanceClocks();
+ advanceClocks(time::milliseconds(10), 10);
core2->updateLocalState(15);
- this->advanceClocks();
+ advanceClocks(time::milliseconds(10), 10);
BOOST_CHECK_EQUAL(toHex(*core1->root()), toHex(*core2->root()));
BOOST_CHECK_EQUAL(core1->seq(user2), 15);
BOOST_CHECK_EQUAL(core2->seq(user1), 11);