def test_identifier_dollar(): assert identifier("Table$") == "Table$"
def test_identifier_quoted_space(): assert identifier("A Table") == '"A Table"'
def test_identifier_quoted_double_quote(): assert identifier('A " Table') == '"A "" Table"'
def test_identifier_quoted_first_char(): assert identifier(" Table") == '" Table"'
def test_identifier_quoted_null(): with pytest.raises( InterfaceError, match="identifier cannot contain the code zero character"): identifier("tabl\u0000e")
def test_identifier_empty(): with pytest.raises(InterfaceError, match="identifier must be > 0 characters in length"): identifier("")
def test_identifier_int(): with pytest.raises(InterfaceError, match="identifier must be a str"): identifier(9)
def test_identifier(): val = "top_secret" assert identifier(val) == val