blob: 8ec3a4ebc20f5712df74ca0765ed5b5bfad0e84c [file] [log] [blame]
/**
* Copyright (C) 2014 Regents of the University of Memphis.
* See COPYING for copyright and distribution information.
*/
#include "conf-file-processor.hpp"
#include "nlsr.hpp"
#include <boost/test/unit_test.hpp>
namespace nlsr {
namespace test {
BOOST_AUTO_TEST_SUITE(TestConfFileProcessor)
BOOST_AUTO_TEST_CASE(ConfFileProcessorSample)
{
Nlsr nlsr1;
const std::string CONFIG =
"network ndn\n"
"site-name memphis.edu\n"
"router-name cs/macbook\n\n"
"ndnneighbor /ndn/memphis.edu/cs/maia 7\n"
"link-cost /ndn/memphis.edu/cs/maia 30\n"
"ndnneighbor /ndn/memphis.edu/cs/pollux 10\n"
"link-cost /ndn/memphis.edu/cs/pollux 25\n\n"
"ndnname /ndn/memphis.edu/cs/macbook/name1\n"
"ndnname /ndn/memphis.edu/cs/macbook/name2\n\n\n"
;
std::ofstream config;
config.open("unit-test-nlsr.conf");
config << CONFIG;
config.close();
const std::string CONFIG_FILE = "unit-test-nlsr.conf";
ConfFileProcessor cfp1(nlsr1, CONFIG_FILE);
cfp1.processConfFile();
BOOST_CHECK(nlsr1.getAdjacencyList().isNeighbor("/ndn/memphis.edu/cs/maia"));
BOOST_CHECK_EQUAL(
nlsr1.getAdjacencyList().getAdjacent("/ndn/memphis.edu/cs/maia").getName(),
"/ndn/memphis.edu/cs/maia");
BOOST_CHECK_EQUAL(
nlsr1.getAdjacencyList().getAdjacent("/ndn/memphis.edu/cs/maia").getLinkCost(),
30);
BOOST_CHECK_EQUAL(nlsr1.getNamePrefixList().getSize(), 2);
remove("unit-test-nlsr.conf");
}
BOOST_AUTO_TEST_SUITE_END()
} //namespace test
} //namespace nlsr