defmodule Khf1Testcases do testcases = # [{ps, pd, b}] [{["6", "3", "1 5 2", "2 2 1", "4 6 1"], {6, 3, [{{1,5}, 2},{{2,2}, 1},{{4,6}, 1}]}, true}, {["6", "3", "1 5 2", "2 2 1", "4 6 0"], {6, 3, [{{1,5}, 2},{{2,2}, 1},{{4,6}, 0}]}, false}, {["6", "7", "1 5 2", "2 2 1", "4 6 1"], {6, 7, [{{1,5}, 2},{{2,2}, 1},{{4,6}, 1}]}, false}, {["6", "6", "1 5 2", "2 2 1", "4 6 1"], {6, 6, [{{1,5}, 2},{{2,2}, 1},{{4,6}, 1}]}, true}, {["0", "3", "1 5 2", "2 2 1", "4 6 1"], {0, 3, [{{1,5}, 2},{{2,2}, 1},{{4,6}, 1}]}, false}, {["2", "3", "1 5 2", "2 2 1", "4 6 1"], {2, 3, [{{1,5}, 2},{{2,2}, 1},{{4,6}, 1}]}, false}, {["6", "3", "1 5 2", "2 2 1", "4 6 1"], {6, 3, [{{1,5}, 2},{{2,2}, 1},{{4,6}, 1}]}, true}, {["6", "3", "2 2 1", "2 2 1", "4 6 1"], {6, 3, [{{2,2}, 1},{{2,2}, 1},{{4,6}, 1}]}, false}, {["6", "3", "2 2 1", "2 2 2", "4 6 1"], {6, 3, [{{2,2}, 1},{{2,2}, 2},{{4,6}, 1}]}, false}, {["3", "2", "1 3 2"], {3, 2, [{{1,3}, 2}]}, true}, {["3", "2"], {3, 2, []}, true}, {["2", "2", "1 3 2"], {2, 2, [{{1,3}, 2}]}, false}, {["3", "2", "1 3 3"], {3, 2, [{{1,3}, 3}]}, false} ] for {i, {ps, pd, b}} <- Enum.zip(1..length(testcases), testcases) do {"Test case #{i}", Khf1.to_internal(ps) === pd, Khf1.correct?(pd) == b} |> IO.inspect end end