summaryrefslogtreecommitdiff
path: root/archaeological_files/tests.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2022-11-14 18:58:48 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2022-12-12 12:23:19 +0100
commit58663c87b11bfe0b60a9861a8fddd5bbb22ca0b4 (patch)
tree1b823f5e78e7214f84da3892e0729c0c2706ad6d /archaeological_files/tests.py
parentefa5688099bbddbe7dc28efe6129070988441c8d (diff)
downloadIshtar-58663c87b11bfe0b60a9861a8fddd5bbb22ca0b4.tar.bz2
Ishtar-58663c87b11bfe0b60a9861a8fddd5bbb22ca0b4.zip
Remove dead code about dashboards
Diffstat (limited to 'archaeological_files/tests.py')
-rw-r--r--archaeological_files/tests.py79
1 files changed, 75 insertions, 4 deletions
diff --git a/archaeological_files/tests.py b/archaeological_files/tests.py
index 1d54584da..7145cb836 100644
--- a/archaeological_files/tests.py
+++ b/archaeological_files/tests.py
@@ -27,13 +27,15 @@ from django.urls import reverse
from ishtar_common.tests import (
TestCase,
- COMMON_FIXTURES,
create_superuser,
AutocompleteTestBase,
AcItem,
+ FILE_TOWNS_FIXTURES,
)
from ishtar_common.models import Town, IshtarSiteProfile
+from ishtar_common.utils import ugettext_lazy as _
+
from archaeological_files import models, views
from archaeological_operations.models import (
Parcel,
@@ -41,7 +43,6 @@ from archaeological_operations.models import (
ActType,
AdministrativeAct,
)
-from ishtar_common.tests import FILE_TOWNS_FIXTURES
from archaeological_operations.tests import OperationInitTest, FileInit
@@ -65,7 +66,7 @@ class FileTest(TestCase, FileInit):
model = models.File
def setUp(self):
- IshtarSiteProfile.objects.create()
+ self.profile = IshtarSiteProfile.objects.create()
self.create_file()
def test_external_id(self):
@@ -246,6 +247,77 @@ class FileTest(TestCase, FileInit):
self.assertEqual(response.status_code, 200)
self.assertIn('class="card sheet"', response.content.decode())
+ def test_select_page(self):
+ url = "file_search"
+ # need auth
+ response = self.client.get(reverse(url))
+ self.assertRedirects(response, "/", status_code=302)
+ # need file module
+ self.login_as_superuser()
+ response = self.client.get(reverse(url))
+ self.assertRedirects(response, "/file_search/general-file_search",
+ status_code=302)
+
+
+class FileCostTest(TestCase, FileInit):
+ fixtures = FILE_TOWNS_FIXTURES
+ model = models.File
+
+ def setUp(self):
+ IshtarSiteProfile.objects.create()
+ self.create_file()
+
+ def test_admin_copy_cost(self):
+ default = models.PriceAgreement.objects.all()[0]
+ new = models.PriceAgreement.objects.create(label="New")
+ ln_equipment_service_costs = default.equipment_service_costs.count()
+ self.assertNotEqual(ln_equipment_service_costs, 0)
+ self.assertEqual(new.equipment_service_costs.count(), 0)
+ ln_jobs = default.jobs.count()
+ self.assertNotEqual(ln_jobs, 0)
+ self.assertEqual(new.jobs.count(), 0)
+ url = "/admin/archaeological_files/priceagreement/copy-price-agreement/"
+ response = self.client.get(url)
+ self.assertRedirects(
+ response,
+ reverse("admin:login"),
+ status_code=302,
+ )
+ self.login_as_superuser()
+ response = self.client.get(url)
+ self.assertEqual(response.status_code, 200)
+ response = self.client.post(
+ url,
+ {"source": default.pk, "destination": default.pk,
+ "action": "import_generic", "apply": "1"}
+ )
+ # cannot copy on same price agreement (nonsense)
+ self.assertContains(
+ response,
+ str(_("Source and destination must be different."))
+ )
+ response = self.client.post(
+ url,
+ {"source": default.pk, "destination": new.pk,
+ "action": "import_generic", "apply": "1"}
+ )
+ self.assertEqual(response.status_code, 302)
+ new = models.PriceAgreement.objects.get(pk=new.pk)
+ self.assertEqual(new.jobs.count(), ln_jobs)
+ self.assertEqual(new.equipment_service_costs.count(),
+ ln_equipment_service_costs)
+ # repost - verify no duplication
+ response = self.client.post(
+ url,
+ {"source": default.pk, "destination": new.pk,
+ "action": "import_generic", "apply": "1"}
+ )
+ self.assertEqual(response.status_code, 302)
+ new = models.PriceAgreement.objects.get(pk=new.pk)
+ self.assertEqual(new.jobs.count(), ln_jobs)
+ self.assertEqual(new.equipment_service_costs.count(),
+ ln_equipment_service_costs)
+
def test_preventive_price_agreement(self):
pk = self.item.pk
self.login_as_superuser()
@@ -303,7 +375,6 @@ class FileTest(TestCase, FileInit):
self.assertEqual(q_equip.count(), 0)
self.assertEqual(q_job.count(), 0)
-
def test_preventive(self):
pk = self.item.pk
self.item.price_agreement_id = models.PriceAgreement.objects.all()[0]