def test_monad_reference_prev_with_monad(): m = _monad_manager() m.prev_statement_is_monad() m.set_monad_ref('<monad-ref>') assert m.render('e1', 'e1.jets(<monad-ref>[1])') == 'e1[0].jets(e1[1])'
def test_monad_reference_prev_of_monad_with_monad(): m = _monad_manager() m.prev_statement_is_monad() m.set_monad_ref('<monad-ref>') assert m.render('(e1,e2)', '<monad-ref>[1].jets()') == 'e2.jets()'
def test_monad_prev_statement_with_monad(): m = _monad_manager() m.add_monad('e3', 'e3[1].eles()') m.prev_statement_is_monad() assert m.render('e1', 'e1.jets()') == '(e1[0].jets(), e1[1].eles())'
def test_monad_render_with_monad(): m = _monad_manager() m.prev_statement_is_monad() assert m.render('(e1, e2)', '(e1, e2).jets()') == 'e1.jets()'
def test_monad_prev_statement(): m = _monad_manager() m.prev_statement_is_monad() assert m.render('e1', 'e1.jets()') == 'e1[0].jets()'
def test_monad_follow(): m = _monad_manager() index = m.carry_monad_forward(1) assert index == 1 assert m.render('e19', 'e19.jets()') == '(e19[0].jets(), e19[1])'
def test_monad_add_same(): m = _monad_manager() m.add_monad('e3', 'e3.eles()') j = m.add_monad('e4', 'e4.eles()') assert j == 1 assert m.render('e1', 'e1.jets()') == '(e1.jets(), e1.eles())'
def test_monad_one(): m = _monad_manager() i = m.add_monad('e3', 'e3.eles()') assert i == 1 assert m.render('e1', 'e1.jets()') == '(e1.jets(), e1.eles())'
def test_monad_empty(): m = _monad_manager() assert m.render('e1', 'e1.jets()') == 'e1.jets()'