From a0d15a8c40ae7798dff6489eed194dacb13c2c06 Mon Sep 17 00:00:00 2001 From: Anthony <bouillant.anthony@gmail.com> Date: Thu, 3 Apr 2025 22:22:06 +0200 Subject: [PATCH] Create puissance4 test file --- puissance4.c | 48 +++++++++++++++++++++++++++++----------------- puissance4.h | 5 +---- test_puissance4.c | 36 ++++++++++++++++++++++++++++++++++ tests_board | Bin 26616 -> 0 bytes tests_computer | Bin 36680 -> 0 bytes tests_game | Bin 36952 -> 0 bytes 6 files changed, 67 insertions(+), 22 deletions(-) create mode 100644 test_puissance4.c delete mode 100755 tests_board delete mode 100755 tests_computer delete mode 100755 tests_game diff --git a/puissance4.c b/puissance4.c index 9f100df..78e3ce1 100644 --- a/puissance4.c +++ b/puissance4.c @@ -1,20 +1,38 @@ #include "puissance4.h" +void print_usage(const char* program_name) { + printf("Usage: %s <mode> <row> <col>\n", program_name); + printf("%*smode specifies the mode: 1 = single player game (random),\n", 5, ""); + printf("%*s 2 = single player game (AI), 3 = two players game\n", 5, ""); + printf("%*srow specifies the number of rows (>= %d)\n", 5, "", MIN_ROW); + printf("%*scol specifies the number of columns (>= %d)\n", 5, "", MIN_COLUMN); +} + +bool validate_arguments(char const* argv[], int* game_mode, int* row_count, int* col_count) { + *game_mode = atoi(argv[1]); + *row_count = atoi(argv[2]); + *col_count = atoi(argv[3]); + + if (!is_valid_game_mode(*game_mode) || !is_valid_board_size(*row_count, *col_count)) { + print_usage(argv[0]); + return false; + } + + return true; +} + int main(int argc, char const* argv[]) { - if (argc != 4 || !is_valid_game_mode(atoi(argv[1])) || !is_valid_board_size(atoi(argv[2]), atoi(argv[3]))) { - printf("Usage: %s <mode> <row> <col>\n", argv[0]); - printf("%*smode specifies the mode: 1 = single player game (random),\n", 5, ""); - printf("%*s 2 = single player game (AI), 3 = two players game\n", 5, ""); - printf("%*srow specifies the number of rows (>= 4)\n", 5, ""); - printf("%*scol specifies the number of columns (>= 4)\n", 5, ""); + if (argc != 4) { + print_usage(argv[0]); + return false; + } + + int game_mode, row_count, col_count; + if (!validate_arguments(argv, &game_mode, &row_count, &col_count)) { return EXIT_FAILURE; } - enum GAME_MODE game_mode = atoi(argv[1]); - int row_count = atoi(argv[2]); - int col_count = atoi(argv[3]); srand(AI_SEED); - int** board = create_board(row_count, col_count); if (board == NULL) { fprintf(stderr, "Error: Unable to allocate memory for the board.\n"); @@ -60,11 +78,10 @@ int main(int argc, char const* argv[]) { } void announce_winner(enum GAME_MODE game_mode, int current_turn) { - const char* winner = (current_turn % 2 == 0) ? "Player one" : "Computer"; + char* winner = (current_turn % 2 == 0) ? "Player one" : "Computer"; if (game_mode == PLAYER_VS_PLAYER) { - winner = (current_turn % 2 == 0) ? "one" : "two"; - printf("\nPlayer %s won!\n", winner); + printf("\nPlayer %s won!\n", (current_turn % 2 == 0) ? "one" : "two"); } else { printf("\n%s won!\n", winner); } @@ -77,8 +94,3 @@ bool is_valid_game_mode(int game_mode) { bool is_valid_board_size(int rows, int cols) { return rows >= MIN_ROW && cols >= MIN_COLUMN; } - -void flush_input() { - int c; - while ((c = getchar()) != '\n' && c != EOF); -} diff --git a/puissance4.h b/puissance4.h index 7ebd437..4d13fa9 100644 --- a/puissance4.h +++ b/puissance4.h @@ -13,12 +13,9 @@ #define MIN_COLUMN 4 #define MIN_ROW 4 +bool validate_arguments(char const* argv[], int* game_mode, int* row_count, int* col_count); void announce_winner(enum GAME_MODE game_mode, int current_turn); bool is_valid_game_mode(int game_mode); bool is_valid_board_size(int rows, int cols); -// int select_random_column(int number_of_columns, int number_of_rows, int** board); -// int select_smart_column(int number_of_columns, int number_of_rows, int** board); -// bool is_column_full(int col, int rows, int** board); -void flush_input(); #endif diff --git a/test_puissance4.c b/test_puissance4.c new file mode 100644 index 0000000..f63ff0d --- /dev/null +++ b/test_puissance4.c @@ -0,0 +1,36 @@ +#include <stdio.h> +#include <stdlib.h> +#include <assert.h> +#include "puissance4.h" + +#define GREEN "\033[1;32m" +#define RED "\033[1;31m" +#define RESET "\033[0m" + +void test_is_valid_game_mode(); +void test_is_valid_board_size(); + +int main() { + test_is_valid_game_mode(); + test_is_valid_board_size(); + return EXIT_SUCCESS; +} + +void test_is_valid_game_mode() { + assert(is_valid_game_mode(1) == true); + assert(is_valid_game_mode(2) == true); + assert(is_valid_game_mode(3) == true); + assert(is_valid_game_mode(0) == false); + assert(is_valid_game_mode(4) == false); + assert(is_valid_game_mode(-1) == false); + printf(GREEN "test_is_valid_game_mode: PASSED\n" RESET); +} + +void test_is_valid_board_size() { + assert(is_valid_board_size(4, 4) == true); + assert(is_valid_board_size(6, 7) == true); + assert(is_valid_board_size(3, 4) == false); + assert(is_valid_board_size(4, 3) == false); + assert(is_valid_board_size(2, 2) == false); + printf(GREEN "test_is_valid_board_size: PASSED\n" RESET); +} \ No newline at end of file diff --git a/tests_board b/tests_board deleted file mode 100755 index 4963c645ce1583ee18bdcea9857c70d6a42b9165..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26616 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 L43%ga(6|f$qLl<S diff --git a/tests_computer b/tests_computer deleted file mode 100755 index a1c01814781908237943a909f10aeff832497a61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36680 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 F831^&LAn3{ diff --git a/tests_game b/tests_game deleted file mode 100755 index f1cfa60e87bb4232589ffc7d78236e1434260775..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36952 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 -- GitLab