Revision 8b01f7f3 api/tests.py
b/api/tests.py | ||
---|---|---|
2 | 2 |
# Copyright (c) 2010 Greek Research and Technology Network |
3 | 3 |
# |
4 | 4 |
|
5 |
from email.utils import parsedate |
|
6 |
from time import mktime |
|
7 |
|
|
5 | 8 |
import datetime |
6 | 9 |
|
7 | 10 |
from django.utils import simplejson as json |
... | ... | |
134 | 137 |
|
135 | 138 |
response = self.client.get('/api/v1.1/servers/detail') |
136 | 139 |
vms_from_api_initial = json.loads(response.content)['servers']['values'] |
137 |
then = datetime.datetime.now().isoformat().split('.')[0] + 'Z' |
|
138 |
|
|
139 |
#isoformat also gives miliseconds that are not needed |
|
140 |
response = self.client.get('/api/v1.1/servers/detail?changes-since=%s' % then) |
|
140 |
ts = mktime(parsedate(response['Date'])) |
|
141 |
since = datetime.datetime.fromtimestamp(ts).isoformat() + 'Z' |
|
142 |
response = self.client.get('/api/v1.1/servers/detail?changes-since=%s' % since) |
|
141 | 143 |
self.assertEqual(len(response.content), 0) |
142 |
#no changes were made |
|
143 | 144 |
|
144 | 145 |
#now create a machine. Then check if it is on the list |
145 | 146 |
request = { |
... | ... | |
158 | 159 |
response = self.client.post(path, json.dumps(request), content_type='application/json') |
159 | 160 |
self.assertEqual(response.status_code, 202) |
160 | 161 |
|
161 |
response = self.client.get('/api/v1.1/servers/detail?changes-since=%s' % then)
|
|
162 |
response = self.client.get('/api/v1.1/servers/detail?changes-since=%s' % since)
|
|
162 | 163 |
vms_from_api_after = json.loads(response.content)['servers']['values'] |
163 | 164 |
#make sure the newly created server is included on the updated list |
164 | 165 |
self.assertEqual(len(vms_from_api_after), 1) |
Also available in: Unified diff