def test_process_attribute_with_unknown_source(self): group_attr = AttrFactory.attribute_group(name="bar") target = ClassFactory.create() target.attrs.append(group_attr) with self.assertRaises(AnalyzerValueError) as cm: self.processor.process_attribute(target, group_attr) self.assertEqual("Group attribute not found: `bar`", str(cm.exception))
def test_process_attribute_with_circular_reference(self): group_attr = AttrFactory.attribute_group(name="bar") target = ClassFactory.create(qname="bar", tag=Tag.GROUP) target.attrs.append(group_attr) target.status = Status.PROCESSING self.processor.container.add(target) self.processor.process_attribute(target, group_attr) self.assertFalse(group_attr in target.attrs)
def test_process_attribute_with_group(self, mock_copy_group_attributes): complex_bar = ClassFactory.create(qname="bar", tag=Tag.COMPLEX_TYPE) group_bar = ClassFactory.create(qname="bar", tag=Tag.GROUP) group_attr = AttrFactory.attribute_group(name="bar") target = ClassFactory.create() target.attrs.append(group_attr) self.processor.container.add(complex_bar) self.processor.container.add(group_bar) self.processor.container.add(target) self.processor.process_attribute(target, group_attr) mock_copy_group_attributes.assert_called_once_with( group_bar, target, group_attr)
def test_property_is_group(self): self.assertTrue(AttrFactory.group().is_group) self.assertTrue(AttrFactory.attribute_group().is_group) self.assertFalse(AttrFactory.element().is_group)