def test_get_value_map_for_ticket_creation(self): # Priority should be replaced by a default value. self.init_data[PriorityAttribute.NAME] = None ticket = TicketWrapper(**self.init_data) value_map = ticket.get_value_map_for_ticket_creation() self.assert_false(value_map.has_key(SummaryAttribute.NAME)) self.assert_false(value_map.has_key(DescriptionAttribute.NAME)) for attr_name in ATTRIBUTE_NAMES.keys(): if attr_name == SummaryAttribute.NAME or \ attr_name == DescriptionAttribute.NAME: continue if not value_map.has_key(attr_name): self.assert_is_none(getattr(ticket, attr_name)) continue ticket.check_attribute_validity(attr_name, value_map[attr_name]) if attr_name == PriorityAttribute.NAME: self.assert_equal(value_map[attr_name], PriorityAttribute.DEFAULT_VALUE) else: self.assert_equal(getattr(ticket, attr_name), self.init_data[attr_name])
def test_get_value_map_for_ticket_creation(self): # Priority should be replaced by a default value. self.init_data[PriorityAttribute.NAME] = None ticket = TicketWrapper(**self.init_data) value_map = ticket.get_value_map_for_ticket_creation() self.assert_false(value_map.has_key(SummaryAttribute.NAME)) self.assert_false(value_map.has_key(DescriptionAttribute.NAME)) for attr_name in ATTRIBUTE_NAMES.keys(): if attr_name == SummaryAttribute.NAME or \ attr_name == DescriptionAttribute.NAME: continue if not value_map.has_key(attr_name): self.assert_is_none(getattr(ticket, attr_name)) continue ticket.check_attribute_validity(attr_name, value_map[attr_name]) if attr_name == PriorityAttribute.NAME: self.assert_equal(value_map[attr_name], PriorityAttribute.DEFAULT_VALUE) else: self.assert_equal(getattr(ticket, attr_name), self.init_data[attr_name])
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)
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)