#include #include #include "map.h" /* ** TESTS: map/io.c - Writing to file */ Test(map_io, write_to_file) { t_map map; FILE *f; char buffer[256]; const char *path = "/tmp/test_c_md_map.map"; map_init(&map); map_add(&map, 2, 8, 1, 7); map_add(&map, 15, 22, 9, 16); cr_assert_eq(map_write(&map, path, "main.c.md", "main.c"), 0); f = fopen(path, "r"); cr_assert_not_null(f); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "C-MD MAP v1\n"); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "source: main.c.md\n"); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "target: main.c\n"); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "---\n"); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "2-8:1-7\n"); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "15-22:9-16\n"); fclose(f); remove(path); map_free(&map); } Test(map_io, write_empty_map) { t_map map; FILE *f; char buffer[256]; const char *path = "/tmp/test_c_md_empty_map.map"; map_init(&map); cr_assert_eq(map_write(&map, path, "test.c.md", "test.c"), 0); f = fopen(path, "r"); cr_assert_not_null(f); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "C-MD MAP v1\n"); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "source: test.c.md\n"); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "target: test.c\n"); fgets(buffer, sizeof(buffer), f); cr_assert_str_eq(buffer, "---\n"); fclose(f); remove(path); map_free(&map); }