Skip to content

Commit

Permalink
Merge pull request #10 from gorserg/increase_bids_number
Browse files Browse the repository at this point in the history
Increase minimal number of bits
  • Loading branch information
kroman0 committed Jul 7, 2016
2 parents cd3ea06 + b7eaec1 commit 8bdf0ad
Show file tree
Hide file tree
Showing 3 changed files with 155 additions and 43 deletions.
46 changes: 35 additions & 11 deletions openprocurement/tender/competitivedialogue/tests/bid.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
test_features_tender_data as test_features_tender_eu_data
)

test_bids.append(test_bids[0].copy()) # Minimal number of bits is 3


class CompetitiveDialogEUBidResourceTest(BaseCompetitiveDialogEUContentWebTest):

Expand Down Expand Up @@ -313,6 +315,11 @@ def test_get_tender_bidder(self):
bid_token = response.json['access']['token']

# Create another bidder
response = self.app.post_json('/tenders/{}/bids'.format(self.tender_id),
{'data': {'selfEligible': True, 'selfQualified': True,
'tenderers': test_bids[0]['tenderers'], "value": {"amount": 499}}})

# Create another 2 bidder
response = self.app.post_json('/tenders/{}/bids'.format(self.tender_id),
{'data': {'selfEligible': True, 'selfQualified': True,
'tenderers': test_bids[0]['tenderers'], "value": {"amount": 499}}})
Expand All @@ -339,7 +346,7 @@ def test_get_tender_bidder(self):
self.app.authorization = ('Basic', ('anon', ''))
response = self.app.get('/tenders/{}/bids'.format(self.tender_id))
self.assertEqual(response.status, '200 OK')
self.assertEqual(len(response.json['data']), 2)
self.assertEqual(len(response.json['data']), 3)
for b in response.json['data']:
self.assertEqual(set(b.keys()), set(['id', 'status', 'tenderers']))

Expand All @@ -365,7 +372,7 @@ def test_get_tender_bidder(self):
self.app.authorization = ('Basic', ('anon', ''))
response = self.app.get('/tenders/{}/bids'.format(self.tender_id))
self.assertEqual(response.status, '200 OK')
self.assertEqual(len(response.json['data']), 2)
self.assertEqual(len(response.json['data']), 3)
for b in response.json['data']:
self.assertEqual(set(b.keys()), set(['id', 'status', 'tenderers']))

Expand Down Expand Up @@ -441,6 +448,10 @@ def test_deleted_bid_do_not_locks_tender_in_state(self):
response = self.app.post_json('/tenders/{}/bids'.format(self.tender_id),
{'data': {'selfEligible': True, 'selfQualified': True,
'tenderers': test_bids[1]['tenderers'], "value": {"amount": 101}}})
# Create new bid
response = self.app.post_json('/tenders/{}/bids'.format(self.tender_id),
{'data': {'selfEligible': True, 'selfQualified': True,
'tenderers': test_bids[1]['tenderers'], "value": {"amount": 101}}})

# switch to active.pre-qualification
self.set_status('active.pre-qualification', {"id": self.tender_id, 'status': 'active.tendering'})
Expand Down Expand Up @@ -507,6 +518,10 @@ def test_get_tender_tenderers(self):
response = self.app.post_json('/tenders/{}/bids'.format(self.tender_id),
{'data': {'selfEligible': True, 'selfQualified': True,
'tenderers': test_bids[1]['tenderers'], "value": {"amount": 101}}})
# Create another bid
response = self.app.post_json('/tenders/{}/bids'.format(self.tender_id),
{'data': {'selfEligible': True, 'selfQualified': True,
'tenderers': test_bids[2]['tenderers'], "value": {"amount": 111}}})

# switch to active.pre-qualification
self.set_status('active.pre-qualification', {"id": self.tender_id, 'status': 'active.tendering'})
Expand Down Expand Up @@ -607,9 +622,13 @@ def test_bids_invalidation_on_tender_change(self):
self.assertEqual(response.status, '201 Created')
valid_bid_id = response.json['data']['id']

response = self.app.post_json('/tenders/{}/bids'.format(self.tender_id),
{'data': {'selfEligible': True, 'selfQualified': True,
'tenderers': test_bids[1]['tenderers'], "value": {"amount": 101}}})
self.app.post_json('/tenders/{}/bids'.format(self.tender_id),
{'data': {'selfEligible': True, 'selfQualified': True,
'tenderers': test_bids[1]['tenderers'], "value": {"amount": 101}}})

