def test_label_with_string_model(self): with self.application(): m = model.Model('<tag>') c = basic.Label('a', m) self.assert_is(c.model, m) elem = c.render(markup.Element(None)) self.assert_equal(elem.attrib, {}) self.assert_equal(elem.children, ['<tag>'])
def test_label_with_object_model(self): with self.application(): m = model.Model([]) c = basic.Label('a', m) self.assert_is(c.model, m) elem = c.render(markup.Element(None)) self.assert_equal(elem.attrib, {}) self.assert_equal(elem.children, ['[]'])
def test_list_view_error(self): root = markup.Element(self.of('root'), attrib={markup.AYAME_ID: 'b'}) label = markup.Element(self.of('label'), attrib={markup.AYAME_ID: 'c'}) root.append(label) mc = ayame.MarkupContainer('a') m = model.Model([str(i) for i in five.range(3)]) mc.add(basic.ListView('b', m, None)) with self.assert_raises_regex(ayame.ComponentError, r"\bcomponent .* 'c' .* not found\b"): mc.render(root)
def test_list_view_empty_model(self): def populate_item(li): li.add(basic.Label('c', li.model.object)) root = markup.Element(self.of('root'), attrib={markup.AYAME_ID: 'b'}) label = markup.Element(self.of('label'), attrib={markup.AYAME_ID: 'c'}) root.append(label) mc = ayame.MarkupContainer('a') m = model.Model(None) mc.add(basic.ListView('b', m, populate_item)) root = mc.render(root) self.assert_equal(root.qname, self.of('root')) self.assert_equal(root.attrib, {}) self.assert_equal(root.children, [])
def test_list_view(self): def populate_item(li): li.add(basic.Label('c', li.model.object)) root = markup.Element(self.of('root'), attrib={markup.AYAME_ID: 'b'}) label = markup.Element(self.of('label'), attrib={markup.AYAME_ID: 'c'}) root.append(label) mc = ayame.MarkupContainer('a') m = model.Model([str(i) for i in five.range(3)]) mc.add(basic.ListView('b', m, populate_item)) root = mc.render(root) self.assert_equal(root.qname, self.of('root')) self.assert_equal(root.attrib, {}) self.assert_equal(len(root), 3) label = root[0] self.assert_equal(label.qname, self.of('label')) self.assert_equal(label.attrib, {}) self.assert_equal(label.children, ['0']) label = root[1] self.assert_equal(label.qname, self.of('label')) self.assert_equal(label.attrib, {}) self.assert_equal(label.children, ['1']) label = root[2] self.assert_equal(label.qname, self.of('label')) self.assert_equal(label.attrib, {}) self.assert_equal(label.children, ['2']) self.assert_equal(len(mc.children), 1) lv = mc.children[0] self.assert_equal(len(lv.children), 3) self.assert_equal(lv.children[0].index, 0) self.assert_equal(lv.children[1].index, 1) self.assert_equal(lv.children[2].index, 2) self.assert_is_instance(lv.children[0].model, basic._ListItemModel) self.assert_is_instance(lv.children[1].model, basic._ListItemModel) self.assert_is_instance(lv.children[2].model, basic._ListItemModel) lv.children[0].model.object = 10 lv.children[1].model.object = 11 lv.children[2].model.object = 12 self.assert_equal(lv.children[0].model.object, 10) self.assert_equal(lv.children[1].model.object, 11) self.assert_equal(lv.children[2].model.object, 12)
def test_nested_model(self): m = model.Model(model.Model(None)) self.assert_is_none(m.object) m.object = model.Model('') self.assert_equal(m.object, '')
def test_model(self): m = model.Model(None) self.assert_is_none(m.object) m.object = '' self.assert_equal(m.object, '')