def test_expand(): assert_eq_list(expand_optionals('r: g1 g2'), ('r : g1 g2', )) assert_eq_list(expand_optionals('r: g1 g2?'), ('r : g1', 'r : g1 g2')) assert_eq_list(expand_optionals('r: {g1:name}? g2'), ('r : g2', 'r : g1 g2')) assert_eq_list(expand_optionals('r: g1? g2?'), ('r :', 'r : g1', 'r : g1 g2', 'r : g2')) assert_expand('r: s? r s?', ('r : r', 'r : s r', 'r : r s', 'r : s r s'))
def assert_expand(rule, result): assert_eq_list(expand_optionals(rule), result) assert_eq_list(expand_optionals(rule, format=False), parse('\n'.join(result)))
def assert_expand(rule, result): assert_eq_list(expand_optionals(rule), result) assert_eq_list(expand_optionals(rule, format = False), parse('\n'.join(result)))