def get_value_map_for_update(self): # Empty ticket return empty maps. ticket = TicketWrapper(ticket_id=123) value_map1 = ticket.get_value_map_for_update() self.assert_equal(len(value_map1), 0) # Otherwise the map should contain all not None value. ticket.summary = 'Test TicketWrapper' ticket.priority = PRIORITY_ATTRIBUTE_VALUES.LOW value_map2 = ticket.get_value_map_for_update() self.assert_equal(len(value_map2), 2) self.assert_equal(value_map2[SummaryAttribute.NAME], 'Test TicketWrapper') self.assert_equal(value_map2[PriorityAttribute.NAME], PRIORITY_ATTRIBUTE_VALUES.LOW)
def test_attribute_validity(self): ticket = TicketWrapper(**self.init_data) # None for non-optional value ticket.check_attribute_validity(SummaryAttribute.NAME) ticket.summary = None self.assert_raises(ValueError, ticket.check_attribute_validity, SummaryAttribute.NAME) ticket.check_attribute_validity(SummaryAttribute.NAME, 'ticket title') # Invalid option ticket.check_attribute_validity(PriorityAttribute.NAME) ticket.priority = TestAlternativePriorityOptions.UNREGISTERED self.assert_raises(ValueError, ticket.check_attribute_validity, PriorityAttribute.NAME) ticket.check_attribute_validity(PriorityAttribute.NAME, PRIORITY_ATTRIBUTE_VALUES.LOW) # test lookup usage alt_lookup = ATTRIBUTE_OPTIONS alt_lookup[PriorityAttribute.NAME] = TestAlternativePriorityOptions alt_ticket = TicketWrapper(priority=\ TestAlternativePriorityOptions.UNREGISTERED, attribute_options_lookup=alt_lookup) alt_ticket.check_attribute_validity(PriorityAttribute.NAME)