def test_empty_set(): assert safe_pawns(set()) == 0, "Empty set"
def test_one_safe(): assert safe_pawns({"b4", "c4", "d4", "e4", "f4", "g4", "e5"}) == 1, "One safe pawn"
def test_insufficient_coords(): with pytest.raises(TypeError): safe_pawns({1, 4, 5, 7})
def test_six_safe(): assert safe_pawns({"b4", "d4", "f4", "c3", "e3", "g5", "d2"}) == 6, "Six safe pawns"
def test_incorrect_arguments(): with pytest.raises(TypeError): safe_pawns(4354)
def test_no_arguments(): with pytest.raises(TypeError): safe_pawns()
def test_equal_coordinates(): assert safe_pawns({"b4", "b4", "d4", "f4", "f4", "c3", "e3", "g5", "d2"}) == 6, "Equal cooridnates"
def test_only_one_pawn(): assert safe_pawns({"d2"}) == 0, "Only one pawn"
def test_diagonal_pawns(): assert safe_pawns({"a1", "b2", "c3", "d4", "e5", "f6", "g7", "h8"}) == 7, "Diagonal pawns"