Skip to content

Commit

Permalink
test contract items modification
Browse files Browse the repository at this point in the history
  • Loading branch information
vmaksymiv committed Nov 22, 2016
1 parent bac46b0 commit 329e56c
Showing 1 changed file with 40 additions and 0 deletions.
40 changes: 40 additions & 0 deletions openprocurement/tender/limited/tests/contract.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
import unittest
import time
from copy import deepcopy
from iso8601 import parse_date
from datetime import timedelta

Expand Down Expand Up @@ -231,6 +232,16 @@ def test_patch_tender_contract(self):
self.assertEqual(response.json['data']["items"][0]['unit']['value']['currency'], "USD")
self.assertEqual(response.json['data']["items"][0]['unit']['value']['valueAddedTaxIncluded'], False)

# try to add/delete contract item
item = deepcopy(response.json['data']["items"][0])
response = self.app.patch_json('/tenders/{}/contracts/{}?acc_token={}'.format(
self.tender_id, self.contract_id, self.tender_token),
{'data': {'items': [{}, item]}},
status=403)
self.assertEqual(response.status, '403 Forbidden')
self.assertEqual(response.json['errors'][0]["description"],
"Can't change items count")

response = self.app.patch_json('/tenders/{}/contracts/{}?acc_token={}'.format(
self.tender_id, self.contract_id, self.tender_token),
{"data": {"status": "active"}})
Expand Down Expand Up @@ -510,6 +521,35 @@ def test_patch_tender_contract(self):
self.assertEqual(response.json['data']["items"][0]['unit']['value']['amount'], 12)
self.assertEqual(response.json['data']["items"][0]['unit']['value']['currency'], "USD")
self.assertEqual(response.json['data']["items"][0]['unit']['value']['valueAddedTaxIncluded'], False)

# try to add contract item
item = deepcopy(response.json['data']["items"][0])
response = self.app.patch_json('/tenders/{}/contracts/{}?acc_token={}'.format(
self.tender_id, self.contract_id, self.tender_token),
{'data': {'items': [{}, item]}},
status=403)
self.assertEqual(response.status, '403 Forbidden')
self.assertEqual(response.json['errors'][0]["description"],
"Can't change items count")

# add second item to contract. the quickest way
tender = self.db.get(self.tender_id)
item = tender['contracts'][0]['items'][0]
tender['contracts'][0]['items'] = [item, item]
self.db.save(tender)

response = self.app.get('/tenders/{}/contracts/{}'.format(self.tender_id, self.contract_id))
self.assertEqual(len(response.json['data']["items"]), 2)

# try to delete contract item
response = self.app.patch_json('/tenders/{}/contracts/{}?acc_token={}'.format(
self.tender_id, self.contract_id, self.tender_token),
{'data': {'items': [{}]}},
status=403)
self.assertEqual(response.status, '403 Forbidden')
self.assertEqual(response.json['errors'][0]["description"],
"Can't change items count")

response = self.app.patch_json('/tenders/{}/contracts/{}?acc_token={}'.format(
self.tender_id, self.contract_id, self.tender_token), {"data": {"status": "active"}})
self.assertEqual(response.status, '200 OK')
Expand Down

0 comments on commit 329e56c

Please sign in to comment.