From 41e31b84a9adeae0b6bdbc4c9438bfa5e782c9da Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Mon, 13 Nov 2023 23:47:00 +0100 Subject: Test cleanup --- test/00_basic/basic_tests.c | 13 +++------- test/010_io_H48_read_write/io_H48_tests.c | 12 +--------- test/011_io_SRC_write/io_SRC_tests.c | 12 +--------- test/012_io_AVX_write/io_AVX_tests.c | 15 +++++------- test/020_move/move_tests.c | 13 ++-------- test/030_inverse_cube/inverse_tests.c | 12 ++-------- test/040_compose/compose_tests.c | 12 ++-------- test/050_transform/transform_tests.c | 12 ++-------- test/061_coord_eo/coord_eo_tests.c | 10 -------- test/070_solve_simple/solve_simple_tests.c | 38 ++++++++++++------------------ test/test.h | 21 ++++++++++++++++- 11 files changed, 54 insertions(+), 116 deletions(-) (limited to 'test') diff --git a/test/00_basic/basic_tests.c b/test/00_basic/basic_tests.c index af0f2cd..17f1b2b 100644 --- a/test/00_basic/basic_tests.c +++ b/test/00_basic/basic_tests.c @@ -1,13 +1,7 @@ -#include -#include -#include -#include +#include "../test.h" -#ifdef CUBE_AVX2 -#include -#endif - -#include "../../cube.h" +bool issolved(cube_t); +bool equal(cube_t, cube_t); void check(cube_t cube, char *name) @@ -19,7 +13,6 @@ check(cube_t cube, char *name) void check2(cube_t cube1, char *name1, cube_t cube2, char *name2) { -fprintf(stderr, "check2 %s %s\n", name1, name2); printf("%s and %s are%s equal\n", name1, name2, equal(cube1, cube2) ? "" : " NOT"); } diff --git a/test/010_io_H48_read_write/io_H48_tests.c b/test/010_io_H48_read_write/io_H48_tests.c index 70d1a91..71df1e7 100644 --- a/test/010_io_H48_read_write/io_H48_tests.c +++ b/test/010_io_H48_read_write/io_H48_tests.c @@ -1,14 +1,4 @@ -#include -#include -#include - -#ifdef CUBE_AVX2 -#include -#endif - -#include "../../cube.h" - -#define STRLENMAX 10000 +#include "../test.h" int main() { char *c, str[STRLENMAX]; diff --git a/test/011_io_SRC_write/io_SRC_tests.c b/test/011_io_SRC_write/io_SRC_tests.c index c2d10f6..5ae3d99 100644 --- a/test/011_io_SRC_write/io_SRC_tests.c +++ b/test/011_io_SRC_write/io_SRC_tests.c @@ -1,14 +1,4 @@ -#include -#include -#include - -#ifdef CUBE_AVX2 -#include -#endif - -#include "../../cube.h" - -#define STRLENMAX 10000 +#include "../test.h" int main() { char *c, str[STRLENMAX]; diff --git a/test/012_io_AVX_write/io_AVX_tests.c b/test/012_io_AVX_write/io_AVX_tests.c index cbe6ef0..7dc944e 100644 --- a/test/012_io_AVX_write/io_AVX_tests.c +++ b/test/012_io_AVX_write/io_AVX_tests.c @@ -1,15 +1,12 @@ -#include -#include -#include - -#ifdef CUBE_AVX2 -#include -#endif - -#include "../../cube.h" +#include "../test.h" #define STRLENMAX 10000 +bool iserror(cube_t); +bool issolvable(cube_t); +cube_t readcube(char *, char *); +void writecube(char *, cube_t, char *); + int main() { char *c, str[STRLENMAX]; cube_t cube; diff --git a/test/020_move/move_tests.c b/test/020_move/move_tests.c index 9e414cc..dde4c4e 100644 --- a/test/020_move/move_tests.c +++ b/test/020_move/move_tests.c @@ -1,15 +1,6 @@ -#include -#include -#include +#include "../test.h" -#ifdef CUBE_AVX2 -#include -#endif - -#include "../../cube.h" - -#define STRLENMAX 10000 -#define MOVESMAX 1000 +cube_t applymoves(cube_t, char *); int main() { char movestr[STRLENMAX], cubestr[STRLENMAX]; diff --git a/test/030_inverse_cube/inverse_tests.c b/test/030_inverse_cube/inverse_tests.c index 9151e42..d6d47ba 100644 --- a/test/030_inverse_cube/inverse_tests.c +++ b/test/030_inverse_cube/inverse_tests.c @@ -1,14 +1,6 @@ -#include -#include -#include +#include "../test.h" -#ifdef CUBE_AVX2 -#include -#endif - -#include "../../cube.h" - -#define STRLENMAX 10000 +cube_t inverse(cube_t); int main() { char str[STRLENMAX]; diff --git a/test/040_compose/compose_tests.c b/test/040_compose/compose_tests.c index c9c11af..d28b225 100644 --- a/test/040_compose/compose_tests.c +++ b/test/040_compose/compose_tests.c @@ -1,14 +1,6 @@ -#include -#include -#include +#include "../test.h" -#ifdef CUBE_AVX2 -#include -#endif - -#include "../../cube.h" - -#define STRLENMAX 10000 +cube_t compose(cube_t, cube_t); int main() { char str[STRLENMAX]; diff --git a/test/050_transform/transform_tests.c b/test/050_transform/transform_tests.c index e22a4a1..c1bc5af 100644 --- a/test/050_transform/transform_tests.c +++ b/test/050_transform/transform_tests.c @@ -1,14 +1,6 @@ -#include -#include -#include +#include "../test.h" -#ifdef CUBE_AVX2 -#include -#endif - -#include "../../cube.h" - -#define STRLENMAX 10000 +cube_t applytrans(cube_t, char *); int main() { char cubestr[STRLENMAX], transtr[STRLENMAX]; diff --git a/test/061_coord_eo/coord_eo_tests.c b/test/061_coord_eo/coord_eo_tests.c index bd3db8a..2dfba92 100644 --- a/test/061_coord_eo/coord_eo_tests.c +++ b/test/061_coord_eo/coord_eo_tests.c @@ -1,15 +1,5 @@ -#include -#include -#include - -#ifdef CUBE_AVX2 -#include -#endif - #include "../test.h" -#define STRLENMAX 10000 - int64_t coord_fast_eo(cube_fast_t); cube_fast_t cubetofast(cube_t); diff --git a/test/070_solve_simple/solve_simple_tests.c b/test/070_solve_simple/solve_simple_tests.c index 14a1674..4756dc0 100644 --- a/test/070_solve_simple/solve_simple_tests.c +++ b/test/070_solve_simple/solve_simple_tests.c @@ -1,33 +1,25 @@ -#include -#include -#include -#include -#include +#include "../test.h" -#ifdef CUBE_AVX2 -#include -#endif - -#include "../../cube.h" - -#define S 10000 +int64_t solve(cube_t, char *, char *, char *, int8_t, int8_t, int64_t, int8_t, + void *, char *); int main() { - char cubestr[S], solverstr[S], optionsstr[S], nisstypestr[S]; - char minmovesstr[S], maxmovesstr[S], maxsolsstr[S], optimalstr[S]; - char solutionsstr[S]; + char cubestr[STRLENMAX], solverstr[STRLENMAX], optionsstr[STRLENMAX]; + char nisstypestr[STRLENMAX], minmovesstr[STRLENMAX]; + char maxmovesstr[STRLENMAX], maxsolsstr[STRLENMAX]; + char optimalstr[STRLENMAX], solutionsstr[STRLENMAX]; cube_t cube; int64_t maxsols; int8_t minmoves, maxmoves, optimal; - fgets(cubestr, S, stdin); - fgets(solverstr, S, stdin); - fgets(optionsstr, S, stdin); - fgets(nisstypestr, S, stdin); - fgets(minmovesstr, S, stdin); - fgets(maxmovesstr, S, stdin); - fgets(maxsolsstr, S, stdin); - fgets(optimalstr, S, stdin); + fgets(cubestr, STRLENMAX, stdin); + fgets(solverstr, STRLENMAX, stdin); + fgets(optionsstr, STRLENMAX, stdin); + fgets(nisstypestr, STRLENMAX, stdin); + fgets(minmovesstr, STRLENMAX, stdin); + fgets(maxmovesstr, STRLENMAX, stdin); + fgets(maxsolsstr, STRLENMAX, stdin); + fgets(optimalstr, STRLENMAX, stdin); solverstr[strcspn(solverstr, "\n")] = 0; optionsstr[strcspn(optionsstr, "\n")] = 0; diff --git a/test/test.h b/test/test.h index 607a52d..7c5400e 100644 --- a/test/test.h +++ b/test/test.h @@ -1,7 +1,26 @@ -#include "../cube.h" +#include +#include +#include +#include +#include + +#define STRLENMAX 10000 + +typedef struct { + uint8_t corner[8]; + uint8_t edge[12]; +} cube_t; #ifdef CUBE_AVX2 +#include typedef __m256i cube_fast_t; #else typedef cube_t cube_fast_t; #endif + +/* Basic functions used in most tests */ +cube_t solvedcube(void); +bool iserror(cube_t); +bool issolvable(cube_t); +cube_t readcube(char *, char *); +void writecube(char *, cube_t, char *); -- cgit v1.3