From 6ace621748e2ba20c8f1afd9440b5d0ed0810196 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Sun, 10 Mar 2024 18:22:55 +0200 Subject: [PATCH 1/2] refactor: make filenames consistent Use cpp header files --- src/CMakeLists.txt | 18 +++--- src/Cppunit/CMakeLists.txt | 1 - src/Prep/CMakeLists.txt | 1 - src/Prep/Prep.cpp | 3 - src/cppunit/CMakeLists.txt | 1 + src/{Cppunit => cppunit}/cppunit.cpp | 0 src/{Cppunit/cppunit.h => cppunit/cppunit.hh} | 59 ++++++++++--------- src/lib.cpp | 13 ++++ src/{main_lib.h => lib.hh} | 0 src/main.cpp | 3 +- src/main_lib.cpp | 7 --- src/prep/CMakeLists.txt | 1 + src/prep/prep.cpp | 5 ++ src/{Prep/Prep.h => prep/prep.hh} | 32 ++++++++-- src/test.cpp | 18 ++++-- 15 files changed, 104 insertions(+), 58 deletions(-) delete mode 100644 src/Cppunit/CMakeLists.txt delete mode 100644 src/Prep/CMakeLists.txt delete mode 100644 src/Prep/Prep.cpp create mode 100644 src/cppunit/CMakeLists.txt rename src/{Cppunit => cppunit}/cppunit.cpp (100%) rename src/{Cppunit/cppunit.h => cppunit/cppunit.hh} (65%) create mode 100644 src/lib.cpp rename src/{main_lib.h => lib.hh} (100%) delete mode 100644 src/main_lib.cpp create mode 100644 src/prep/CMakeLists.txt create mode 100644 src/prep/prep.cpp rename src/{Prep/Prep.h => prep/prep.hh} (67%) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7c52933..403a6e8 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -9,17 +9,17 @@ project( set(CMAKE_EXPORT_COMPILE_COMMANDS ON) -add_subdirectory(Cppunit) -add_subdirectory(Prep) +add_subdirectory(cppunit) +add_subdirectory(prep) add_executable(main main.cpp) -add_library(mainLib main_lib.cpp main_lib.h) -target_link_libraries(main PUBLIC mainLib) -target_link_libraries(mainLib PUBLIC prepLib) +add_library(lib lib.cpp lib.hh) +target_link_libraries(main PUBLIC lib) +target_link_libraries(lib PUBLIC prepLib) target_include_directories(main PUBLIC "${PROJECT_BINARY_DIR}" - "${PROJECT_SOURCE_DIR}/Prep") -target_include_directories(mainLib PUBLIC "${PROJECT_BINARY_DIR}" - "${PROJECT_SOURCE_DIR}/Prep") + "${PROJECT_SOURCE_DIR}/prep") +target_include_directories(lib PUBLIC "${PROJECT_BINARY_DIR}" + "${PROJECT_SOURCE_DIR}/prep") include(FetchContent) FetchContent_Declare( @@ -29,7 +29,7 @@ FetchContent_Declare( FetchContent_MakeAvailable(googletest) add_executable(runtests test.cpp) -target_link_libraries(runtests PUBLIC mainLib gtest gtest_main) +target_link_libraries(runtests PUBLIC lib gtest gtest_main) target_include_directories(runtests PUBLIC "${PROJECT_BINARY_DIR}") include(GoogleTest) diff --git a/src/Cppunit/CMakeLists.txt b/src/Cppunit/CMakeLists.txt deleted file mode 100644 index 3b69119..0000000 --- a/src/Cppunit/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -add_library(cppunit cppunit.cpp cppunit.h) diff --git a/src/Prep/CMakeLists.txt b/src/Prep/CMakeLists.txt deleted file mode 100644 index b5f1b2d..0000000 --- a/src/Prep/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -add_library(prepLib Prep.cpp Prep.h) diff --git a/src/Prep/Prep.cpp b/src/Prep/Prep.cpp deleted file mode 100644 index 4cada7a..0000000 --- a/src/Prep/Prep.cpp +++ /dev/null @@ -1,3 +0,0 @@ -#include "Prep.h" - -int add(int a, int b) { return a + b; } diff --git a/src/cppunit/CMakeLists.txt b/src/cppunit/CMakeLists.txt new file mode 100644 index 0000000..3e8a2ba --- /dev/null +++ b/src/cppunit/CMakeLists.txt @@ -0,0 +1 @@ +add_library(cppunit cppunit.cpp cppunit.hh) diff --git a/src/Cppunit/cppunit.cpp b/src/cppunit/cppunit.cpp similarity index 100% rename from src/Cppunit/cppunit.cpp rename to src/cppunit/cppunit.cpp diff --git a/src/Cppunit/cppunit.h b/src/cppunit/cppunit.hh similarity index 65% rename from src/Cppunit/cppunit.h rename to src/cppunit/cppunit.hh index 1ae1b36..ba51b1c 100644 --- a/src/Cppunit/cppunit.h +++ b/src/cppunit/cppunit.hh @@ -11,33 +11,33 @@ // CPlusPlusUnit - C++ Unit testing TDD framework (github.com/cppunit/cppunit) class Cppunit { - public: -#define CHECK(a, b) \ - check(a, b, #a, #b, __FILE__, __LINE__, __FUNCTION__); -#define CHECKT(a) \ - check(a, true, #a, "true", __FILE__, __LINE__, __FUNCTION__); + public: +#define CHECK(a, b) check(a, b, #a, #b, __FILE__, __LINE__, __FUNCTION__); +#define CHECKT(a) check(a, true, #a, "true", __FILE__, __LINE__, __FUNCTION__); #define CHECKS(a, b) check(a, b, #a, #b, __FILE__, __LINE__, __FUNCTION__); typedef const std::string &cs; int checks, fails; std::ostringstream serr; std::istringstream *in; - Cppunit() { checks = fails = 0; } + + Cppunit() { + checks = fails = 0; + } + void test_cin(cs s) { in = new std::istringstream(s); std::cin.rdbuf(in->rdbuf()); } + void fail_hdr(cs stra, cs strb, cs file, int line, cs func) { - serr << "==================================================" - << std::endl; + serr << "==================================================" << std::endl; serr << "FAIL: " << func << std::endl; - serr << "--------------------------------------------------" - << std::endl; - serr << "File \"" << file << "\", line " << line << " in " << func - << std::endl; + serr << "--------------------------------------------------" << std::endl; + serr << "File \"" << file << "\", line " << line << " in " << func << std::endl; serr << " Checking " << stra << " == " << strb << std::endl; } - template - void check(T a, T b, cs stra, cs strb, cs file, int line, cs func) { + + template void check(T a, T b, cs stra, cs strb, cs file, int line, cs func) { checks++; if (a == b) { std::cout << "."; @@ -46,27 +46,32 @@ class Cppunit { fails++; std::cout << "F"; fail_hdr(stra, strb, file, line, func); - serr << " Error: \"" << a << "\" ! = \"" << b << "\"" << std::endl - << std::endl; + serr << " Error: \"" << a << "\" ! = \"" << b << "\"" << std::endl << std::endl; } - virtual void single_test() {} - virtual void test_list() { single_test(); } - double dclock() { return double(clock()) / CLOCKS_PER_SEC; } + + virtual void single_test() { + } + + virtual void test_list() { + single_test(); + } + + double dclock() { + return double(clock()) / CLOCKS_PER_SEC; + } + int status() { std::cout << std::endl; - if (fails) - std::cout << serr.str(); - std::cout << "--------------------------------------------------" - << std::endl; - std::cout << "Ran " << checks << " checks in " << dclock() << "s" - << std::endl - << std::endl; + if (fails) std::cout << serr.str(); + std::cout << "--------------------------------------------------" << std::endl; + std::cout << "Ran " << checks << " checks in " << dclock() << "s" << std::endl << std::endl; if (fails) std::cout << "FAILED (failures=" << fails << ")"; else std::cout << "OK" << std::endl; return fails > 0; } + int run() { std::streambuf *ocin = std::cin.rdbuf(); test_list(); @@ -75,4 +80,4 @@ class Cppunit { } }; -#endif // CPPUNIT_H +#endif // CPPUNIT_H diff --git a/src/lib.cpp b/src/lib.cpp new file mode 100644 index 0000000..5615e42 --- /dev/null +++ b/src/lib.cpp @@ -0,0 +1,13 @@ +#include "lib.hh" + +#include "prep/prep.hh" + +#include + +void run() { + std::cout << add(2, 2) << std::endl; +} + +int functionToTest(int a) { + return a * 2; +} diff --git a/src/main_lib.h b/src/lib.hh similarity index 100% rename from src/main_lib.h rename to src/lib.hh diff --git a/src/main.cpp b/src/main.cpp index 6ee3f14..81a2ad1 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,4 +1,5 @@ -#include "main_lib.h" +#include "lib.hh" + #include int main(int argc, char *argv[]) { diff --git a/src/main_lib.cpp b/src/main_lib.cpp deleted file mode 100644 index daea41b..0000000 --- a/src/main_lib.cpp +++ /dev/null @@ -1,7 +0,0 @@ -#include "main_lib.h" -#include "Prep.h" -#include - -void run() { std::cout << add(2, 2) << std::endl; } - -int functionToTest(int a) { return a * 2; } diff --git a/src/prep/CMakeLists.txt b/src/prep/CMakeLists.txt new file mode 100644 index 0000000..6199629 --- /dev/null +++ b/src/prep/CMakeLists.txt @@ -0,0 +1 @@ +add_library(prepLib prep.cpp prep.hh) diff --git a/src/prep/prep.cpp b/src/prep/prep.cpp new file mode 100644 index 0000000..f9e2f6e --- /dev/null +++ b/src/prep/prep.cpp @@ -0,0 +1,5 @@ +#include "prep.hh" + +int add(int a, int b) { + return a + b; +} diff --git a/src/Prep/Prep.h b/src/prep/prep.hh similarity index 67% rename from src/Prep/Prep.h rename to src/prep/prep.hh index d96616d..ccf3053 100644 --- a/src/Prep/Prep.h +++ b/src/prep/prep.hh @@ -10,10 +10,34 @@ int add(int a, int b); // All IDs are uint32_t -enum EventType { PHASE_CHANGE, ACTION, ROOM_STATE_CHANGE, PLAYER_STATE_CHANGE }; -enum Action { KILL, VOTE, INVESTIGATE, HEAL, PROTECT }; -enum RoomStatus { AWAITING_START, IN_PROGRESS, STOPPED, ENDED }; -enum PlayerStatus { KICKED, ALIVE, DEAD, VOTED_OUT }; +enum EventType { + PHASE_CHANGE, + ACTION, + ROOM_STATE_CHANGE, + PLAYER_STATE_CHANGE, +}; + +enum Action { + KILL, + VOTE, + INVESTIGATE, + HEAL, + PROTECT, +}; + +enum RoomStatus { + AWAITING_START, + IN_PROGRESS, + STOPPED, + ENDED, +}; + +enum PlayerStatus { + KICKED, + ALIVE, + DEAD, + VOTED_OUT, +}; struct Role; struct Player; diff --git a/src/test.cpp b/src/test.cpp index c9f2755..063393c 100644 --- a/src/test.cpp +++ b/src/test.cpp @@ -1,9 +1,17 @@ -#include "Prep.h" -#include "main_lib.h" +#include "lib.hh" +#include "prep/prep.hh" + #include // TEST(TestSuiteName, testName) {...} -TEST(ProgramTest, testFunction) { EXPECT_EQ(functionToTest(4), 8); } -TEST(ProgramTest, testFunctionShouldFail) { EXPECT_EQ(functionToTest(4), 12); } +TEST(ProgramTest, testFunction) { + EXPECT_EQ(functionToTest(4), 8); +} -TEST(PrepTest, testAddFunc) { EXPECT_EQ(add(4, 2), 6); } +TEST(ProgramTest, testFunctionShouldFail) { + EXPECT_EQ(functionToTest(4), 12); +} + +TEST(PrepTest, testAddFunc) { + EXPECT_EQ(add(4, 2), 6); +} From 04d51dcfed5788e1ac753886ae7f9567c36bef30 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Sun, 10 Mar 2024 18:29:00 +0200 Subject: [PATCH 2/2] refactor(cmake): move `CMakeLists.txt` to root dir --- src/CMakeLists.txt => CMakeLists.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) rename src/CMakeLists.txt => CMakeLists.txt (83%) diff --git a/src/CMakeLists.txt b/CMakeLists.txt similarity index 83% rename from src/CMakeLists.txt rename to CMakeLists.txt index 403a6e8..78cea40 100644 --- a/src/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,11 +9,11 @@ project( set(CMAKE_EXPORT_COMPILE_COMMANDS ON) -add_subdirectory(cppunit) -add_subdirectory(prep) +add_subdirectory(src/cppunit) +add_subdirectory(src/prep) -add_executable(main main.cpp) -add_library(lib lib.cpp lib.hh) +add_executable(main src/main.cpp) +add_library(lib src/lib.cpp src/lib.hh) target_link_libraries(main PUBLIC lib) target_link_libraries(lib PUBLIC prepLib) target_include_directories(main PUBLIC "${PROJECT_BINARY_DIR}" @@ -28,7 +28,7 @@ FetchContent_Declare( ) FetchContent_MakeAvailable(googletest) -add_executable(runtests test.cpp) +add_executable(runtests src/test.cpp) target_link_libraries(runtests PUBLIC lib gtest gtest_main) target_include_directories(runtests PUBLIC "${PROJECT_BINARY_DIR}")