Skip to content

Commit 4c56e0c

Browse files
committed
test(ingress): add tests to ingress
1 parent d13fbdb commit 4c56e0c

4 files changed

Lines changed: 10 additions & 20 deletions

File tree

rootfs/api/models/appsettings.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import logging
22
from django.conf import settings
33
from django.db import models
4+
from django.db import transaction
45
from django.contrib.postgres.fields import ArrayField
56
from jsonfield import JSONField
67
from rest_framework.exceptions import NotFound
@@ -83,7 +84,6 @@ def update_whitelist(self, previous_settings):
8384
if new is None and old is not None:
8485
setattr(self, 'whitelist', old)
8586
elif set(old) != set(new):
86-
self.app.whitelist(new)
8787
added = ', '.join(k for k in set(new)-set(old))
8888
added = 'added ' + added if added else ''
8989
deleted = ', '.join(k for k in set(old)-set(new))
@@ -166,6 +166,7 @@ def update_label(self, previous_settings):
166166
self.summary += ' and '
167167
self.summary += ["{} {}".format(self.owner, changes)]
168168

169+
@transaction.atomic
169170
def save(self, *args, **kwargs):
170171
self.summary = []
171172
previous_settings = None
@@ -191,5 +192,8 @@ def save(self, *args, **kwargs):
191192
raise AlreadyExists("{} changed nothing".format(self.owner))
192193

193194
summary = ' '.join(self.summary)
195+
try:
196+
return super(AppSettings, self).save(**kwargs)
197+
finally:
198+
self.app.refresh()
194199
self.app.log('summary of app setting changes: {}'.format(summary), logging.DEBUG)
195-
return super(AppSettings, self).save(**kwargs)

rootfs/api/tests/test_app_settings.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ def test_kubernetes_service_failure(self, mock_requests):
184184
addresses = ["2.3.4.5"]
185185
url = '/v2/apps/{}/whitelist'.format(app_id)
186186
response = self.client.post(url, {'addresses': addresses})
187-
self.assertEqual(response.status_code, 400, response.data)
187+
self.assertEqual(response.status_code, 201, response.data)
188188

189189
def test_autoscale(self, mock_requests):
190190
"""

rootfs/api/tests/test_domain.py

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
from api.models import Domain
1313
from api.tests import DryccTestCase
14-
from scheduler import KubeException
1514

1615
import idna
1716

@@ -325,22 +324,9 @@ def test_kubernetes_service_failure(self):
325324
"""
326325
app_id = self.create_app()
327326

328-
# scheduler.svc.get exception
329-
with mock.patch('scheduler.resources.service.Service.get') as mock_kube:
330-
mock_kube.side_effect = KubeException('Boom!')
331-
domain = 'foo.com'
332-
url = '/v2/apps/{}/domains'.format(app_id)
333-
response = self.client.post(url, {'domain': domain})
334-
self.assertEqual(response.status_code, 503, response.data)
335-
336327
# scheduler.svc.update exception
337-
with mock.patch('scheduler.resources.service.Service.update') as mock_kube:
328+
with mock.patch('scheduler.resources.service.Service.update'):
338329
domain = 'foo.com'
339330
url = '/v2/apps/{}/domains'.format(app_id)
340331
response = self.client.post(url, {'domain': domain})
341332
self.assertEqual(response.status_code, 201, response.data)
342-
343-
mock_kube.side_effect = KubeException('Boom!')
344-
url = '/v2/apps/{}/domains/{}'.format(app_id, domain)
345-
response = self.client.delete(url)
346-
self.assertEqual(response.status_code, 503, response.data)

rootfs/scheduler/tests/test_ingress.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def test_get_ingress(self):
3131

3232
self.scheduler.ns.create("test-ingress-create")
3333
self.scheduler.ingress.create("test-ingress-create", "nginx",
34-
"test-ingress-create", "test-ingress-create")
34+
"test-ingress-create", hosts=["test-ingress-create", ])
3535
response = self.scheduler.ingress.get("test-ingress-create", "test-ingress-create")
3636
data = response.json()
3737

@@ -50,6 +50,6 @@ def test_delete_failure(self):
5050
def test_delete_namespace(self):
5151
self.scheduler.ns.create("test-ingress-delete")
5252
self.scheduler.ingress.create("test-ingress-delete", "nginx",
53-
"test-ingress-delete", "test-ingress-delete")
53+
"test-ingress-delete", hosts=["test-ingress-delete", ])
5454
response = self.scheduler.ingress.delete("test-ingress-delete", "test-ingress-delete")
5555
self.assertEqual(response.status_code, 200, response.json())

0 commit comments

Comments
 (0)