From 50fedbdbf98bcf01bcd95259ac5a93ae108b3c68 Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Fri, 28 Mar 2025 16:48:03 +0100 Subject: Make invcoord_co test more comprehensive --- test/079_invcoord_co/00_all.in | 0 test/079_invcoord_co/00_all.out | 1 + test/079_invcoord_co/00_solved.in | 1 - test/079_invcoord_co/00_solved.out | 1 - test/079_invcoord_co/01_U.in | 1 - test/079_invcoord_co/01_U.out | 1 - test/079_invcoord_co/02_U2.in | 1 - test/079_invcoord_co/02_U2.out | 1 - test/079_invcoord_co/03_U3.in | 1 - test/079_invcoord_co/03_U3.out | 1 - test/079_invcoord_co/04_D.in | 1 - test/079_invcoord_co/04_D.out | 1 - test/079_invcoord_co/07_R.in | 1 - test/079_invcoord_co/07_R.out | 1 - test/079_invcoord_co/08_R2.in | 1 - test/079_invcoord_co/08_R2.out | 1 - test/079_invcoord_co/10_L.in | 1 - test/079_invcoord_co/10_L.out | 1 - test/079_invcoord_co/13_F.in | 1 - test/079_invcoord_co/13_F.out | 1 - test/079_invcoord_co/14_F2.in | 1 - test/079_invcoord_co/14_F2.out | 1 - test/079_invcoord_co/16_B.in | 1 - test/079_invcoord_co/16_B.out | 1 - test/079_invcoord_co/17_B2.in | 1 - test/079_invcoord_co/17_B2.out | 1 - test/079_invcoord_co/20_scrambled.in | 1 - test/079_invcoord_co/20_scrambled.out | 1 - test/079_invcoord_co/invcoord_co_tests.c | 36 +++++++++++++++++++------------- 29 files changed, 22 insertions(+), 41 deletions(-) create mode 100644 test/079_invcoord_co/00_all.in create mode 100644 test/079_invcoord_co/00_all.out delete mode 100644 test/079_invcoord_co/00_solved.in delete mode 100644 test/079_invcoord_co/00_solved.out delete mode 100644 test/079_invcoord_co/01_U.in delete mode 100644 test/079_invcoord_co/01_U.out delete mode 100644 test/079_invcoord_co/02_U2.in delete mode 100644 test/079_invcoord_co/02_U2.out delete mode 100644 test/079_invcoord_co/03_U3.in delete mode 100644 test/079_invcoord_co/03_U3.out delete mode 100644 test/079_invcoord_co/04_D.in delete mode 100644 test/079_invcoord_co/04_D.out delete mode 100644 test/079_invcoord_co/07_R.in delete mode 100644 test/079_invcoord_co/07_R.out delete mode 100644 test/079_invcoord_co/08_R2.in delete mode 100644 test/079_invcoord_co/08_R2.out delete mode 100644 test/079_invcoord_co/10_L.in delete mode 100644 test/079_invcoord_co/10_L.out delete mode 100644 test/079_invcoord_co/13_F.in delete mode 100644 test/079_invcoord_co/13_F.out delete mode 100644 test/079_invcoord_co/14_F2.in delete mode 100644 test/079_invcoord_co/14_F2.out delete mode 100644 test/079_invcoord_co/16_B.in delete mode 100644 test/079_invcoord_co/16_B.out delete mode 100644 test/079_invcoord_co/17_B2.in delete mode 100644 test/079_invcoord_co/17_B2.out delete mode 100644 test/079_invcoord_co/20_scrambled.in delete mode 100644 test/079_invcoord_co/20_scrambled.out (limited to 'test') diff --git a/test/079_invcoord_co/00_all.in b/test/079_invcoord_co/00_all.in new file mode 100644 index 0000000..e69de29 diff --git a/test/079_invcoord_co/00_all.out b/test/079_invcoord_co/00_all.out new file mode 100644 index 0000000..d6109db --- /dev/null +++ b/test/079_invcoord_co/00_all.out @@ -0,0 +1 @@ +All good diff --git a/test/079_invcoord_co/00_solved.in b/test/079_invcoord_co/00_solved.in deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/00_solved.in +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/00_solved.out b/test/079_invcoord_co/00_solved.out deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/00_solved.out +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/01_U.in b/test/079_invcoord_co/01_U.in deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/01_U.in +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/01_U.out b/test/079_invcoord_co/01_U.out deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/01_U.out +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/02_U2.in b/test/079_invcoord_co/02_U2.in deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/02_U2.in +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/02_U2.out b/test/079_invcoord_co/02_U2.out deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/02_U2.out +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/03_U3.in b/test/079_invcoord_co/03_U3.in deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/03_U3.in +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/03_U3.out b/test/079_invcoord_co/03_U3.out deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/03_U3.out +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/04_D.in b/test/079_invcoord_co/04_D.in deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/04_D.in +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/04_D.out b/test/079_invcoord_co/04_D.out deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/04_D.out +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/07_R.in b/test/079_invcoord_co/07_R.in deleted file mode 100644 index 1f3d8a7..0000000 --- a/test/079_invcoord_co/07_R.in +++ /dev/null @@ -1 +0,0 @@ -1028 diff --git a/test/079_invcoord_co/07_R.out b/test/079_invcoord_co/07_R.out deleted file mode 100644 index 1f3d8a7..0000000 --- a/test/079_invcoord_co/07_R.out +++ /dev/null @@ -1 +0,0 @@ -1028 diff --git a/test/079_invcoord_co/08_R2.in b/test/079_invcoord_co/08_R2.in deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/08_R2.in +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/08_R2.out b/test/079_invcoord_co/08_R2.out deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/08_R2.out +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/10_L.in b/test/079_invcoord_co/10_L.in deleted file mode 100644 index f96ac06..0000000 --- a/test/079_invcoord_co/10_L.in +++ /dev/null @@ -1 +0,0 @@ -105 diff --git a/test/079_invcoord_co/10_L.out b/test/079_invcoord_co/10_L.out deleted file mode 100644 index f96ac06..0000000 --- a/test/079_invcoord_co/10_L.out +++ /dev/null @@ -1 +0,0 @@ -105 diff --git a/test/079_invcoord_co/13_F.in b/test/079_invcoord_co/13_F.in deleted file mode 100644 index 86868c5..0000000 --- a/test/079_invcoord_co/13_F.in +++ /dev/null @@ -1 +0,0 @@ -1630 diff --git a/test/079_invcoord_co/13_F.out b/test/079_invcoord_co/13_F.out deleted file mode 100644 index 86868c5..0000000 --- a/test/079_invcoord_co/13_F.out +++ /dev/null @@ -1 +0,0 @@ -1630 diff --git a/test/079_invcoord_co/14_F2.in b/test/079_invcoord_co/14_F2.in deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/14_F2.in +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/14_F2.out b/test/079_invcoord_co/14_F2.out deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/14_F2.out +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/16_B.in b/test/079_invcoord_co/16_B.in deleted file mode 100644 index 1c599d4..0000000 --- a/test/079_invcoord_co/16_B.in +++ /dev/null @@ -1 +0,0 @@ -516 diff --git a/test/079_invcoord_co/16_B.out b/test/079_invcoord_co/16_B.out deleted file mode 100644 index 1c599d4..0000000 --- a/test/079_invcoord_co/16_B.out +++ /dev/null @@ -1 +0,0 @@ -516 diff --git a/test/079_invcoord_co/17_B2.in b/test/079_invcoord_co/17_B2.in deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/17_B2.in +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/17_B2.out b/test/079_invcoord_co/17_B2.out deleted file mode 100644 index 573541a..0000000 --- a/test/079_invcoord_co/17_B2.out +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/test/079_invcoord_co/20_scrambled.in b/test/079_invcoord_co/20_scrambled.in deleted file mode 100644 index 6943e4d..0000000 --- a/test/079_invcoord_co/20_scrambled.in +++ /dev/null @@ -1 +0,0 @@ -957 diff --git a/test/079_invcoord_co/20_scrambled.out b/test/079_invcoord_co/20_scrambled.out deleted file mode 100644 index 6943e4d..0000000 --- a/test/079_invcoord_co/20_scrambled.out +++ /dev/null @@ -1 +0,0 @@ -957 diff --git a/test/079_invcoord_co/invcoord_co_tests.c b/test/079_invcoord_co/invcoord_co_tests.c index c3bf90e..9f7c3d5 100644 --- a/test/079_invcoord_co/invcoord_co_tests.c +++ b/test/079_invcoord_co/invcoord_co_tests.c @@ -1,28 +1,34 @@ #include "../test.h" +#define POW_3_7 2187 + int64_t coord_co(cube_t); cube_t invcoord_co(int64_t); void run(void) { - char str[STRLENMAX]; cube_t cube; - int64_t coord; + int64_t coord, coord2; - fgets(str, STRLENMAX, stdin); - coord = atoll(str); + /* Test all possible values for CO coordinate */ + for (coord = 0; coord < POW_3_7; coord++) { + cube = invcoord_co(coord); - cube = invcoord_co(coord); + if (!isconsistent(cube)) { + printf("Not consistent\n"); + return; + } + if (!issolvable(cube)) { + printf("Not solvable\n"); + return; + } - if (!isconsistent(cube)) { - printf("Not consistent\n"); - return; - } - if (!issolvable(cube)) { - printf("Not solvable\n"); - return; + coord2 = coord_co(cube); + if (coord != coord2) { + printf("Error: invcoord of %" PRId64 + " returns %" PRId64 "\n", coord, coord2); + return; + } } - coord = coord_co(cube); - - printf("%" PRId64 "\n", coord); + printf("All good\n"); } -- cgit v1.3