diff options
-rw-r--r-- | cfam_access.cpp | 8 | ||||
-rw-r--r-- | test/Makefile.am | 3 | ||||
-rw-r--r-- | test/utest.cpp | 37 |
3 files changed, 29 insertions, 19 deletions
diff --git a/cfam_access.cpp b/cfam_access.cpp index 888eefc..25b811c 100644 --- a/cfam_access.cpp +++ b/cfam_access.cpp @@ -51,7 +51,7 @@ void writeReg(const std::unique_ptr<Target>& target, char msg[100]; sprintf(msg, "writeCFAMReg: Failed seek for address 0x%X, " "processor %d. errno = %d", - address, target->getPos(), errno); + address, static_cast<int>(target->getPos()), errno); throw std::runtime_error(msg); } @@ -62,7 +62,7 @@ void writeReg(const std::unique_ptr<Target>& target, char msg[100]; sprintf(msg, "writeCFAMReg: Failed write to address 0x%X, " "processor %d. errno = %d", - address, target->getPos(), errno); + address, static_cast<int>(target->getPos()), errno); throw std::runtime_error(msg); } } @@ -80,7 +80,7 @@ cfam_data_t readReg(const std::unique_ptr<Target>& target, char msg[100]; sprintf(msg, "readCFAMReg: Failed seek for address 0x%X, " "processor %d. errno = %d", - address, target->getPos(), errno); + address, static_cast<int>(target->getPos()), errno); throw std::runtime_error(msg); } @@ -91,7 +91,7 @@ cfam_data_t readReg(const std::unique_ptr<Target>& target, char msg[100]; sprintf(msg, "readCFAMReg: Failed read for address 0x%X, " "processor %d. errno = %d", - address, target->getPos(), errno); + address, static_cast<int>(target->getPos()), errno); throw std::runtime_error(msg); } diff --git a/test/Makefile.am b/test/Makefile.am index e0d20a2..ad8a173 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -13,5 +13,4 @@ utest_LDFLAGS = -lgtest_main -lgtest $(PTHREAD_LIBS) $(OESDK_TESTCASE_FLAGS) \ $(PHOSPHOR_LOGGING_LIBS) -lstdc++fs utest_SOURCES = utest.cpp -utest_LDADD = $(top_srcdir)/targeting.cpp $(top_srcdir)/registration.cpp \ - $(top_srcdir)/filedescriptor.cpp +utest_LDADD = $(top_srcdir)/targeting.cpp $(top_srcdir)/filedescriptor.cpp diff --git a/test/utest.cpp b/test/utest.cpp index 4572c55..6303335 100644 --- a/test/utest.cpp +++ b/test/utest.cpp @@ -24,6 +24,8 @@ using namespace openpower::util; using namespace openpower::targeting; namespace fs = std::experimental::filesystem; +ProcedureMap Registration::procedures; + constexpr auto masterDir = "/tmp"; class TargetingTest : public ::testing::Test @@ -39,15 +41,20 @@ class TargetingTest : public ::testing::Test auto path = mkdtemp(dir); assert(path != nullptr); - _directory = path; + _slaveBaseDir = path; + + _slaveDir = _slaveBaseDir / "hub@00"; + fs::create_directory(_slaveDir); } virtual void TearDown() { - fs::remove_all(_directory); + fs::remove_all(_slaveDir); + fs::remove_all(_slaveBaseDir); } - std::string _directory; + fs::path _slaveBaseDir; + fs::path _slaveDir; }; @@ -56,7 +63,7 @@ TEST_F(TargetingTest, CreateTargets) //Test that we always create the first Target { - Targeting targets{masterDir, _directory}; + Targeting targets{masterDir, _slaveDir}; ASSERT_EQ(targets.size(), 1); auto t = targets.begin(); @@ -69,12 +76,12 @@ TEST_F(TargetingTest, CreateTargets) //Test that we can create multiple Targets { //make some fake slave entries - std::ofstream(_directory + "/slave@01:00"); - std::ofstream(_directory + "/slave@02:00"); - std::ofstream(_directory + "/slave@03:00"); - std::ofstream(_directory + "/slave@04:00"); + std::ofstream(_slaveDir / "slave@01:00"); + std::ofstream(_slaveDir / "slave@02:00"); + std::ofstream(_slaveDir / "slave@03:00"); + std::ofstream(_slaveDir / "slave@04:00"); - Targeting targets{masterDir, _directory}; + Targeting targets{masterDir, _slaveDir}; ASSERT_EQ(targets.size(), 5); @@ -82,20 +89,24 @@ TEST_F(TargetingTest, CreateTargets) for (const auto& t : targets) { - std::ostringstream path; + fs::path path; ASSERT_EQ(t->getPos(), i); if (0 == i) { - path << masterDir; + path = masterDir; } else { - path << _directory << "/slave@0" << i << ":00/raw"; + std::ostringstream subdir; + subdir << "slave@0" << i << ":00/raw"; + + path = _slaveDir; + path /= subdir.str(); } - ASSERT_EQ(t->getCFAMPath(), path.str()); + ASSERT_EQ(t->getCFAMPath(), path); i++; } } |