def test_parse_selector_args(): assert parse_selector_args("'style name'") == (['style name'], {}) assert parse_selector_args("666") == ([666], {}) assert parse_selector_args("'style name', 666") == (['style name', 666], {}) assert parse_selector_args("'style name' ,666") == (['style name', 666], {}) assert parse_selector_args("'style name',666") == (['style name', 666], {}) assert parse_selector_args("'arg1', 'arg2'") == (['arg1', 'arg2'], {}) assert parse_selector_args("key='value'") == ([], dict(key='value')) assert parse_selector_args("key=123") == ([], dict(key=123)) assert parse_selector_args("k1=13,k2='meh'") == ([], dict(k1=13, k2='meh')) assert parse_selector_args("key9='value'") == ([], dict(key9='value')) assert parse_selector_args("key_9='value'") == ([], dict(key_9='value')) assert parse_selector_args("'arg', key='value'") == (['arg'], dict(key='value')) assert parse_selector_args("22, key='value'") == ([22], dict(key='value'))
def helper(string): chars = CharIterator('({})'.format(string)) return parse_selector_args(chars)