Skip to content

Commit

Permalink
added stopping/stopped docs, fixed roles
Browse files Browse the repository at this point in the history
  • Loading branch information
kroman0 committed Mar 29, 2016
1 parent 4385160 commit 64d3c03
Show file tree
Hide file tree
Showing 43 changed files with 1,025 additions and 370 deletions.
92 changes: 89 additions & 3 deletions docs.py
Original file line number Diff line number Diff line change
Expand Up @@ -714,6 +714,16 @@ def test_complaints(self):
}})
self.assertEqual(response.status, '200 OK')

response = self.app.post_json('/tenders/{}/complaints'.format(self.tender_id), complaint_data)
self.assertEqual(response.status, '201 Created')
complaint5_id = response.json['data']['id']
complaint5_token = response.json['access']['token']

response = self.app.post_json('/tenders/{}/complaints'.format(self.tender_id), complaint_data)
self.assertEqual(response.status, '201 Created')
complaint6_id = response.json['data']['id']
complaint6_token = response.json['access']['token']

self.app.authorization = ('Basic', ('reviewer', ''))
with open('docs/source/tutorial/complaint-reject.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/complaints/{}'.format(self.tender_id, complaint4_id), {"data": {
Expand All @@ -732,6 +742,16 @@ def test_complaints(self):
}})
self.assertEqual(response.status, '200 OK')

response = self.app.patch_json('/tenders/{}/complaints/{}'.format(self.tender_id, complaint5_id), {"data": {
"status": "accepted"
}})
self.assertEqual(response.status, '200 OK')

response = self.app.patch_json('/tenders/{}/complaints/{}'.format(self.tender_id, complaint6_id), {"data": {
"status": "accepted"
}})
self.assertEqual(response.status, '200 OK')

with open('docs/source/tutorial/complaint-resolution-upload.http', 'w') as self.app.file_obj:
response = self.app.post('/tenders/{}/complaints/{}/documents'.format(self.tender_id, complaint1_id),
upload_files=[('file', u'ComplaintResolution.pdf', 'content')])
Expand All @@ -749,6 +769,13 @@ def test_complaints(self):
}})
self.assertEqual(response.status, '200 OK')

with open('docs/source/tutorial/complaint-accepted-stopped.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/complaints/{}'.format(self.tender_id, complaint5_id), {"data": {
"decision": "Тендер скасовується замовником",
"status": "stopped"
}})
self.assertEqual(response.status, '200 OK')

self.app.authorization = ('Basic', ('broker', ''))
with open('docs/source/tutorial/complaint-resolved.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/complaints/{}?acc_token={}'.format(self.tender_id, complaint1_id, owner_token), {"data": {
Expand All @@ -757,11 +784,29 @@ def test_complaints(self):
}})
self.assertEqual(response.status, '200 OK')

with open('docs/source/tutorial/complaint-accepted-stopping.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/complaints/{}?acc_token={}'.format(self.tender_id, complaint6_id, complaint6_token), {"data": {
"cancellationReason": "Тендер скасовується замовником",
"status": "stopping"
}})
self.assertEqual(response.status, '200 OK')

self.app.authorization = ('Basic', ('reviewer', ''))
with open('docs/source/tutorial/complaint-stopping-stopped.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/complaints/{}'.format(self.tender_id, complaint6_id), {"data": {
"decision": "Тендер скасовується замовником",
"status": "stopped"
}})
self.assertEqual(response.status, '200 OK')

self.app.authorization = ('Basic', ('broker', ''))
response = self.app.post_json('/tenders/{}/complaints'.format(self.tender_id), complaint_data)
self.assertEqual(response.status, '201 Created')
complaint7_id = response.json['data']['id']
complaint7_token = response.json['access']['token']