self.app.post_json('/tenders/{}/bids'.format(self.tender_id),
{'data': {'selfEligible': True, 'selfQualified': True,
'tenderers': test_bids[2]['tenderers'], "value": {"amount": 101}}})

# switch to active.pre-qualification
self.set_status('active.pre-qualification', {"id": self.tender_id, 'status': 'active.tendering'})
Expand Down Expand Up @@ -649,7 +668,7 @@ def test_bids_invalidation_on_tender_change(self):
self.app.authorization = ('Basic', ('anon', ''))
response = self.app.get('/tenders/{}/bids'.format(self.tender_id))
self.assertEqual(response.status, '200 OK')
self.assertEqual(len(response.json['data']), 4)
self.assertEqual(len(response.json['data']), 7)
for b in response.json['data']:
if b['status'] == u'invalid':
self.assertEqual(set(b.keys()), set(['id', 'status']))
Expand All @@ -670,7 +689,7 @@ def test_bids_invalidation_on_tender_change(self):
self.set_status('complete')
response = self.app.get('/tenders/{}'.format(self.tender_id))
self.assertEqual(response.status, '200 OK')
self.assertEqual(len(response.json['data']['bids']), 4)
self.assertEqual(len(response.json['data']['bids']), 7)
for bid in response.json['data']['bids']:
if bid['id'] in bids_access: # previously invalidated bids
self.assertEqual(bid['status'], 'invalid')
Expand Down Expand Up @@ -844,6 +863,11 @@ def setUp(self):
self.bid2_id = bid2['id']
self.bid2_token = response.json['access']['token']

response = self.app.post_json('/tenders/{}/bids'.format(self.tender_id), {'data': test_bids[1]})
bid3 = response.json['data']
self.bid3_id = bid3['id']
self.bid3_token = response.json['access']['token']

def test_get_tender_bidder_document(self):

doc_id_by_type = {}
Expand Down Expand Up @@ -943,7 +967,7 @@ def all_public_documents_are_accessible_for_others():
doc_resource = 'documents'
response = self.app.get('/tenders/{}/bids/{}/{}'.format(self.tender_id, self.bid_id, doc_resource))
self.assertEqual(response.status, '200 OK')
self.assertEqual(len(response.json['data']), 2)
self.assertEqual(len(response.json['data']), 3)
self.assertIn(doc_id_by_type[doc_resource]['key'], response.json['data'][0]['url'])
self.assertNotIn('url', response.json['data'][1])
response = self.app.get('/tenders/{}/bids/{}/{}/{}'.format(self.tender_id, self.bid_id, doc_resource,
Expand Down Expand Up @@ -1003,7 +1027,7 @@ def all_public_documents_are_accessible_for_others():
self.app.authorization = ('Basic', ('anon', ''))
response = self.app.get('/tenders/{}/bids'.format(self.tender_id))
self.assertEqual(response.status, '200 OK')
self.assertEqual(len(response.json['data']), 2)
self.assertEqual(len(response.json['data']), 3)
self.assertEqual(set(response.json['data'][0].keys()), set(['id', 'status', 'documents', 'tenderers']))
self.assertEqual(set(response.json['data'][1].keys()), set(['id', 'status', 'tenderers']))
response = self.app.get('/tenders/{}/bids/{}'.format(self.tender_id, self.bid_id))
Expand Down Expand Up @@ -1040,7 +1064,7 @@ def all_public_documents_are_accessible_for_others():
self.app.authorization = ('Basic', ('anon', ''))
response = self.app.get('/tenders/{}/bids'.format(self.tender_id))
self.assertEqual(response.status, '200 OK')
self.assertEqual(len(response.json['data']), 2)
self.assertEqual(len(response.json['data']), 3)
self.assertEqual(set(response.json['data'][0].keys()), set(['id', 'status', 'documents', 'tenderers']))
self.assertEqual(set(response.json['data'][1].keys()), set(['id', 'status', 'tenderers']))
response = self.app.get('/tenders/{}/bids/{}'.format(self.tender_id, self.bid_id))
Expand Down Expand Up @@ -1823,4 +1847,4 @@ def suite():


if __name__ == '__main__':
unittest.main(defaultTest='suite')
unittest.main(defaultTest='suite')

0 comments on commit 8bdf0ad

Please sign in to comment.