Skip to content

Commit 20795ee

Browse files
committed
Add doctest test.
1 parent da2ef40 commit 20795ee

File tree

7 files changed

+7036
-257
lines changed

7 files changed

+7036
-257
lines changed

doctest/doctest.h

Lines changed: 7019 additions & 0 deletions
Large diffs are not rendered by default.

tests/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
set(TEST_EXE ${PROJECT_NAME}_test)
22

33
add_executable(${TEST_EXE}
4-
${CMAKE_SOURCE_DIR}/tests/main.cpp)
4+
${CMAKE_SOURCE_DIR}/tests/rtcsdk_tests.cpp)
55

66
set(INCLUDE_DIR
77
"${CMAKE_SOURCE_DIR}")

tests/cpp.hint

Lines changed: 0 additions & 4 deletions
This file was deleted.

tests/main.cpp renamed to tests/rtcsdk_tests.cpp

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1+
#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
2+
#include <doctest/doctest.h>
3+
14
#define RTCSDK_COM_NO_LEAK_DETECTION
25

3-
#include <iostream>
46
#include <rtcsdk/interfaces.h>
5-
#include <windows.h>
7+
#include <rtcsdk/vector.h>
68

7-
// Declare sample interface
89
RTCSDK_DEFINE_INTERFACE(ISampleInterface, "{AB9A7AF1-6792-4D0A-83BE-8252A8432B45}")
910
{
1011
[[nodiscard]] virtual int sum(int a, int b) const noexcept = 0;
@@ -15,7 +16,7 @@ RTCSDK_DEFINE_INTERFACE(ISampleInterface, "{AB9A7AF1-6792-4D0A-83BE-8252A8432B45
1516
class __declspec(novtable) sample_object : public rtcsdk::object<sample_object, ISampleInterface>
1617
{
1718
public:
18-
explicit sample_object(int default_answer) noexcept : default_answer_{default_answer}
19+
explicit sample_object(int default_answer) noexcept: default_answer_{default_answer}
1920
{
2021
}
2122

@@ -34,11 +35,16 @@ class __declspec(novtable) sample_object : public rtcsdk::object<sample_object,
3435
int default_answer_;
3536
};
3637

37-
int main()
38+
TEST_CASE("sample interface works as expected.")
3839
{
39-
// Create new instance and get its ISampleInterface interface pointer
40-
{
41-
auto obj = sample_object::create_instance(42).to_ptr();
42-
std::cout << obj->sum(obj->get_answer(), 5);
43-
}
40+
auto obj = sample_object::create_instance(42).to_ptr();
41+
CHECK_EQ(obj->sum(obj->get_answer(), 5), 47);
4442
}
43+
44+
TEST_CASE("vector type traits")
45+
{
46+
using namespace rtcsdk::details;
47+
SUBCASE("remove_front_t works as expected") {
48+
CHECK(std::is_same_v<remove_front_t<vector<int, float, double>>, vector<float, double>>);
49+
}
50+
}

tests/test.vcxproj

Lines changed: 0 additions & 186 deletions
This file was deleted.

tests/test.vcxproj.filters

Lines changed: 0 additions & 52 deletions
This file was deleted.

tests/test.vcxproj.user

Lines changed: 0 additions & 4 deletions
This file was deleted.

0 commit comments

Comments
 (0)