package day11 import ( "fmt" "testing" "gitea.paas.celticinfo.fr/oabrivard/aoc2023/utils" ) func TestExpandUniverse(t *testing.T) { lines := []string{ "...#......", ".......#..", "#.........", "..........", "......#...", ".#........", ".........#", "..........", ".......#..", "#...#.....", } result := expandUniverse(lines) for _, l := range result { fmt.Println(string(l)) } } func TestGetUniverseAsInt(t *testing.T) { lines := []string{ "...#......", ".......#..", "#.........", "..........", "......#...", ".#........", ".........#", "..........", ".......#..", "#...#.....", } result, coords := getUniverseAsInt(expandUniverse(lines)) fmt.Println("Number of galaxies:", len(coords)) for _, l := range result { fmt.Println(l) } } func TestSumLengths(t *testing.T) { lines := []string{ "...#......", ".......#..", "#.........", "..........", "......#...", ".#........", ".........#", "..........", ".......#..", "#...#.....", } result := SumLengths(lines) if result != 374 { t.Fatalf("expected 374, got %v", result) } } func TestSumLengthsWithInput(t *testing.T) { lines := utils.ReadLines("input.txt") result := SumLengths(lines) if result != 10077850 { t.Fatalf("expected 10077850, got %v", result) } } func TestSumLengths2(t *testing.T) { lines := []string{ "...#......", ".......#..", "#.........", "..........", "......#...", ".#........", ".........#", "..........", ".......#..", "#...#.....", } result := SumLengths2(lines, 1) if result != 374 { t.Fatalf("expected 374, got %v", result) } result = SumLengths2(lines, 10-1) if result != 1030 { t.Fatalf("expected 1030, got %v", result) } result = SumLengths2(lines, 100-1) if result != 8410 { t.Fatalf("expected 8410, got %v", result) } result = SumLengths2(lines, 1000000-1) if result != 82000210 { t.Fatalf("expected 82000210, got %v", result) } } func TestSumLengths2WithInput(t *testing.T) { lines := utils.ReadLines("input.txt") result := SumLengths2(lines, 1) if result != 10077850 { t.Fatalf("expected 10077850, got %v", result) } result = SumLengths2(lines, 1000000-1) if result != 504715068438 { t.Fatalf("expected 504715068438, got %v", result) } }