defmodule DiamondTest do use ExUnit.Case test "1 Line" do diamond = Diamond.build(1) assert List.first(diamond) == "A" end test "2 Lines (first line)" do diamond = Diamond.build(2) assert List.first(diamond) == " A " end test "2 Lines (second line)" do diamond = Diamond.build(2) [_, s | _] = diamond assert s == "B B" end test "3 (first line)" do diamond = Diamond.build(3) assert List.first(diamond) == " A " end test "3 (second line)" do diamond = Diamond.build(3) [_, s | _] = diamond assert s == " B B " end test "3 (third line)" do diamond = Diamond.build(3) [_, _, s | _] = diamond assert s == "C C" end test "2" do assert Diamond.build(2) == [" A ", "B B", " A "] end test "3" do assert Diamond.build(3) == [" A ", " B B ", "C C", " B B ", " A "] end end