Revision 9582e68e
b/snf-cyclades-app/synnefo/api/tests/flavors.py | ||
---|---|---|
1 |
# Copyright 2012 GRNET S.A. All rights reserved.
|
|
1 |
# Copyright 2013 GRNET S.A. All rights reserved.
|
|
2 | 2 |
# |
3 | 3 |
# Redistribution and use in source and binary forms, with or |
4 | 4 |
# without modification, are permitted provided that the following |
... | ... | |
50 | 50 |
self.compute_path = get_service_path(cyclades_services, 'compute', |
51 | 51 |
version='v2.0') |
52 | 52 |
|
53 |
|
|
54 | 53 |
def myget(self, path): |
55 | 54 |
path = join_urls(self.compute_path, path) |
56 | 55 |
return self.get(path) |
57 | 56 |
|
58 |
|
|
59 | 57 |
def test_flavor_list(self): |
60 | 58 |
"""Test if the expected list of flavors is returned.""" |
61 | 59 |
response = self.myget('flavors') |
... | ... | |
88 | 86 |
self.assertEqual(api_flavor['name'], db_flavor.name) |
89 | 87 |
self.assertEqual(api_flavor['ram'], db_flavor.ram) |
90 | 88 |
self.assertEqual(api_flavor['SNF:disk_template'], |
91 |
db_flavor.disk_template)
|
|
89 |
db_flavor.disk_template) |
|
92 | 90 |
|
93 | 91 |
def test_flavor_details(self): |
94 | 92 |
"""Test if the expected flavor is returned.""" |
... | ... | |
133 | 131 |
def test_wrong_flavor(self): |
134 | 132 |
"""Test 404 result when requesting a flavor that does not exist.""" |
135 | 133 |
|
136 |
# XXX: flavors/22 below fails for no apparent reason
|
|
137 |
response = self.myget('flavors/%d' % 23)
|
|
134 |
flavor_id = max(Flavor.objects.values_list('id', flat=True)) + 1
|
|
135 |
response = self.myget('flavors/%d' % flavor_id)
|
|
138 | 136 |
self.assertItemNotFound(response) |
139 | 137 |
|
140 | 138 |
def test_catch_wrong_api_paths(self, *args): |
141 | 139 |
response = self.myget('nonexistent') |
142 | 140 |
self.assertEqual(response.status_code, 400) |
143 | 141 |
try: |
144 |
error = json.loads(response.content)
|
|
142 |
json.loads(response.content) |
|
145 | 143 |
except ValueError: |
146 | 144 |
self.assertTrue(False) |
b/snf-cyclades-app/synnefo/api/tests/floating_ips.py | ||
---|---|---|
111 | 111 |
self.assertEqual(ip.network, net) |
112 | 112 |
self.assertEqual(json.loads(response.content)["floating_ip"], |
113 | 113 |
{"instance_id": None, "ip": "192.168.2.1", |
114 |
"fixed_ip": None, "id": "1", "pool": "1"}) |
|
114 |
"fixed_ip": None, "id": str(ip.id), |
|
115 |
"pool": str(net.id)}) |
|
115 | 116 |
|
116 | 117 |
def test_reserve_no_pool(self): |
117 | 118 |
# No networks |
... | ... | |
132 | 133 |
with mocked_quotaholder(): |
133 | 134 |
response = self.post(URL, "test_user", json.dumps({}), "json") |
134 | 135 |
self.assertSuccess(response) |
136 |
ip = FloatingIP.objects.get() |
|
135 | 137 |
self.assertEqual(json.loads(response.content)["floating_ip"], |
136 | 138 |
{"instance_id": None, "ip": "192.168.2.1", |
137 |
"fixed_ip": None, "id": "1", "pool": str(net2.id)}) |
|
139 |
"fixed_ip": None, "id": str(ip.id), |
|
140 |
"pool": str(net2.id)}) |
|
138 | 141 |
|
139 | 142 |
def test_reserve_full(self): |
140 | 143 |
net = FloatingIPPoolFactory(userid="test_user", |
... | ... | |
151 | 154 |
with mocked_quotaholder(): |
152 | 155 |
response = self.post(URL, "test_user", json.dumps(request), "json") |
153 | 156 |
self.assertSuccess(response) |
157 |
ip = FloatingIP.objects.get() |
|
154 | 158 |
self.assertEqual(json.loads(response.content)["floating_ip"], |
155 | 159 |
{"instance_id": None, "ip": "192.168.2.10", |
156 |
"fixed_ip": None, "id": "1", "pool": "1"}) |
|
160 |
"fixed_ip": None, "id": str(ip.id), "pool": |
|
161 |
str(net.id)}) |
|
157 | 162 |
|
158 | 163 |
# Already reserved |
159 | 164 |
FloatingIPFactory(network=net, ipv4="192.168.2.3") |
Also available in: Unified diff