def test_member_data_element(self): data_el = SimpleMemberDataElement.create() # Test nesteds. self.assert_equal(data_el.nesteds.keys(), []) parent_data_el = SimpleMemberDataElement.create() rc_nested_attr = MyEntityMember.get_attributes()['parent'] mp_nested_attr = MappedAttribute(rc_nested_attr) data_el.set_nested(mp_nested_attr, parent_data_el) self.assert_true(data_el.get_nested(mp_nested_attr) is parent_data_el) self.assert_equal(data_el.nesteds.keys(), ['parent']) # Test terminals. self.assert_equal(data_el.terminals.keys(), []) utc = timezone('UTC') ldt = datetime.datetime(2012, 8, 29, 16, 20, 0, tzinfo=utc) term_attr_data = OrderedDict(text='foo', number=0, date_time=ldt) for term_attr_name, term_attr_value in term_attr_data.items(): rc_attr = MyEntityMember.get_attributes()[term_attr_name] mp_attr = MappedAttribute(rc_attr) # Check setting to None value. data_el.set_terminal(mp_attr, None) self.assert_true(data_el.get_terminal(mp_attr) is None) data_el.set_terminal_converted(mp_attr, None) self.assert_true(data_el.get_terminal(mp_attr) is None) # Check setting to value. data_el.set_terminal(mp_attr, term_attr_value) self.assert_equal(data_el.get_terminal(mp_attr), term_attr_value) rpr_val = data_el.get_terminal_converted(mp_attr) data_el.set_terminal_converted(mp_attr, rpr_val) self.assert_equal(data_el.get_terminal(mp_attr), term_attr_value) self.assert_equal(data_el.terminals.keys(), term_attr_data.keys()) # Printing. prt_str = str(data_el) self.assert_true(prt_str.startswith(data_el.__class__.__name__)) self.assert_true(prt_str.endswith(')'))
def test_collection_data_element(self): coll_data_el = SimpleCollectionDataElement.create() mb_data_el1 = SimpleMemberDataElement.create() mb_data_el2 = SimpleMemberDataElement.create() coll_data_el.add_member(mb_data_el1) coll_data_el.add_member(mb_data_el2) self.assert_equal(len(coll_data_el), 2) self.assert_equal(coll_data_el.members, [mb_data_el1, mb_data_el2]) # Printing. prt_str = str(coll_data_el) self.assert_true(prt_str.startswith(coll_data_el.__class__.__name__)) self.assert_true(prt_str.endswith(']'))
def test_collection_data_element(self): coll_data_el = SimpleCollectionDataElement.create() mb_data_el1 = SimpleMemberDataElement.create() mb_data_el2 = SimpleMemberDataElement.create() coll_data_el.add_member(mb_data_el1) coll_data_el.add_member(mb_data_el2) assert len(coll_data_el) == 2 assert coll_data_el.members == [mb_data_el1, mb_data_el2] # Printing. prt_str = str(coll_data_el) assert prt_str.startswith(coll_data_el.__class__.__name__) assert prt_str.endswith(']')
def test_printing_with_none_value(self): data_el = SimpleMemberDataElement.create() self.assert_equal(data_el.terminals.keys(), []) rc_attr = MyEntityMember.get_attributes()['text'] mp_attr = MappedAttribute(rc_attr) data_el.set_terminal(mp_attr, None) # Need one None attr value. prt_str = str(data_el) self.assert_true(prt_str.startswith(data_el.__class__.__name__)) self.assert_true(prt_str.endswith(')'))
def test_printing_with_none_value(self): data_el = SimpleMemberDataElement.create() assert list(data_el.terminals.keys()) == [] rc_attr = get_resource_class_attribute(MyEntityMember, 'text') mp_attr = MappedAttribute(rc_attr) data_el.set_terminal(mp_attr, None) # Need one None attr value. prt_str = str(data_el) assert prt_str.startswith(data_el.__class__.__name__) assert prt_str.endswith(')')
def test_member_data_element(self): data_el = SimpleMemberDataElement.create() # Test nesteds. assert list(data_el.nesteds.keys()) == [] parent_data_el = SimpleMemberDataElement.create() rc_nested_attr = \ get_resource_class_attribute(MyEntityMember, 'parent') mp_nested_attr = MappedAttribute(rc_nested_attr) data_el.set_nested(mp_nested_attr, parent_data_el) assert data_el.get_nested(mp_nested_attr) is parent_data_el assert list(data_el.nesteds.keys()) == ['parent'] # Test terminals. assert list(data_el.terminals.keys()) == [] utc = timezone('UTC') ldt = datetime.datetime(2012, 8, 29, 16, 20, 0, tzinfo=utc) term_attr_data = OrderedDict(text='foo', number=0, date_time=ldt) for term_attr_name, term_attr_value in term_attr_data.items(): rc_attr = get_resource_class_attribute(MyEntityMember, term_attr_name) mp_attr = MappedAttribute(rc_attr) # Check setting to None value. data_el.set_terminal(mp_attr, None) assert data_el.get_terminal(mp_attr) is None data_el.set_terminal_converted(mp_attr, None) assert data_el.get_terminal(mp_attr) is None # Check setting to value. data_el.set_terminal(mp_attr, term_attr_value) assert data_el.get_terminal(mp_attr) == term_attr_value rpr_val = data_el.get_terminal_converted(mp_attr) data_el.set_terminal_converted(mp_attr, rpr_val) assert data_el.get_terminal(mp_attr) == term_attr_value assert list(data_el.terminals.keys()) == list(term_attr_data.keys()) # Printing. prt_str = str(data_el) assert prt_str.startswith(data_el.__class__.__name__) assert prt_str.endswith(')') # Attribute iteration. for attr_name, attr_value in iteritems_(term_attr_data): assert data_el.get_attribute(attr_name) == attr_value for de_attr_name, de_attr_value in data_el.iterator(): if de_attr_name in term_attr_data: assert de_attr_value == term_attr_data[de_attr_name]
def test_member_data_element(self): data_el = SimpleMemberDataElement.create() # Test nesteds. self.assert_equal(list(data_el.nesteds.keys()), []) parent_data_el = SimpleMemberDataElement.create() rc_nested_attr = \ get_resource_class_attribute(MyEntityMember, 'parent') mp_nested_attr = MappedAttribute(rc_nested_attr) data_el.set_nested(mp_nested_attr, parent_data_el) self.assert_true(data_el.get_nested(mp_nested_attr) is parent_data_el) self.assert_equal(list(data_el.nesteds.keys()), ['parent']) # Test terminals. self.assert_equal(list(data_el.terminals.keys()), []) utc = timezone('UTC') ldt = datetime.datetime(2012, 8, 29, 16, 20, 0, tzinfo=utc) term_attr_data = OrderedDict(text='foo', number=0, date_time=ldt) for term_attr_name, term_attr_value in term_attr_data.items(): rc_attr = get_resource_class_attribute(MyEntityMember, term_attr_name) mp_attr = MappedAttribute(rc_attr) # Check setting to None value. data_el.set_terminal(mp_attr, None) self.assert_true(data_el.get_terminal(mp_attr) is None) data_el.set_terminal_converted(mp_attr, None) self.assert_true(data_el.get_terminal(mp_attr) is None) # Check setting to value. data_el.set_terminal(mp_attr, term_attr_value) self.assert_equal(data_el.get_terminal(mp_attr), term_attr_value) rpr_val = data_el.get_terminal_converted(mp_attr) data_el.set_terminal_converted(mp_attr, rpr_val) self.assert_equal(data_el.get_terminal(mp_attr), term_attr_value) self.assert_equal(list(data_el.terminals.keys()), list(term_attr_data.keys())) # Printing. prt_str = str(data_el) self.assert_true(prt_str.startswith(data_el.__class__.__name__)) self.assert_true(prt_str.endswith(')'))