diff options
| author | Qiuwen Lu <[email protected]> | 2016-08-30 10:30:27 +0800 |
|---|---|---|
| committer | Qiuwen Lu <[email protected]> | 2016-08-30 10:30:27 +0800 |
| commit | 239219bf365b813ae1f5ebb8f26229d9b860acde (patch) | |
| tree | eb1515dfc9e54411cdc2364bdb7ee6e86e630e6b /test | |
| parent | af0460d2307c8325db5f5ef381f098a60899728d (diff) | |
许多改动,完成基础框架。
Diffstat (limited to 'test')
| -rw-r--r-- | test/CMakeLists.txt | 16 | ||||
| -rw-r--r-- | test/TestHwInfo.cc | 13 | ||||
| -rw-r--r-- | test/TestMask.cc | 34 | ||||
| -rw-r--r-- | test/TestVNode.cc | 2 |
4 files changed, 50 insertions, 15 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 9caa6dc..fdeef9b 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -12,16 +12,16 @@ set(TEST_LINK_LIBRARIES ${DPDK_LIBRARY} gtest) # TestCase 1
# add_executable(TestDevice TestDevice.cc Unittest.cc)
-# target_link_libraries(TestDevice ${TEST_LINK_LIBRARIES} base)
+# target_link_libraries(TestDevice ${TEST_LINK_LIBRARIES} core)
# TestCase 2
-add_executable(TestHwInfo TestHwInfo.cc Unittest.cc)
-target_link_libraries(TestHwInfo ${TEST_LINK_LIBRARIES} base)
+#add_executable(TestHwInfo TestHwInfo.cc Unittest.cc)
+#target_link_libraries(TestHwInfo ${TEST_LINK_LIBRARIES} core)
# TestCase 3
-add_executable(TestMempool TestMempool.cc Unittest.cc)
-target_link_libraries(TestMempool ${TEST_LINK_LIBRARIES} base)
+# add_executable(TestVNode TestVNode.cc Unittest.cc)
+# target_link_libraries(TestVNode ${TEST_LINK_LIBRARIES} core)
-# TestCase 4
-add_executable(TestVNode TestVNode.cc Unittest.cc)
-target_link_libraries(TestVNode ${TEST_LINK_LIBRARIES} base)
\ No newline at end of file +# TestCase 3
+add_executable(TestMask TestMask.cc Unittest.cc)
+target_link_libraries(TestMask ${TEST_LINK_LIBRARIES} core)
\ No newline at end of file diff --git a/test/TestHwInfo.cc b/test/TestHwInfo.cc index 177742e..1b92432 100644 --- a/test/TestHwInfo.cc +++ b/test/TestHwInfo.cc @@ -1,9 +1,10 @@ #include <gtest/gtest.h>
#include <mr_ctx.h>
+#include <mr_hwinfo.h>
+#include <rte_lcore.h>
#include "Unittest.h"
-#include <base/include/mr_hwinfo.h>
class TestHwInfoBeforePreConfig : public ModuelTestBaseBeforePreConfig {};
class TestHwInfoBeforeInit : public ModuleTestBaseBeforeInit{};
@@ -23,24 +24,24 @@ TEST_P(TestHwInfoBeforePreConfig, TestPreConfig) TEST_P(TestHwInfoBeforeInit, TestCPUCounts)
{
- EXPECT_NE(mr_hwinfo_nr_cpus(), 0);
+ EXPECT_EQ(mr_hwinfo_nr_cpus(), rte_lcore_count());
EXPECT_NE(mr_hwinfo_nr_sockets(), 0);
}
TEST_P(TestHwInfoBeforeInit, TestPhysicalID)
{
int nr_cpus = mr_hwinfo_nr_cpus();
- ASSERT_NE(nr_cpus, 0);
+ EXPECT_EQ(nr_cpus, rte_lcore_count());
for (int id = 0; id < nr_cpus; id++)
- EXPECT_GE(mr_hwinfo_physical_cpu_id(id), 0);
+ EXPECT_EQ(mr_hwinfo_physical_cpu_id(id), lcore_config[id].core_id);
}
TEST_P(TestHwInfoBeforeInit, TestSocketID)
{
int nr_cpus = mr_hwinfo_nr_cpus();
- ASSERT_NE(nr_cpus, 0);
+ EXPECT_EQ(nr_cpus, rte_lcore_count());
for (int id = 0; id < nr_cpus; id++)
- EXPECT_GE(mr_hwinfo_socket_id(id), 0);
+ EXPECT_EQ(mr_hwinfo_socket_id(id), rte_lcore_to_socket_id(id));
}
\ No newline at end of file diff --git a/test/TestMask.cc b/test/TestMask.cc new file mode 100644 index 0000000..1e271ce --- /dev/null +++ b/test/TestMask.cc @@ -0,0 +1,34 @@ +
+#include <gtest/gtest.h>
+#include <mr_mask.h>
+
+TEST(TestMask, TestPopcnt)
+{
+ mask_t test_mask_0 = 0;
+ EXPECT_EQ(mask_popcnt(test_mask_0), 0);
+
+ mask_t test_mask_1 = 0xAA;
+ EXPECT_EQ(mask_popcnt(test_mask_1), 4);
+
+ mask_t test_mask_2 = 0xffffffff;
+ EXPECT_EQ(mask_popcnt(test_mask_2), 32);
+
+ mask_t test_mask_3 = 0xffffffffffffffff;
+ EXPECT_EQ(mask_popcnt(test_mask_3), 64);
+}
+
+
+TEST(TestMask, TestLocation)
+{
+ mask_t test_mask_0 = 0;
+ EXPECT_EQ(mask_location(test_mask_0, 0), -1);
+
+ mask_t test_mask_1 = 0x88;
+ EXPECT_EQ(mask_location(test_mask_1, 0), 3);
+ EXPECT_EQ(mask_location(test_mask_1, 1), 7);
+ EXPECT_EQ(mask_location(test_mask_1, 2), -1);
+
+ mask_t test_mask_2 = 0xffffffffffffffff;
+ for(unsigned id = 0; id < sizeof(mask_t) * 8; id++)
+ EXPECT_EQ(mask_location(test_mask_2, id), id);
+}
\ No newline at end of file diff --git a/test/TestVNode.cc b/test/TestVNode.cc index d1efa27..0add9f9 100644 --- a/test/TestVNode.cc +++ b/test/TestVNode.cc @@ -1,8 +1,8 @@ #include <gtest/gtest.h> -#include <base/include/mr_vnode.h> #include <rte_ring.h> #include <rte_mempool.h> #include <rte_mbuf.h> +#include <mr_vnode.h> class VNodeOpsWrapper { |
