Compare commits
No commits in common. "8d0730bf7061f3f02d851ba4721b8fb2046dcac1" and "aec64ea5f34e3314b4522f817626128415270d50" have entirely different histories.
8d0730bf70
...
aec64ea5f3
@ -19,11 +19,6 @@ repos:
|
||||
- id: ruff
|
||||
- id: ruff-format
|
||||
|
||||
- repo: https://github.com/pdm-project/pdm
|
||||
rev: 2.12.3
|
||||
hooks:
|
||||
- id: pdm-lock-check
|
||||
|
||||
# TODO: waiting on django-recurrence 1.12 to be released on PyPi
|
||||
# - repo: local
|
||||
# hooks:
|
||||
|
@ -1,5 +1,3 @@
|
||||
from itertools import chain
|
||||
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.contrib.auth.models import Permission
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
@ -80,42 +78,29 @@ class InstructorOrVendorReportTestCase(PermissionRequiredViewTestCaseMixin, Test
|
||||
|
||||
|
||||
@st.composite
|
||||
def random_certifications(
|
||||
draw,
|
||||
) -> list[Certification]:
|
||||
def certifications(version: CertificationVersion):
|
||||
return st.lists(
|
||||
def random_certifications(draw):
|
||||
departments = draw(st.lists(from_model(Department), min_size=1))
|
||||
definitions = draw(
|
||||
st.lists(
|
||||
from_model(
|
||||
Certification,
|
||||
number=st.none(),
|
||||
certification_version=st.just(version),
|
||||
CertificationDefinition, department=st.sampled_from(departments)
|
||||
),
|
||||
max_size=10,
|
||||
min_size=1,
|
||||
)
|
||||
|
||||
def versions_with_certifications(definition: CertificationDefinition):
|
||||
return st.lists(
|
||||
from_model(CertificationVersion, definition=st.just(definition)).flatmap(
|
||||
certifications
|
||||
),
|
||||
max_size=2,
|
||||
)
|
||||
|
||||
def definitions_with_versions(department: Department):
|
||||
return st.lists(
|
||||
from_model(CertificationDefinition, department=st.just(department)).flatmap(
|
||||
versions_with_certifications
|
||||
),
|
||||
max_size=2,
|
||||
)
|
||||
certification_versions = draw(
|
||||
st.lists(
|
||||
from_model(CertificationVersion, definition=st.sampled_from(definitions)),
|
||||
min_size=1,
|
||||
)
|
||||
)
|
||||
|
||||
return draw(
|
||||
st.lists(
|
||||
from_model(Department).flatmap(definitions_with_versions),
|
||||
max_size=2,
|
||||
).map(
|
||||
lambda x: list(
|
||||
chain.from_iterable(chain.from_iterable(chain.from_iterable(x)))
|
||||
from_model(
|
||||
Certification,
|
||||
number=st.none(),
|
||||
certification_version=st.sampled_from(certification_versions),
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -126,7 +111,7 @@ class CertifiersReportTestCase(PermissionRequiredViewTestCaseMixin, TestCase):
|
||||
path = "/paperwork/certifiers"
|
||||
|
||||
@given(certifications=random_certifications())
|
||||
def test_certifiers_report(self, certifications: list[Certification]) -> None:
|
||||
def test_certifers_report(self, certifications: list[Certification]) -> None:
|
||||
self.client.force_login(self.user_with_permission)
|
||||
response = self.client.get(self.path)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
|
Loading…
Reference in New Issue
Block a user