From 1809d7b212128fcdcb481002a17db5dc97a15e03 Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Fri, 17 May 2024 17:42:43 +0200 Subject: Added inverse eo and copy_{edges,corners} --- test/075_set_eo/set_eo_tests.c | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 test/075_set_eo/set_eo_tests.c (limited to 'test/075_set_eo/set_eo_tests.c') diff --git a/test/075_set_eo/set_eo_tests.c b/test/075_set_eo/set_eo_tests.c new file mode 100644 index 0000000..ef7215a --- /dev/null +++ b/test/075_set_eo/set_eo_tests.c @@ -0,0 +1,38 @@ +#include "../test.h" + +int64_t coord_fast_eo(cube_fast_t); +void set_eo_fast(cube_fast_t *, int64_t); +cube_fast_t cubetofast(cube_t); +cube_t fasttocube(cube_fast_t); + +int main(void) { + char str[STRLENMAX]; + cube_t cube; + cube_fast_t fast; + int64_t eo; + + fgets(str, STRLENMAX, stdin); + cube = readcube("H48", str); + fast = cubetofast(cube); + fgets(str, STRLENMAX, stdin); + eo = atoi(str); + + set_eo_fast(&fast, eo); + + cube = fasttocube(fast); + if (iserror(cube)) { + printf("Error setting EO\n"); + } else if (!isconsistent(cube)) { + fprintf(stderr, "edges: "); + for (int i = 0; i < 12; i++) fprintf(stderr, "%d ", cube.edge[i]); + fprintf(stderr, "\n"); + for (int i = 0; i < 8; i++) fprintf(stderr, "%d ", cube.corner[i]); + fprintf(stderr, "\n"); + printf("Setting EO resulted in inconsistent cube\n"); + } else { + writecube("H48", cube, str); + printf("%s\n", str); + } + + return 0; +} -- cgit v1.3