with open('docs/source/tutorial/complaint-cancel.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/complaints/{}?acc_token={}'.format(self.tender_id, response.json['data']['id'], response.json['access']['token']), {"data": {
response = self.app.patch_json('/tenders/{}/complaints/{}?acc_token={}'.format(self.tender_id, complaint7_id, complaint7_token), {"data": {
"cancellationReason": "Умови виправлено",
"status": "cancelled"
}})
Expand Down Expand Up @@ -835,6 +880,16 @@ def test_award_complaints(self):
complaint3_token = response.json['access']['token']
complaint3_id = response.json['data']['id']

response = self.app.post_json('/tenders/{}/awards/{}/complaints?acc_token={}'.format(self.tender_id, award_id, bid_token), complaint_data)
self.assertEqual(response.status, '201 Created')
complaint4_token = response.json['access']['token']
complaint4_id = response.json['data']['id']

response = self.app.post_json('/tenders/{}/awards/{}/complaints?acc_token={}'.format(self.tender_id, award_id, bid_token), complaint_data)
self.assertEqual(response.status, '201 Created')
complaint5_token = response.json['access']['token']
complaint5_id = response.json['data']['id']

self.app.authorization = ('Basic', ('reviewer', ''))
with open('docs/source/tutorial/award-complaint-reject.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/awards/{}/complaints/{}'.format(self.tender_id, award_id, complaint2_id), {"data": {
Expand All @@ -853,6 +908,16 @@ def test_award_complaints(self):
}})
self.assertEqual(response.status, '200 OK')

response = self.app.patch_json('/tenders/{}/awards/{}/complaints/{}'.format(self.tender_id, award_id, complaint4_id), {"data": {
"status": "accepted"
}})
self.assertEqual(response.status, '200 OK')

response = self.app.patch_json('/tenders/{}/awards/{}/complaints/{}'.format(self.tender_id, award_id, complaint5_id), {"data": {
"status": "accepted"
}})
self.assertEqual(response.status, '200 OK')

with open('docs/source/tutorial/award-complaint-resolution-upload.http', 'w') as self.app.file_obj:
response = self.app.post('/tenders/{}/awards/{}/complaints/{}/documents'.format(self.tender_id, award_id, complaint1_id),
upload_files=[('file', u'ComplaintResolution.pdf', 'content')])
Expand All @@ -870,6 +935,13 @@ def test_award_complaints(self):
}})
self.assertEqual(response.status, '200 OK')

with open('docs/source/tutorial/award-complaint-accepted-stopped.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/awards/{}/complaints/{}'.format(self.tender_id, award_id, complaint5_id), {"data": {
"decision": "Тендер скасовується замовником",
"status": "stopped"
}})
self.assertEqual(response.status, '200 OK')

with open('docs/source/tutorial/award-complaints-list.http', 'w') as self.app.file_obj:
self.app.authorization = None
response = self.app.get('/tenders/{}/awards/{}/complaints'.format(self.tender_id, award_id))
Expand All @@ -896,11 +968,26 @@ def test_award_complaints(self):
}})
self.assertEqual(response.status, '200 OK')

with open('docs/source/tutorial/award-complaint-accepted-stopping.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/awards/{}/complaints/{}?acc_token={}'.format(self.tender_id, award_id, complaint4_id, complaint4_token), {"data": {
"cancellationReason": "Тендер скасовується замовником",
"status": "stopping"
}})
self.assertEqual(response.status, '200 OK')

self.app.authorization = ('Basic', ('reviewer', ''))
with open('docs/source/tutorial/award-complaint-stopping-stopped.http', 'w') as self.app.file_obj:
response = self.app.patch_json('/tenders/{}/awards/{}/complaints/{}'.format(self.tender_id, award_id, complaint4_id), {"data": {
"decision": "Тендер скасовується замовником",
"status": "stopped"
}})
self.assertEqual(response.status, '200 OK')

self.app.authorization = ('Basic', ('broker', ''))
award_id = new_award_id
self.app.patch_json('/tenders/{}/awards/{}?acc_token={}'.format(self.tender_id, award_id, owner_token), {"data": {"status": "active", "qualified": True, "eligible": True}})
self.assertEqual(response.status, '200 OK')


with open('docs/source/tutorial/award-complaint-submit.http', 'w') as self.app.file_obj:
response = self.app.post_json('/tenders/{}/awards/{}/complaints?acc_token={}'.format(self.tender_id, award_id, bid_token), complaint_data)
self.assertEqual(response.status, '201 Created')
Expand All @@ -911,4 +998,3 @@ def test_award_complaints(self):
"status": "cancelled"
}})
self.assertEqual(response.status, '200 OK')

18 changes: 18 additions & 0 deletions docs/source/complaints-award.rst
Original file line number Diff line number Diff line change
Expand Up @@ -107,5 +107,23 @@ Submit complaint to new award
Cancelling Tender Award Complaint
=================================

Cancelling not accepted complaint
---------------------------------

.. include:: tutorial/award-complaint-cancel.http
:code:

Cancelling accepted complaint by Complainant
--------------------------------------------

.. include:: tutorial/award-complaint-accepted-stopping.http
:code:

.. include:: tutorial/award-complaint-stopping-stopped.http
:code:

Cancelling accepted complaint by Reviewer
-----------------------------------------

