def setUp(self): self.tender_data = { "id": "ae50ea25bb1349898600ab380ee74e57", "dateModified": "2016-04-18T11:26:10.320970+03:00", "status": "draft", "tenderID": "UA-2016-04-18-000003", } self.lots = [ Lot( { "id": "11111111111111111111111111111111", "title": "Earth", "value": {"amount": 500000}, "minimalStep": {"amount": 1000}, } ), Lot( { "id": "22222222222222222222222222222222", "title": "Mars", "value": {"amount": 600000}, "minimalStep": {"amount": 2000}, } ), ] self.items = [Item({"description": "Some item", "relatedLot": "11111111111111111111111111111111"})]
def setUp(self): self.tender_data = { 'id': 'ae50ea25bb1349898600ab380ee74e57', 'dateModified': '2016-04-18T11:26:10.320970+03:00', 'status': 'draft', 'tenderID': 'UA-2016-04-18-000003' } self.lots = [ Lot({ 'id': '11111111111111111111111111111111', 'title': 'Earth', 'value': { 'amount': 500000 }, 'minimalStep': { 'amount': 1000 } }), Lot({ 'id': '22222222222222222222222222222222', 'title': 'Mars', 'value': { 'amount': 600000 }, 'minimalStep': { 'amount': 2000 } }) ] self.items = [ Item({ 'description': 'Some item', 'relatedLot': '11111111111111111111111111111111' }) ]
class TestItemValidation(unittest.TestCase): model = Item() classification = MagicMock(spec=AdditionalClassification) classification.scheme.return_value = 'fake_code' date_mock = MagicMock() tender = MagicMock(spec=Tender) data = {'__parent__': tender, 'classification': {'id': '33651680-8'}} classifications = [classification] def test_validate_item_classification(self): self.tender.get.return_value = [] if get_now() > GROUP_336_FROM: # for 336 code group with self.assertRaises(ValidationError) as e: self.model.validate_additionalClassifications(self.data, []) self.assertEqual(e.exception.message, [u"This field is required."]) self.tender.get.return_value = [self.date_mock] if get_now() > GROUP_336_FROM: with self.assertRaises(ValidationError) as e: self.model.validate_additionalClassifications(self.data, []) self.assertEqual(e.exception.message, [u"This field is required."]) with self.assertRaises(ValidationError) as e: self.model.validate_additionalClassifications( self.data, self.classifications) self.assertEqual(e.exception.message, [ u"One of additional classifications should be one of [{0}].". format(', '.join(ADDITIONAL_CLASSIFICATIONS_SCHEMES)) ]) self.date_mock.date.return_value = datetime(2017, 3, 1, tzinfo=TZ) self.tender.get.return_value = False if get_now() > GROUP_336_FROM: with self.assertRaises(ValidationError) as e: self.model.validate_additionalClassifications( self.data, self.classifications) self.assertEqual( e.exception.message, [u"One of additional classifications should be INN."]) self.data['classification'] = {'id': '99999999-9'} with self.assertRaises(ValidationError) as e: self.model.validate_additionalClassifications( self.data, self.classifications) self.assertEqual(e.exception.message, [ u"One of additional classifications should be one of [{0}].". format(', '.join(ADDITIONAL_CLASSIFICATIONS_SCHEMES_2017)) ])