diff --git a/test_projet_3.c b/test_projet_3.c new file mode 100644 index 0000000000000000000000000000000000000000..c40e6accda30d0eca4d03d2edc1bd3779bf894a1 --- /dev/null +++ b/test_projet_3.c @@ -0,0 +1,96 @@ +#include <stdlib.h> +#include <stdio.h> +#include "projet_3.h" +#include <CUnit/CUnit.h> +#include <CUnit/TestRun.h> +#include <CUnit/CUError.h> +#include <CUnit/Basic.h> + +void test_is_div(void) { + CU_ASSERT_TRUE(is_div(14,7)); +} + +void test_is_prime(void) { + CU_ASSERT_TRUE(is_prime(13)); +} +void test_is_not_prime(void) { + CU_ASSERT_FALSE(is_prime(14)); +} + +void file_test(void) { + FILE *file1 = NULL; + FILE *file2 = NULL; + + file1 = fopen("expected_output.txt","r"); + if (file1 == NULL) { + CU_FAIL("expected_output opening fail"); + return; + } + + int err = ecrire_dans_fichier("input.txt","actual_output.txt"); + if (err == -1){ + CU_FAIL("method projet_3 failed"); + return; + } + + file2 = fopen("actual_output.txt","r"); + if (file2 == NULL) { + CU_FAIL("actual_output opening fail"); + return; + } + + char chaine1[500]; + char chaine2[500]; + + while (fgets(chaine1,500,file1) != NULL && fgets(chaine2,500,file2) != NULL) + { + printf("%d\n",chaine1[2]) ; + printf("%d\n",chaine2[2]) ; + CU_ASSERT_STRING_EQUAL(chaine1,chaine2); + } + + fclose(file1); + fclose(file2); + +} + +int setup(void){ + return 0; + } + +int teardown(void) + { + return 0; + } + +int main(){ + + if (CUE_SUCCESS != CU_initialize_registry()) + { + return CU_get_error(); + } + + + CU_pSuite pSuite = NULL; + + pSuite = CU_add_suite("ma_suite",setup,teardown); + + if (NULL == pSuite) + { + CU_cleanup_registry(); + return CU_get_error(); + } + + if (NULL == CU_add_test(pSuite,"test_is_div",test_is_div) || + NULL == CU_add_test(pSuite, "test_is_prime",test_is_prime) || + NULL == CU_add_test(pSuite, "test_is_not_prime",test_is_not_prime) || + NULL == CU_add_test(pSuite,"file_test",file_test)) + { + CU_cleanup_registry(); + return CU_get_error(); + } + + + CU_basic_run_tests(); + CU_basic_show_failures(CU_get_failure_list()); +}