Skip to content

Commit

Permalink
Merge a563879808284502_disable_999999-9_additional_classification_req…
Browse files Browse the repository at this point in the history
…uired into master
  • Loading branch information
VDigitall committed Mar 19, 2018
2 parents b32602a + 4932aa7 commit 7946044
Showing 1 changed file with 39 additions and 8 deletions.
47 changes: 39 additions & 8 deletions openprocurement/tender/belowthreshold/tests/tender_blanks.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@
from openprocurement.api.utils import get_now
from openprocurement.api.constants import COORDINATES_REG_EXP, ROUTE_PREFIX, CPV_BLOCK_FROM, INN_CODES, ATC_CODES
from openprocurement.tender.core.constants import (
CANT_DELETE_PERIOD_START_DATE_FROM, CPV_ITEMS_CLASS_FROM, GROUP_336_FROM
CANT_DELETE_PERIOD_START_DATE_FROM, CPV_ITEMS_CLASS_FROM, GROUP_336_FROM,
NOT_REQUIRED_ADDITIONAL_CLASSIFICATION_FROM
)
from openprocurement.tender.belowthreshold.models import Tender
from openprocurement.tender.belowthreshold.tests.base import (
Expand Down Expand Up @@ -485,16 +486,21 @@ def create_tender_invalid(self):
if get_now() > CPV_ITEMS_CLASS_FROM:
cpv_code = self.initial_data["items"][0]['classification']['id']
self.initial_data["items"][0]['classification']['id'] = '99999999-9'
response = self.app.post_json(request_path, {'data': self.initial_data}, status=422)
status = 422 if get_now() < NOT_REQUIRED_ADDITIONAL_CLASSIFICATION_FROM else 201
response = self.app.post_json(request_path, {'data': self.initial_data}, status=status)
self.initial_data["items"][0]["additionalClassifications"] = data
if get_now() > CPV_ITEMS_CLASS_FROM:
self.initial_data["items"][0]['classification']['id'] = cpv_code
self.assertEqual(response.status, '422 Unprocessable Entity')
self.assertEqual(response.content_type, 'application/json')
self.assertEqual(response.json['status'], 'error')
self.assertEqual(response.json['errors'], [
{u'description': [{u'additionalClassifications': [u'This field is required.']}], u'location': u'body', u'name': u'items'}
])
if status == 201:
self.assertEqual(response.status, '201 Created')
self.assertEqual(response.content_type, 'application/json')
else:
self.assertEqual(response.status, '422 Unprocessable Entity')
self.assertEqual(response.content_type, 'application/json')
self.assertEqual(response.json['status'], 'error')
self.assertEqual(response.json['errors'], [
{u'description': [{u'additionalClassifications': [u'This field is required.']}], u'location': u'body', u'name': u'items'}
])

data = self.initial_data["items"][0]["additionalClassifications"][0]["scheme"]
self.initial_data["items"][0]["additionalClassifications"][0]["scheme"] = 'Не ДКПП'
Expand Down Expand Up @@ -794,6 +800,31 @@ def create_tender(self):
self.assertEqual(response.json['data']['items'][0]['classification']['id'], '33695000-8')
self.assertEqual(response.json['data']['items'][0]['classification']['scheme'], u'ДК021')

initial_data = deepcopy(self.initial_data)
initial_data['items'][0]['classification']['id'] = "99999999-9"
additional_classification =\
initial_data['items'][0].pop('additionalClassifications')
additional_classification[0]['scheme'] = "specialNorms"
if get_now() > NOT_REQUIRED_ADDITIONAL_CLASSIFICATION_FROM:
response = self.app.post_json('/tenders', {"data": initial_data})
self.assertEqual(response.status, '201 Created')
self.assertEqual(response.content_type, 'application/json')
tender = response.json['data']
self.assertEqual(tender['items'][0]['classification']['id'], '99999999-9')
self.assertNotIn('additionalClassifications', tender['items'][0])

initial_data['items'][0]['additionalClassifications'] =\
additional_classification
response = self.app.post_json('/tenders', {"data": initial_data})
self.assertEqual(response.status, '201 Created')
self.assertEqual(response.content_type, 'application/json')
tender = response.json['data']
self.assertEqual(tender['items'][0]['classification']['id'], '99999999-9')
self.assertEqual(
tender['items'][0]['additionalClassifications'],
additional_classification
)


def tender_funders(self):
tender_data = deepcopy(self.initial_data)
Expand Down

0 comments on commit 7946044

Please sign in to comment.