diff --git a/CMakeLists.txt b/CMakeLists.txt index 027c017..75c054c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,5 @@ cmake_minimum_required(VERSION 3.1...3.28) -enable_testing() - project( Template VERSION 0.1.0 @@ -9,28 +7,11 @@ project( set(CMAKE_EXPORT_COMPILE_COMMANDS ON) -add_subdirectory(src/cppunit) add_subdirectory(src/modules) add_executable(main src/main.cc) -add_library(lib src/lib.cc src/lib.hh src/validation.cc src/validation.hh) -target_link_libraries(main PUBLIC lib) -target_link_libraries(lib PUBLIC modules) +add_library(validation src/validation.cc src/validation.hh) +target_link_libraries(main PUBLIC validation) +target_link_libraries(validation PUBLIC modules) target_include_directories(main PUBLIC "${PROJECT_BINARY_DIR}" - "${PROJECT_SOURCE_DIR}/prep") -target_include_directories(lib PUBLIC "${PROJECT_BINARY_DIR}" - "${PROJECT_SOURCE_DIR}/prep") - -include(FetchContent) -FetchContent_Declare( - googletest - URL https://github.com/google/googletest/archive/5376968f6948923e2411081fd9372e71a59d8e77.zip -) -FetchContent_MakeAvailable(googletest) - -add_executable(runtests src/test.cc) -target_link_libraries(runtests PUBLIC lib gtest gtest_main) -target_include_directories(runtests PUBLIC "${PROJECT_BINARY_DIR}") - -include(GoogleTest) -gtest_discover_tests(runtests) + "${PROJECT_SOURCE_DIR}/modules") diff --git a/src/cppunit/CMakeLists.txt b/src/cppunit/CMakeLists.txt deleted file mode 100644 index eaebf71..0000000 --- a/src/cppunit/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -add_library(cppunit cppunit.cc cppunit.hh) diff --git a/src/cppunit/cppunit.cc b/src/cppunit/cppunit.cc deleted file mode 100644 index e69de29..0000000 diff --git a/src/cppunit/cppunit.hh b/src/cppunit/cppunit.hh deleted file mode 100644 index ba51b1c..0000000 --- a/src/cppunit/cppunit.hh +++ /dev/null @@ -1,83 +0,0 @@ - -#ifndef CPPUNIT_H -#define CPPUNIT_H - -// Required headers, or just use #include -#include -#include -#include -#include -#include - -// 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__); -#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; - } - - 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 << "FAIL: " << 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) { - checks++; - if (a == b) { - std::cout << "."; - return; - } - fails++; - std::cout << "F"; - fail_hdr(stra, strb, file, line, func); - 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; - } - - 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 << "FAILED (failures=" << fails << ")"; - else - std::cout << "OK" << std::endl; - return fails > 0; - } - - int run() { - std::streambuf *ocin = std::cin.rdbuf(); - test_list(); - std::cin.rdbuf(ocin); - return status(); - } -}; - -#endif // CPPUNIT_H diff --git a/src/lib.cc b/src/lib.cc deleted file mode 100644 index e69de29..0000000 diff --git a/src/lib.hh b/src/lib.hh deleted file mode 100644 index 46aa2bf..0000000 --- a/src/lib.hh +++ /dev/null @@ -1 +0,0 @@ -#include "./validation.hh" diff --git a/src/main.cc b/src/main.cc index 755ede2..f6e678f 100644 --- a/src/main.cc +++ b/src/main.cc @@ -1,4 +1,4 @@ -#include "./lib.hh" +#include "./validation.hh" #include @@ -16,7 +16,7 @@ int main(int argc, char *argv[]) { Player player2 = Player(420, "player2", role1, player::Alive); Room room1(1, "Room 1", 1710087364, room::InProgress, {player1, player2}); Room room2(2, "Room 2", 1710087384, room::Ended, {}); - int actionValidated = validateAction(&player1, &kill, &room1, &relatedEvents, &player2); - printf("The action validation result is %u\n", actionValidated); + int validated_action = validate_action(&player1, &kill, &room1, &relatedEvents, &player2); + printf("The action validation result is %u\n", validated_action); return EXIT_SUCCESS; } diff --git a/src/modules/room.cc b/src/modules/room.cc index fd9dd39..626bcd7 100644 --- a/src/modules/room.cc +++ b/src/modules/room.cc @@ -10,16 +10,16 @@ Room::Room(uint32_t id, std::string title, uint32_t created_at, room::Status status, std::vector players): id(id), title(title), - created_at(create_utc_timestamp(created_at)), status(status), players(players) { + this->created_at = create_utc_timestamp(created_at); } Room::Room( uint32_t id, std::string title, uint32_t created_at, room::Status status, std::initializer_list players): id(id), title(title), - created_at(create_utc_timestamp(created_at)), status(status), players(players) { + this->created_at = create_utc_timestamp(created_at); } diff --git a/src/modules/time.cc b/src/modules/time.cc index 155abc5..fc6edec 100644 --- a/src/modules/time.cc +++ b/src/modules/time.cc @@ -1,8 +1,10 @@ +#include "./time.hh" + #include #include #include -std::tm *create_utc_imestamp(uint32_t timestamp) { +std::tm *create_utc_timestamp(uint32_t timestamp) { // Convert the timestamp into a time_point object std::chrono::seconds sec(timestamp); std::chrono::time_point tp(sec); diff --git a/src/test.cc b/src/test.cc deleted file mode 100644 index 279a50c..0000000 --- a/src/test.cc +++ /dev/null @@ -1,5 +0,0 @@ -#include - -TEST(ProgramTest, testFunction) { - EXPECT_EQ(8, 8); -} diff --git a/src/validation.cc b/src/validation.cc index e7ae0b5..c0684ed 100644 --- a/src/validation.cc +++ b/src/validation.cc @@ -27,7 +27,7 @@ bool is_action_allowed(const Action *action, std::vector *relevantEvents) return allowed; } -int validateAction( +int validate_action( Player *actor, const Action *action, Room *room, std::vector *relatedEvents, Player *target = nullptr) { if (!actor) { return validation::NoActor; diff --git a/src/validation.hh b/src/validation.hh index 32f94b3..9033f27 100644 --- a/src/validation.hh +++ b/src/validation.hh @@ -23,6 +23,6 @@ namespace validation { }; } // namespace validation -int validateAction(Player *actor, const Action *action, Room *room, std::vector *relatedEvents, Player *target); +int validate_action(Player *actor, const Action *action, Room *room, std::vector *relatedEvents, Player *target); #endif // !VALIDATION_HH