/* test_io.c -- MinUnit test runner. Copyright (C) 2017 Jakob Kreuze, All Rights Reserved. This file is part of Nekopack. Nekopack is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Nekopack is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Nekopack. If not, see . */ #include #include "minunit.h" #include "test_cli.h" #include "test_compress.h" #include "test_crypto.h" #include "test_encoding.h" #include "test_header.h" #include "test_io.h" #include "test_table.h" #define ANSI_RED "\033[31m" #define ANSI_GREEN "\033[32m" #define ANSI_BLUE "\033[34m" #define ANSI_BLINK "\033[5m" #define ANSI_END "\033[0m" int tests_run = 0; static const char *all_tests(void) { mu_run_test(test_out_path); mu_run_test(test_vararg_index); mu_run_test(test_game_id); mu_run_test(test_compress); mu_run_test(test_decompress); mu_run_test(test_derive_initial); mu_run_test(test_derive_primary); mu_run_test(test_stream_obj); mu_run_test(test_stream_rw); mu_run_test(test_stream_dump); mu_run_test(test_stream_realloc); mu_run_test(test_stream_xor); mu_run_test(test_stream_nav); mu_run_test(test_header_read); mu_run_test(test_header_creation); mu_run_test(test_table_list); mu_run_test(test_table_elif); mu_run_test(test_table_file); mu_run_test(test_decode_utf16le); mu_run_test(test_encode_utf16le); return NULL; } int main(void) { const char *res; printf("Test suite started.\n\n"); res = all_tests(); if (res != NULL) { printf(ANSI_RED "Test failed! " ANSI_END "\"%s\"\n", res); return 1; } printf(ANSI_GREEN "Test suite finished successfully.\n" ANSI_END); printf(ANSI_BLUE "%d tests were run.\n" ANSI_END, tests_run); return 0; }