.. include:: tutorial/award-complaint-accepted-stopped.http
:code:
18 changes: 18 additions & 0 deletions docs/source/complaints-tender.rst
Original file line number Diff line number Diff line change
Expand Up @@ -150,5 +150,23 @@ Submitting Resolution Confirmation
Cancelling Tender Conditions Complaint
======================================

Cancelling not accepted complaint
---------------------------------

.. include:: tutorial/complaint-cancel.http
:code:

Cancelling accepted complaint by Complainant
--------------------------------------------

.. include:: tutorial/complaint-accepted-stopping.http
:code:

.. include:: tutorial/complaint-stopping-stopped.http
:code:

Cancelling accepted complaint by Reviewer
-----------------------------------------

.. include:: tutorial/complaint-accepted-stopped.http
:code:
20 changes: 10 additions & 10 deletions docs/source/tutorial/award-complaint-accept.http
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
PATCH /api/0.12/tenders/fe83a0c3727840c6873ae36f03a6c4ea/awards/560fd8f349d6455b96878c097ae1db5d/complaints/e51d0d0110b444fa9d4a1820732d5cf7 HTTP/1.0
PATCH /api/2.2/tenders/e062d80ac31a4d03adfe8ee7f673a737/awards/50dbda37231643578f7faeb07dd2685a/complaints/f18df57172214eb4a7f84c4b2a5b3c07 HTTP/1.0
Authorization: Basic cmV2aWV3ZXI6
Content-Length: 32
Content-Type: application/json
Expand All @@ -19,12 +19,12 @@ Content-Type: application/json; charset=UTF-8
{
"author": "complaint_owner",
"title": "Complaint_Attachement.pdf",
"url": "http://api-sandbox.openprocurement.org/api/0.12/tenders/fe83a0c3727840c6873ae36f03a6c4ea/awards/560fd8f349d6455b96878c097ae1db5d/complaints/e51d0d0110b444fa9d4a1820732d5cf7/documents/36b3f45d16194e658bbb0be80ca888c5?download=d253111bacfe428b9ae3e1e2d97b66f5",
"url": "http://api-sandbox.openprocurement.org/api/2.2/tenders/e062d80ac31a4d03adfe8ee7f673a737/awards/50dbda37231643578f7faeb07dd2685a/complaints/f18df57172214eb4a7f84c4b2a5b3c07/documents/51226f7ef2994f2c9ab5ba1af3b5a74e?download=a4cb2503474747df8a0610926a119c0e",
"format": "application/pdf",
"documentOf": "tender",
"datePublished": "2016-03-25T18:18:45.131060+02:00",
"id": "36b3f45d16194e658bbb0be80ca888c5",
"dateModified": "2016-03-25T18:18:45.131108+02:00"
"datePublished": "2016-03-30T00:04:24.696841+03:00",
"id": "51226f7ef2994f2c9ab5ba1af3b5a74e",
"dateModified": "2016-03-30T00:04:24.696947+03:00"
}
],
"description": "Умови виставлені замовником не містять достатньо інформації, щоб заявка мала сенс.",
Expand All @@ -50,13 +50,13 @@ Content-Type: application/json; charset=UTF-8
"locality": "м. Вінниця"
}
},
"dateAccepted": "2016-03-25T18:18:46.203213+02:00",
"dateSubmitted": "2016-03-25T18:18:45.333981+02:00",
"complaintID": "UA-2016-03-25-000001.1",
"date": "2016-03-25T18:18:44.724741+02:00",
"dateAccepted": "2016-03-30T00:04:29.348648+03:00",
"dateSubmitted": "2016-03-30T00:04:25.239384+03:00",
"complaintID": "UA-2016-03-30-000001.1",
"date": "2016-03-30T00:04:23.490237+03:00",
"acceptance": true,
"type": "complaint",
"id": "e51d0d0110b444fa9d4a1820732d5cf7"
"id": "f18df57172214eb4a7f84c4b2a5b3c07"
}
}

