def test_assign_6(): template = ''' {%- set weights = [ ('A', {'data': 0.3}), ('B', {'data': 0.9}, 1, 2), ] %} ''' ast = parse(template).find(nodes.Assign) with pytest.raises(MergeException): visit_assign(ast)
def test_assign_2(): template = '''{% set y = "-" ~ y %}''' ast = parse(template).find(nodes.Assign) struct = visit_assign(ast) expected_struct = Dictionary({'y': String(label='y', linenos=[1])}) assert struct == expected_struct
def test_assign_2(): template = '''{% set y = "-" ~ y %}''' ast = parse(template).find(nodes.Assign) struct = visit_assign(ast) expected_struct = Dictionary({ 'y': String(label='y', linenos=[1]) }) assert struct == expected_struct
def test_assign_1(): template = '''{% set a = b %}''' ast = parse(template).find(nodes.Assign) struct = visit_assign(ast) expected_struct = Dictionary({ 'a': Unknown(label='a', linenos=[1], constant=True), 'b': Unknown(label='b', linenos=[1]), }) assert struct == expected_struct
def test_assign_4(): template = '''{% set a, b = 1, {'gsom': 'gsom', z: z} %}''' ast = parse(template).find(nodes.Assign) struct = visit_assign(ast) expected_struct = Dictionary({ 'a': Number(label='a', linenos=[1], constant=True), 'b': Dictionary(data={ 'gsom': String(linenos=[1], constant=True), }, label='b', linenos=[1], constant=True), 'z': Scalar(label='z', linenos=[1]), }) assert struct == expected_struct
def test_assign_4(): template = '''{% set a, b = 1, {'gsom': 'gsom', z: z} %}''' ast = parse(template).find(nodes.Assign) struct = visit_assign(ast) expected_struct = Dictionary({ 'a': Number(label='a', linenos=[1], constant=True, value=1), 'b': Dictionary(data={ 'gsom': String(linenos=[1], constant=True, value='gsom'), }, label='b', linenos=[1], constant=True), 'z': Scalar(label='z', linenos=[1]), }) assert struct == expected_struct
def test_assign_5(): template = ''' {%- set weights = [ ('A', {'data': 0.3}), ('B', {'data': 0.9}), ] %} ''' ast = parse(template).find(nodes.Assign) struct = visit_assign(ast) expected_struct = Dictionary({ 'weights': List(Tuple([ String(linenos=[3, 4], constant=True), Dictionary({ 'data': Number(linenos=[3, 4], constant=True) }, linenos=[3, 4], constant=True), ], linenos=[3, 4], constant=True), label='weights', linenos=[2], constant=True) }) assert struct == expected_struct
def test_assign_3(): template = '''{% set a, b = {'a': 1, 'b': 2} %}''' ast = parse(template).find(nodes.Assign) with pytest.raises(UnexpectedExpression): visit_assign(ast)