36 |
36 |
from synnefo.lib.services import get_service_path
|
37 |
37 |
from synnefo.lib import join_urls
|
38 |
38 |
|
39 |
|
from django.test import TestCase
|
40 |
39 |
from django.core.urlresolvers import reverse
|
41 |
40 |
|
42 |
41 |
from datetime import date
|
... | ... | |
187 |
186 |
content_type='application/json', **s1_headers)
|
188 |
187 |
self.assertEqual(r.status_code, 201)
|
189 |
188 |
body = json.loads(r.content)
|
190 |
|
serial = body['serial']
|
191 |
|
self.assertEqual(serial, 1)
|
|
189 |
serial1 = body['serial']
|
|
190 |
assertGreater(serial1, 0)
|
192 |
191 |
|
193 |
192 |
post_data = json.dumps(commission_request)
|
194 |
193 |
r = client.post(u('commissions'), post_data,
|
195 |
194 |
content_type='application/json', **s1_headers)
|
196 |
195 |
self.assertEqual(r.status_code, 201)
|
197 |
196 |
body = json.loads(r.content)
|
198 |
|
self.assertEqual(body['serial'], 2)
|
|
197 |
serial2 = body['serial']
|
|
198 |
assertGreater(serial2, serial1)
|
199 |
199 |
|
200 |
200 |
post_data = json.dumps(commission_request)
|
201 |
201 |
r = client.post(u('commissions'), post_data,
|
202 |
202 |
content_type='application/json', **s1_headers)
|
203 |
203 |
self.assertEqual(r.status_code, 201)
|
204 |
204 |
body = json.loads(r.content)
|
205 |
|
self.assertEqual(body['serial'], 3)
|
|
205 |
serial3 = body['serial']
|
|
206 |
assertGreater(serial3, serial2)
|
206 |
207 |
|
207 |
208 |
r = client.get(u('commissions'), **s1_headers)
|
208 |
209 |
self.assertEqual(r.status_code, 200)
|
209 |
210 |
body = json.loads(r.content)
|
210 |
|
self.assertEqual(body, [1, 2, 3])
|
|
211 |
self.assertEqual(len(body), 3)
|
211 |
212 |
|
212 |
|
r = client.get(u('commissions/' + str(serial)), **s1_headers)
|
|
213 |
r = client.get(u('commissions/' + str(serial1)), **s1_headers)
|
213 |
214 |
self.assertEqual(r.status_code, 200)
|
214 |
215 |
body = json.loads(r.content)
|
215 |
|
self.assertEqual(body['serial'], serial)
|
|
216 |
self.assertEqual(body['serial'], serial1)
|
216 |
217 |
assertIn('issue_time', body)
|
217 |
218 |
provisions = sorted(body['provisions'], key=lambda p: p['resource'])
|
218 |
219 |
self.assertEqual(provisions, commission_request['provisions'])
|
... | ... | |
229 |
230 |
|
230 |
231 |
# resolve pending commissions
|
231 |
232 |
resolve_data = {
|
232 |
|
"accept": [1, 3],
|
233 |
|
"reject": [2, 3, 4],
|
|
233 |
"accept": [serial1, serial3],
|
|
234 |
"reject": [serial2, serial3, serial3 + 1],
|
234 |
235 |
}
|
235 |
236 |
post_data = json.dumps(resolve_data)
|
236 |
237 |
|
... | ... | |
238 |
239 |
content_type='application/json', **s1_headers)
|
239 |
240 |
self.assertEqual(r.status_code, 200)
|
240 |
241 |
body = json.loads(r.content)
|
241 |
|
self.assertEqual(body['accepted'], [1])
|
242 |
|
self.assertEqual(body['rejected'], [2])
|
|
242 |
self.assertEqual(body['accepted'], [serial1])
|
|
243 |
self.assertEqual(body['rejected'], [serial2])
|
243 |
244 |
failed = body['failed']
|
244 |
245 |
self.assertEqual(len(failed), 2)
|
245 |
246 |
|
246 |
|
r = client.get(u('commissions/' + str(serial)), **s1_headers)
|
|
247 |
r = client.get(u('commissions/' + str(serial1)), **s1_headers)
|
247 |
248 |
self.assertEqual(r.status_code, 404)
|
248 |
249 |
|
249 |
250 |
# auto accept
|
... | ... | |
269 |
270 |
content_type='application/json', **s1_headers)
|
270 |
271 |
self.assertEqual(r.status_code, 201)
|
271 |
272 |
body = json.loads(r.content)
|
272 |
|
serial = body['serial']
|
273 |
|
self.assertEqual(serial, 4)
|
|
273 |
serial4 = body['serial']
|
|
274 |
assertGreater(serial4, serial3)
|
274 |
275 |
|
275 |
|
r = client.get(u('commissions/' + str(serial)), **s1_headers)
|
|
276 |
r = client.get(u('commissions/' + str(serial4)), **s1_headers)
|
276 |
277 |
self.assertEqual(r.status_code, 404)
|
277 |
278 |
|
278 |
279 |
# malformed
|