53 changes: 53 additions & 0 deletions docs/source/tutorial/award-complaint-accepted-stopped.http
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
PATCH /api/2.2/tenders/e062d80ac31a4d03adfe8ee7f673a737/awards/50dbda37231643578f7faeb07dd2685a/complaints/ceb6ab54dcd54dcb8648c0a6aa93bc10 HTTP/1.0
Authorization: Basic cmV2aWV3ZXI6
Content-Length: 217
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"status": "stopped",
"decision": "Тендер скасовується замовником"
}
}

Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "stopped",
"description": "Умови виставлені замовником не містять достатньо інформації, щоб заявка мала сенс.",
"author": {
"contactPoint": {
"email": "soleksuk@gmail.com",
"telephone": "+380 (432) 21-69-30",
"name": "Сергій Олексюк"
},
"identifier": {
"scheme": "UA-EDR",
"legalName": "Державне комунальне підприємство громадського харчування «Школяр»",
"id": "13313462",
"uri": "http://sch10.edu.vn.ua/"
},
"name": "ДКП «Школяр»",
"address": {
"postalCode": "21100",
"countryName": "Україна",
"streetAddress": "вул. Островського, 33",
"region": "м. Вінниця",
"locality": "м. Вінниця"
}
},
"decision": "Тендер скасовується замовником",
"acceptance": true,
"dateCanceled": "2016-03-30T00:04:34.937099+03:00",
"dateAccepted": "2016-03-30T00:04:31.668067+03:00",
"dateSubmitted": "2016-03-30T00:04:27.780765+03:00",
"complaintID": "UA-2016-03-30-000001.5",
"date": "2016-03-30T00:04:27.773418+03:00",
"title": "Недостатньо інформації",
"type": "complaint",
"id": "ceb6ab54dcd54dcb8648c0a6aa93bc10"
}
}

53 changes: 53 additions & 0 deletions docs/source/tutorial/award-complaint-accepted-stopping.http
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
PATCH /api/2.2/tenders/e062d80ac31a4d03adfe8ee7f673a737/awards/50dbda37231643578f7faeb07dd2685a/complaints/acd20ac64c624d09ba9ad412afa1196f?acc_token=996d57e37a514edd935524523c0fb786 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 228
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"status": "stopping",
"cancellationReason": "Тендер скасовується замовником"
}
}

Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "stopping",
"description": "Умови виставлені замовником не містять достатньо інформації, щоб заявка мала сенс.",
"author": {
"contactPoint": {
"email": "soleksuk@gmail.com",
"telephone": "+380 (432) 21-69-30",
"name": "Сергій Олексюк"
},
"identifier": {
"scheme": "UA-EDR",
"legalName": "Державне комунальне підприємство громадського харчування «Школяр»",
"id": "13313462",
"uri": "http://sch10.edu.vn.ua/"
},
"name": "ДКП «Школяр»",
"address": {
"postalCode": "21100",
"countryName": "Україна",
"streetAddress": "вул. Островського, 33",
"region": "м. Вінниця",
"locality": "м. Вінниця"
}
},
"acceptance": true,
"cancellationReason": "Тендер скасовується замовником",
"dateCanceled": "2016-03-30T00:04:38.488263+03:00",
"dateAccepted": "2016-03-30T00:04:30.903841+03:00",
"dateSubmitted": "2016-03-30T00:04:27.081364+03:00",
"complaintID": "UA-2016-03-30-000001.4",
"date": "2016-03-30T00:04:27.073933+03:00",
"title": "Недостатньо інформації",
"type": "complaint",
"id": "acd20ac64c624d09ba9ad412afa1196f"
}
}

12 changes: 6 additions & 6 deletions docs/source/tutorial/award-complaint-cancel.http
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
PATCH /api/0.12/tenders/fe83a0c3727840c6873ae36f03a6c4ea/awards/ecd95680c2784e7faf783a69f7b6d69c/complaints/39d2243a43dc43258244bff7734ba340?acc_token=8d0c023f087c48f88c01fb3d89626075 HTTP/1.0
PATCH /api/2.2/tenders/e062d80ac31a4d03adfe8ee7f673a737/awards/5dce16b516194065a591553a22902361/complaints/81c918e4a9eb4e689eae6740d59a6765?acc_token=39f8232f2bef4f6ba3eaea7c313603eb HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 150
Content-Type: application/json
Expand Down Expand Up @@ -40,12 +40,12 @@ Content-Type: application/json; charset=UTF-8
},
"title": "Недостатньо інформації",
"cancellationReason": "Умови виправлено",
"dateCanceled": "2016-03-25T18:18:49.041910+02:00",
"dateSubmitted": "2016-03-25T18:18:48.697112+02:00",
"complaintID": "UA-2016-03-25-000001.4",
"date": "2016-03-25T18:18:48.692692+02:00",
"dateCanceled": "2016-03-30T00:04:42.391978+03:00",
"dateSubmitted": "2016-03-30T00:04:41.339685+03:00",
"complaintID": "UA-2016-03-30-000001.6",
"date": "2016-03-30T00:04:41.329055+03:00",
"type": "complaint",
"id": "39d2243a43dc43258244bff7734ba340"
"id": "81c918e4a9eb4e689eae6740d59a6765"
}
}

0 comments on commit 64d3c03

Please sign in to comment.