From 270e5b0444f67781856bf80db51650af9cb89b0c Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Thu, 17 Jul 2025 08:54:44 +0200 Subject: Renamed tests to make space for more coordinate tests --- test/090_allowedmoves/00_empty.in | 1 + test/090_allowedmoves/00_empty.out | 1 + test/090_allowedmoves/01_onemove.in | 2 ++ test/090_allowedmoves/01_onemove.out | 1 + test/090_allowedmoves/02_F_F2.in | 3 +++ test/090_allowedmoves/02_F_F2.out | 1 + test/090_allowedmoves/03_U_F.in | 3 +++ test/090_allowedmoves/03_U_F.out | 1 + test/090_allowedmoves/04_R_L_R.in | 4 ++++ test/090_allowedmoves/04_R_L_R.out | 1 + test/090_allowedmoves/05_longer_true.in | 12 +++++++++++ test/090_allowedmoves/05_longer_true.out | 1 + test/090_allowedmoves/06_longer_false.in | 12 +++++++++++ test/090_allowedmoves/06_longer_false.out | 1 + test/090_allowedmoves/07_D_U_false_order.in | 3 +++ test/090_allowedmoves/07_D_U_false_order.out | 1 + test/090_allowedmoves/allowedmoves_tests.c | 31 ++++++++++++++++++++++++++++ 17 files changed, 79 insertions(+) create mode 100644 test/090_allowedmoves/00_empty.in create mode 100644 test/090_allowedmoves/00_empty.out create mode 100644 test/090_allowedmoves/01_onemove.in create mode 100644 test/090_allowedmoves/01_onemove.out create mode 100644 test/090_allowedmoves/02_F_F2.in create mode 100644 test/090_allowedmoves/02_F_F2.out create mode 100644 test/090_allowedmoves/03_U_F.in create mode 100644 test/090_allowedmoves/03_U_F.out create mode 100644 test/090_allowedmoves/04_R_L_R.in create mode 100644 test/090_allowedmoves/04_R_L_R.out create mode 100644 test/090_allowedmoves/05_longer_true.in create mode 100644 test/090_allowedmoves/05_longer_true.out create mode 100644 test/090_allowedmoves/06_longer_false.in create mode 100644 test/090_allowedmoves/06_longer_false.out create mode 100644 test/090_allowedmoves/07_D_U_false_order.in create mode 100644 test/090_allowedmoves/07_D_U_false_order.out create mode 100644 test/090_allowedmoves/allowedmoves_tests.c (limited to 'test/090_allowedmoves') diff --git a/test/090_allowedmoves/00_empty.in b/test/090_allowedmoves/00_empty.in new file mode 100644 index 0000000..573541a --- /dev/null +++ b/test/090_allowedmoves/00_empty.in @@ -0,0 +1 @@ +0 diff --git a/test/090_allowedmoves/00_empty.out b/test/090_allowedmoves/00_empty.out new file mode 100644 index 0000000..27ba77d --- /dev/null +++ b/test/090_allowedmoves/00_empty.out @@ -0,0 +1 @@ +true diff --git a/test/090_allowedmoves/01_onemove.in b/test/090_allowedmoves/01_onemove.in new file mode 100644 index 0000000..aac8dac --- /dev/null +++ b/test/090_allowedmoves/01_onemove.in @@ -0,0 +1,2 @@ +1 +B' diff --git a/test/090_allowedmoves/01_onemove.out b/test/090_allowedmoves/01_onemove.out new file mode 100644 index 0000000..27ba77d --- /dev/null +++ b/test/090_allowedmoves/01_onemove.out @@ -0,0 +1 @@ +true diff --git a/test/090_allowedmoves/02_F_F2.in b/test/090_allowedmoves/02_F_F2.in new file mode 100644 index 0000000..93f0a9c --- /dev/null +++ b/test/090_allowedmoves/02_F_F2.in @@ -0,0 +1,3 @@ +2 +F +F2 diff --git a/test/090_allowedmoves/02_F_F2.out b/test/090_allowedmoves/02_F_F2.out new file mode 100644 index 0000000..c508d53 --- /dev/null +++ b/test/090_allowedmoves/02_F_F2.out @@ -0,0 +1 @@ +false diff --git a/test/090_allowedmoves/03_U_F.in b/test/090_allowedmoves/03_U_F.in new file mode 100644 index 0000000..ad3607e --- /dev/null +++ b/test/090_allowedmoves/03_U_F.in @@ -0,0 +1,3 @@ +2 +U +F diff --git a/test/090_allowedmoves/03_U_F.out b/test/090_allowedmoves/03_U_F.out new file mode 100644 index 0000000..27ba77d --- /dev/null +++ b/test/090_allowedmoves/03_U_F.out @@ -0,0 +1 @@ +true diff --git a/test/090_allowedmoves/04_R_L_R.in b/test/090_allowedmoves/04_R_L_R.in new file mode 100644 index 0000000..ffd9542 --- /dev/null +++ b/test/090_allowedmoves/04_R_L_R.in @@ -0,0 +1,4 @@ +3 +R +L' +R2 diff --git a/test/090_allowedmoves/04_R_L_R.out b/test/090_allowedmoves/04_R_L_R.out new file mode 100644 index 0000000..c508d53 --- /dev/null +++ b/test/090_allowedmoves/04_R_L_R.out @@ -0,0 +1 @@ +false diff --git a/test/090_allowedmoves/05_longer_true.in b/test/090_allowedmoves/05_longer_true.in new file mode 100644 index 0000000..1d9999c --- /dev/null +++ b/test/090_allowedmoves/05_longer_true.in @@ -0,0 +1,12 @@ +11 +F2 +B +U +D' +R +L2 +F +U' +D +F +L diff --git a/test/090_allowedmoves/05_longer_true.out b/test/090_allowedmoves/05_longer_true.out new file mode 100644 index 0000000..27ba77d --- /dev/null +++ b/test/090_allowedmoves/05_longer_true.out @@ -0,0 +1 @@ +true diff --git a/test/090_allowedmoves/06_longer_false.in b/test/090_allowedmoves/06_longer_false.in new file mode 100644 index 0000000..00fe94f --- /dev/null +++ b/test/090_allowedmoves/06_longer_false.in @@ -0,0 +1,12 @@ +8 +D +F' +B2 +L' +F' +R' +L2 +R +B +U2 +D diff --git a/test/090_allowedmoves/06_longer_false.out b/test/090_allowedmoves/06_longer_false.out new file mode 100644 index 0000000..c508d53 --- /dev/null +++ b/test/090_allowedmoves/06_longer_false.out @@ -0,0 +1 @@ +false diff --git a/test/090_allowedmoves/07_D_U_false_order.in b/test/090_allowedmoves/07_D_U_false_order.in new file mode 100644 index 0000000..680d1a1 --- /dev/null +++ b/test/090_allowedmoves/07_D_U_false_order.in @@ -0,0 +1,3 @@ +2 +D +U diff --git a/test/090_allowedmoves/07_D_U_false_order.out b/test/090_allowedmoves/07_D_U_false_order.out new file mode 100644 index 0000000..c508d53 --- /dev/null +++ b/test/090_allowedmoves/07_D_U_false_order.out @@ -0,0 +1 @@ +false diff --git a/test/090_allowedmoves/allowedmoves_tests.c b/test/090_allowedmoves/allowedmoves_tests.c new file mode 100644 index 0000000..aa6bda7 --- /dev/null +++ b/test/090_allowedmoves/allowedmoves_tests.c @@ -0,0 +1,31 @@ +#include "../test.h" + +bool allowedmoves(size_t n, const uint8_t [n]); + +static char *moves[] = { + "U", "U2", "U'", + "D", "D2", "D'", + "R", "R2", "R'", + "L", "L2", "L'", + "F", "F2", "F'", + "B", "B2", "B'", +}; + +void run(void) { + char movestr[STRLENMAX]; + uint8_t m[100]; + int n, i, j; + + fgets(movestr, STRLENMAX, stdin); + n = atoi(movestr); + + for (i = 0; i < n; i++) { + fgets(movestr, STRLENMAX, stdin); + movestr[strcspn(movestr, "\n")] = 0; + for (j = 0; j < 18; j++) + if (!strcmp(movestr, moves[j])) + m[i] = j; + } + + printf("%s\n", allowedmoves(n, m) ? "true" : "false"); +} -- cgit v1.3