from crispy_layout_mixin import read_layout_from_yaml


def test_read_layout_from_yaml(tmpdir):

    contents = '''
ModelName:
  Cool Legend:
  - name:9  place  tiny
  - field  nature:2
  - kind:1  date  unit:5 status
  More data:
  - equalA  equalB  equalC
  - highlander '''
    file = tmpdir.join('zzz.yaml')
    file.write(contents)

    expected = [
        ['Cool Legend',
         [('name', 9),  ('place', 2), ('tiny', 1)],
         [('field', 10), ('nature', 2)],
         [('kind', 1), ('date', 3), ('unit', 5), ('status', 3)],
         ],
        ['More data',
         [('equalA', 4), ('equalB', 4), ('equalC', 4)],
         [('highlander', 12)],
         ],
    ]
    assert read_layout_from_yaml(file.strpath, 'ModelName') == expected