diff --git a/panel/test/test_views.py b/panel/test/test_views.py
index a904881..368cc6b 100644
--- a/panel/test/test_views.py
+++ b/panel/test/test_views.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2020 The Sipwise Team - http://sipwise.com
+# Copyright (C) 2020-2022 The Sipwise Team - http://sipwise.com
#
# This program is free software: you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the Free
@@ -11,7 +11,7 @@
# more details.
#
# You should have received a copy of the GNU General Public License along
-# with this prograproj. If not, see .
+# with this program. If not, see .
from django.urls import reverse
from repoapi.test.base import BaseTest
@@ -26,9 +26,33 @@ class ReleaseTest(BaseTest):
)
self.assertEqual(res.status_code, 404)
- def test_release(self):
+ def test_release_uuid(self):
res = self.client.get(
reverse("panel:release-uuid", args=["UUID_mr8.1"])
)
self.assertIsNotNone(res.context["projects"]["kamailio"])
self.assertEqual(res.status_code, 200)
+
+ def test_release(self):
+ res = self.client.get(
+ reverse("panel:release-view", args=["release-mr8.1"])
+ )
+ self.assertEqual(res.status_code, 200)
+
+ def test_index(self):
+ res = self.client.get(reverse("panel:index"))
+ self.assertEqual(res.status_code, 200)
+
+ def test_project(self):
+ res = self.client.get(
+ reverse("panel:project-view", args=["release-mr8.1", "kamailio"])
+ )
+ self.assertEqual(res.status_code, 200)
+
+ def test_project_uuid(self):
+ res = self.client.get(
+ reverse(
+ "panel:uuid-view", args=["release-mr8.1", "kamailio", "UUID0"]
+ )
+ )
+ self.assertEqual(res.status_code, 200)
diff --git a/release_dashboard/test/test_views.py b/release_dashboard/test/test_views.py
index 1931138..d7d569f 100644
--- a/release_dashboard/test/test_views.py
+++ b/release_dashboard/test/test_views.py
@@ -171,6 +171,28 @@ class TestDocker(TestCase):
res = self.client.get(reverse("release_dashboard:docker_images"))
self.assertEqual(res.status_code, 200)
+ def test_index(self):
+ user = User.objects.create_user(username="test")
+ self.client.force_login(user)
+ res = self.client.get(reverse("release_dashboard:index"))
+ self.assertEqual(res.status_code, 200)
+
+ @patch("release_dashboard.views.docker.docker_fetch_project")
+ def test_refresh(self, dfp):
+ user = User.objects.create_user(username="test")
+ self.client.force_login(user)
+ res = self.client.post(
+ reverse("release_dashboard:refresh_docker", args=["fake"])
+ )
+ self.assertEqual(res.status_code, 201)
+ dfp.delay.assert_called_once_with("fake")
+
+ def test_build(self):
+ user = User.objects.create_user(username="test")
+ self.client.force_login(user)
+ res = self.client.get(reverse("release_dashboard:build_docker_images"))
+ self.assertEqual(res.status_code, 200)
+
class TestBuildRelease(BaseTest):
fixtures = ["test_build_release"]
diff --git a/release_dashboard/views/docker.py b/release_dashboard/views/docker.py
index 51f08ae..1222584 100644
--- a/release_dashboard/views/docker.py
+++ b/release_dashboard/views/docker.py
@@ -29,12 +29,14 @@ from . import _hash_versions
from . import _projects_versions
from . import regex_mr
from .. import serializers
-from .. import tasks
from ..conf import settings
from ..forms.docker import BuildDockerForm
from ..models import DockerImage
from ..models import DockerTag
from ..models import Project
+from ..tasks import docker_fetch_all
+from ..tasks import docker_fetch_project
+from ..tasks import docker_remove_tag
from ..utils import docker
logger = structlog.get_logger(__name__)
@@ -107,7 +109,7 @@ def build_docker_images(request):
@login_required
def refresh_all(request):
if request.method == "POST":
- res = tasks.docker_fetch_all.delay()
+ res = docker_fetch_all.delay()
return JsonResponse({"url": "/flower/task/%s" % res.id}, status=201)
else:
template = "release_dashboard/refresh_docker.html"
@@ -121,7 +123,7 @@ def refresh_all(request):
@login_required
@require_http_methods(["POST"])
def refresh(request, project):
- res = tasks.docker_fetch_project.delay(project)
+ res = docker_fetch_project.delay(project)
return JsonResponse({"url": "/flower/task/%s" % res.id}, status=201)
@@ -189,5 +191,5 @@ class DockerTagDetail(generics.RetrieveDestroyAPIView):
def destroy(self, request, *args, **kwargs):
instance = self.get_object()
- tasks.docker_remove_tag.delay(instance.image.name, instance.name)
+ docker_remove_tag.delay(instance.image.name, instance.name)
return Response(status=status.HTTP_202_ACCEPTED)