defmodule Khf2Testcases do testcases = # [{ps, pd}] [{[" 6", "3 ", " 1 5 2 ", "2 2 1", "4 6 1"], [{{1, 1}, nil}, {{1, 2}, nil}, {{1, 3}, nil}, {{1, 4}, nil}, {{1, 5}, 2}, {{1, 6}, nil}, {{2, 6}, nil}, {{3, 6}, nil}, {{4, 6}, 1}, {{5, 6}, nil}, {{6, 6}, nil}, {{6, 5}, nil}, {{6, 4}, nil}, {{6, 3}, nil}, {{6, 2}, nil}, {{6, 1}, nil}, {{5, 1}, nil}, {{4, 1}, nil}, {{3, 1}, nil}, {{2, 1}, nil}, {{2, 2}, 1}, {{2, 3}, nil}, {{2, 4}, nil}, {{2, 5}, nil}, {{3, 5}, nil}, {{4, 5}, nil}, {{5, 5}, nil}, {{5, 4}, nil}, {{5, 3}, nil}, {{5, 2}, nil}, {{4, 2}, nil}, {{3, 2}, nil}, {{3, 3}, nil}, {{3, 4}, nil}, {{4, 4}, nil}, {{4, 3}, nil}]}, {[" 6", "6", "1 5 2", "2 2 1", " 4 6 1 "], [{{1, 1}, nil}, {{1, 2}, nil}, {{1, 3}, nil}, {{1, 4}, nil}, {{1, 5}, 2}, {{1, 6}, nil}, {{2, 6}, nil}, {{3, 6}, nil}, {{4, 6}, 1}, {{5, 6}, nil}, {{6, 6}, nil}, {{6, 5}, nil}, {{6, 4}, nil}, {{6, 3}, nil}, {{6, 2}, nil}, {{6, 1}, nil}, {{5, 1}, nil}, {{4, 1}, nil}, {{3, 1}, nil}, {{2, 1}, nil}, {{2, 2}, 1}, {{2, 3}, nil}, {{2, 4}, nil}, {{2, 5}, nil}, {{3, 5}, nil}, {{4, 5}, nil}, {{5, 5}, nil}, {{5, 4}, nil}, {{5, 3}, nil}, {{5, 2}, nil}, {{4, 2}, nil}, {{3, 2}, nil}, {{3, 3}, nil}, {{3, 4}, nil}, {{4, 4}, nil}, {{4, 3}, nil}]}, {["3", "2", "1 3 2"], [{{1, 1}, nil}, {{1, 2}, nil}, {{1, 3}, 2}, {{2, 3}, nil}, {{3, 3}, nil}, {{3, 2}, nil}, {{3, 1}, nil}, {{2, 1}, nil}, {{2, 2}, nil}]}, {["3", "2"], [{{1, 1}, nil}, {{1, 2}, nil}, {{1, 3}, nil}, {{2, 3}, nil}, {{3, 3}, nil}, {{3, 2}, nil}, {{3, 1}, nil}, {{2, 1}, nil}, {{2, 2}, nil}]}, {[" 4", " 2", " 1 3 1", " 2 3 2"], [{{1, 1}, nil}, {{1, 2}, nil}, {{1, 3}, 1}, {{1, 4}, nil}, {{2, 4}, nil}, {{3, 4}, nil}, {{4, 4}, nil}, {{4, 3}, nil}, {{4, 2}, nil}, {{4, 1}, nil}, {{3, 1}, nil}, {{2, 1}, nil}, {{2, 2}, nil}, {{2, 3}, 2}, {{3, 3}, nil}, {{3, 2}, nil}]}, {[" 2", "1 ", " 2 2 1 "], [{{1, 1}, nil}, {{1, 2}, nil}, {{2, 2}, 1}, {{2, 1}, nil}]}, {["3 ", " 2", "1 1 1", "1 3 2", "2 2 1", "3 1 2", " 3 3 1 "], [{{1, 1}, 1}, {{1, 2}, nil}, {{1, 3}, 2}, {{2, 3}, nil}, {{3, 3}, 1}, {{3, 2}, nil}, {{3, 1}, 2}, {{2, 1}, nil}, {{2, 2}, 1}]}, {["3", "2", "3 3 1", "1 3 2", "3 1 2", "2 2 1"], [{{1, 1}, nil}, {{1, 2}, nil}, {{1, 3}, 2}, {{2, 3}, nil}, {{3, 3}, 1}, {{3, 2}, nil}, {{3, 1}, 2}, {{2, 1}, nil}, {{2, 2}, 1}]} ] for {i, {ps, pd}} <- Enum.zip(1..length(testcases), testcases) do {"Test case #{i}", (Khf2.helix(ps) === pd)} |> IO.inspect end end