def test_some2(self): X = Var('X') eq_(eval(parse_text(and_p(some(char(X)), char('4')), '224')), '4') eq_(eval(parse_text(and_p(some(char(X)), cut, char('4')), '224')), '4') assert_raises( NoSolution, eval, parse_text(and_p(some(char(X)), char('3'), char('5')), '2234'))
def test_some(self): X, Y = Var('X'), Var('Y') eq_(eval(begin(parse_text(some(char(X), X, Y), '222'), Y)), ['2', '2', '2']) eq_(eval(begin(parse_text(some(char(X), X, Y), '234'), Y)), ['2']) assert_raises(NoSolution, eval, begin(parse_text(some(char(X), X, Y), ''), Y))
def test_dumy_some(self): _, Y = DummyVar('_'), Var('Y') eq_(eval(begin(parse_text(some(char(_), _, Y), '222'), Y)), ['2', '2', '2']) eq_(eval(begin(parse_text(some(char(_), _, Y), '234'), Y)), ['2', '3', '4']) assert_raises(NoSolution, eval, begin(parse_text(some(char(_), _, Y), ''), Y))
def testIndentUndent(self): _, n, s, line = DummyVar('_'), Var('n'), Var('s'), Var('line') space = char(' ') ruleList = [(s,function( ((n,), some(line(n)),s(add(n,1))), ((n,), some(line(n))))), (line,function( ((n,), times(space, n),some(letter(_)),any(space),char('\n')))) ] eq_(eval(letr(ruleList, parse_text(s(0), 'a\n b\n c\n'))), True) eq_(eval(letr(ruleList, parse_text(s(0), 'asd\n bdf\n cdfh\n'))), True)
def testIndentUndent(self): _, n, s, line = DummyVar('_'), Var('n'), Var('s'), Var('line') space = char(' ') ruleList = [(s, function(((n, ), some(line(n)), s(add(n, 1))), ((n, ), some(line(n))))), (line, function(((n, ), times(space, n), some(letter(_)), any(space), char('\n'))))] eq_(eval(letr(ruleList, parse_text(s(0), 'a\n b\n c\n'))), True) eq_(eval(letr(ruleList, parse_text(s(0), 'asd\n bdf\n cdfh\n'))), True)
def test_some5(self): _ = DummyVar('_') y = LogicVar('y') eq_( eval( begin(set_text('abc'), some(char(_), _, y), char(_), eoi, getvalue(y))), ['a', 'b'])
def test_any_some(self): X, Y = Var('X'), Var('Y') eq_( eval( begin( parse_text( char(X) + any(~char('b') + some(char(X))) + eoi, 'abaaaa'), X)), 'a')
def test_some3(self): eq_(eval(parse_text(some(or_p(char('1'),char('2'))), '2')), True)
def test_some2(self): X = Var('X') eq_(eval(parse_text(and_p(some( char(X)),char('4')), '224')), '4') eq_(eval(parse_text(and_p(some(char(X)), cut, char('4')), '224')), '4') assert_raises(NoSolution, eval, parse_text(and_p(some(char(X)), char('3'), char('5')), '2234'))
def test_some(self): X, Y = Var('X'), Var('Y') eq_(eval(begin(parse_text(some(char(X), X, Y), '222'), Y)), ['2','2','2']) eq_(eval(begin(parse_text(some(char(X), X, Y), '234'), Y)), ['2']) assert_raises(NoSolution, eval, begin(parse_text(some(char(X), X, Y), ''), Y))
def test_any_some(self): X, Y = Var('X'), Var('Y') eq_(eval(begin(parse_text(char(X)+any(~char('b')+some(char(X)))+eoi, 'abaaaa'), X)), 'a')
def test_some5(self): _ = DummyVar('_') y = LogicVar('y') eq_(eval(begin(set_text('abc'), some(char(_), _, y), char(_), eoi, getvalue(y))), ['a', 'b'])
def test_some3(self): assert_raises(NoSolution, eval, begin(set_text(''), some(char('a'))))
def test_some3(self): eq_(eval(parse_text(some(or_p(char('1'), char('2'))), '2')), True)
def test_dumy_some(self): _, Y = DummyVar('_'), Var('Y') eq_(eval(begin(parse_text(some(char(_), _, Y), '222'), Y)), ['2','2','2']) eq_(eval(begin(parse_text(some(char(_), _, Y), '234'), Y)),['2', '3', '4']) assert_raises(NoSolution, eval, begin(parse_text(some(char(_), _, Y), ''), Y))
def test_some2(self): eq_(eval(begin(set_text('aaa'), some(char('a')), char('a'), eoi)), True)