Skip to content

Commit

Permalink
style: [ACI-938] correct style to pylint requirements
Browse files Browse the repository at this point in the history
  • Loading branch information
Andrii committed Apr 23, 2024
1 parent 3a03c1a commit 67f0f98
Showing 1 changed file with 51 additions and 125 deletions.
176 changes: 51 additions & 125 deletions credentials/apps/badges/tests/test_services.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,8 @@
Fulfillment,
PenaltyDataRule,
)
from credentials.apps.badges.processing.progression import (
discover_requirements,
process_requirements,
)
from credentials.apps.badges.processing.regression import (
discover_penalties,
process_penalties,
)
from credentials.apps.badges.processing.progression import discover_requirements, process_requirements
from credentials.apps.badges.processing.regression import discover_penalties, process_penalties


class BadgeRequirementDiscoveryTestCase(TestCase):
Expand All @@ -30,18 +24,10 @@ def setUp(self):
)
self.site = Site.objects.create(domain="test_domain", name="test_name")
self.badge_template = BadgeTemplate.objects.create(
uuid=uuid.uuid4(),
name="test_template",
state="draft",
site=self.site,
is_active=True,
)
self.COURSE_PASSING_EVENT = (
"org.openedx.learning.course.passing.status.updated.v1"
)
self.CCX_COURSE_PASSING_EVENT = (
"org.openedx.learning.ccx.course.passing.status.updated.v1"
uuid=uuid.uuid4(), name="test_template", state="draft", site=self.site, is_active=True
)
self.COURSE_PASSING_EVENT = "org.openedx.learning.course.passing.status.updated.v1"
self.CCX_COURSE_PASSING_EVENT = "org.openedx.learning.ccx.course.passing.status.updated.v1"

def test_discovery_eventtype_related_requirements(self):
BadgeRequirement.objects.create(
Expand All @@ -59,26 +45,13 @@ def test_discovery_eventtype_related_requirements(self):
event_type=self.CCX_COURSE_PASSING_EVENT,
description="Test ccx course passing revoke description",
)
course_passing_requirements = discover_requirements(
event_type=self.COURSE_PASSING_EVENT
)
ccx_course_passing_requirements = discover_requirements(
event_type=self.CCX_COURSE_PASSING_EVENT
)
course_passing_requirements = discover_requirements(event_type=self.COURSE_PASSING_EVENT)
ccx_course_passing_requirements = discover_requirements(event_type=self.CCX_COURSE_PASSING_EVENT)
self.assertEqual(course_passing_requirements.count(), 1)
self.assertEqual(ccx_course_passing_requirements.count(), 2)
self.assertEqual(
course_passing_requirements[0].description,
"Test course passing award description",
)
self.assertEqual(
ccx_course_passing_requirements[0].description,
"Test ccx course passing award description",
)
self.assertEqual(
ccx_course_passing_requirements[1].description,
"Test ccx course passing revoke description",
)
self.assertEqual(course_passing_requirements[0].description, "Test course passing award description")
self.assertEqual(ccx_course_passing_requirements[0].description, "Test ccx course passing award description")
self.assertEqual(ccx_course_passing_requirements[1].description, "Test ccx course passing revoke description")


class BadgePenaltyDiscoveryTestCase(TestCase):
Expand All @@ -88,61 +61,42 @@ def setUp(self):
)
self.site = Site.objects.create(domain="test_domain", name="test_name")
self.badge_template = BadgeTemplate.objects.create(
uuid=uuid.uuid4(),
name="test_template",
state="draft",
site=self.site,
is_active=True,
)
self.COURSE_PASSING_EVENT = (
"org.openedx.learning.course.passing.status.updated.v1"
)
self.CCX_COURSE_PASSING_EVENT = (
"org.openedx.learning.ccx.course.passing.status.updated.v1"
uuid=uuid.uuid4(), name="test_template", state="draft", site=self.site, is_active=True
)
self.COURSE_PASSING_EVENT = "org.openedx.learning.course.passing.status.updated.v1"
self.CCX_COURSE_PASSING_EVENT = "org.openedx.learning.ccx.course.passing.status.updated.v1"

def test_discovery_eventtype_related_penalties(self):
penalty1 = BadgePenalty.objects.create(
template=self.badge_template, event_type=self.COURSE_PASSING_EVENT
)
penalty1 = BadgePenalty.objects.create(template=self.badge_template, event_type=self.COURSE_PASSING_EVENT)
penalty1.requirements.add(
BadgeRequirement.objects.create(
template=self.badge_template,
event_type=self.COURSE_PASSING_EVENT,
description="Test course passing award description",
)
)
penalty2 = BadgePenalty.objects.create(
template=self.badge_template, event_type=self.CCX_COURSE_PASSING_EVENT
)
penalty2 = BadgePenalty.objects.create(template=self.badge_template, event_type=self.CCX_COURSE_PASSING_EVENT)
penalty2.requirements.add(
BadgeRequirement.objects.create(
template=self.badge_template,
event_type=self.CCX_COURSE_PASSING_EVENT,
description="Test ccx course passing award description",
)
)
penalty3 = BadgePenalty.objects.create(
template=self.badge_template, event_type=self.CCX_COURSE_PASSING_EVENT
)
penalty3 = BadgePenalty.objects.create(template=self.badge_template, event_type=self.CCX_COURSE_PASSING_EVENT)
penalty3.requirements.add(
BadgeRequirement.objects.create(
template=self.badge_template,
event_type=self.CCX_COURSE_PASSING_EVENT,
description="Test ccx course passing revoke description",
)
)
course_passing_penalties = discover_penalties(
event_type=self.COURSE_PASSING_EVENT
)
ccx_course_passing_penalties = discover_penalties(
event_type=self.CCX_COURSE_PASSING_EVENT
)
course_passing_penalties = discover_penalties(event_type=self.COURSE_PASSING_EVENT)
ccx_course_passing_penalties = discover_penalties(event_type=self.CCX_COURSE_PASSING_EVENT)
self.assertEqual(course_passing_penalties.count(), 1)
self.assertEqual(ccx_course_passing_penalties.count(), 2)
self.assertEqual(
course_passing_penalties[0].requirements.first().description,
"Test course passing award description",
course_passing_penalties[0].requirements.first().description, "Test course passing award description"
)
self.assertEqual(
ccx_course_passing_penalties[0].requirements.first().description,
Expand All @@ -163,12 +117,8 @@ def setUp(self):
self.badge_template = BadgeTemplate.objects.create(
uuid=uuid.uuid4(), name="test_template", state="draft", site=self.site
)
self.COURSE_PASSING_EVENT = (
"org.openedx.learning.course.passing.status.updated.v1"
)
self.CCX_COURSE_PASSING_EVENT = (
"org.openedx.learning.ccx.course.passing.status.updated.v1"
)
self.COURSE_PASSING_EVENT = "org.openedx.learning.course.passing.status.updated.v1"
self.CCX_COURSE_PASSING_EVENT = "org.openedx.learning.ccx.course.passing.status.updated.v1"

def test_process_penalties_all_datarules_success(self):
requirement1 = BadgeRequirement.objects.create(
Expand All @@ -183,63 +133,49 @@ def test_process_penalties_all_datarules_success(self):
)
DataRule.objects.create(
requirement=requirement1,
data_path="course.display_name",
data_path="course_passing_status.user.pii.username",
operator="eq",
value="Test course",
value="test_username",
)
DataRule.objects.create(
requirement=requirement2,
data_path="course.display_name",
data_path="course_passing_status.user.pii.email",
operator="eq",
value="Test course",
value="test_email",
)

progress = BadgeProgress.objects.create(
username="test_username", template=self.badge_template
)
progress = BadgeProgress.objects.create(username="test_username", template=self.badge_template)
Fulfillment.objects.create(progress=progress, requirement=requirement1)
Fulfillment.objects.create(progress=progress, requirement=requirement2)

self.assertEqual(
BadgeProgress.objects.filter(username="test_username").count(), 1
)
self.assertEqual(BadgeProgress.objects.filter(username="test_username").count(), 1)
self.assertEqual(Fulfillment.objects.filter(progress=progress).count(), 2)
self.assertEqual(
Fulfillment.objects.filter(
progress=progress, requirement=requirement1
).count(),
1,
)
self.assertEqual(
Fulfillment.objects.filter(
progress=progress, requirement=requirement1
).count(),
1,
)
self.assertEqual(Fulfillment.objects.filter(progress=progress, requirement=requirement1).count(), 1)
self.assertEqual(Fulfillment.objects.filter(progress=progress, requirement=requirement1).count(), 1)

bp = BadgePenalty.objects.create(
template=self.badge_template, event_type=self.COURSE_PASSING_EVENT
)
bp = BadgePenalty.objects.create(template=self.badge_template, event_type=self.COURSE_PASSING_EVENT)
bp.requirements.set(
(requirement1, requirement2),
)
PenaltyDataRule.objects.create(
penalty=bp,
data_path="course.display_name",
data_path="course_passing_status.user.pii.username",
operator="ne",
value="Test course 1",
value="test_username1",
)
PenaltyDataRule.objects.create(
penalty=bp,
data_path="course.display_name",
data_path="course_passing_status.user.pii.email",
operator="ne",
value="Test course 2",
value="test_email1",
)
self.badge_template.is_active = True
self.badge_template.save()
kwargs = {
"course_passing_status": {
"course": {"display_name": "Test course"},
"user": {
"pii": {"username": "test_username", "email": "test_email", "name": "test_name"},
}
}
}
process_penalties(self.COURSE_PASSING_EVENT, "test_username", kwargs)
Expand All @@ -258,37 +194,25 @@ def test_process_penalties_one_datarule_fail(self):
)
DataRule.objects.create(
requirement=requirement1,
data_path="course.display_name",
data_path="course_passing_status.user.pii.username",
operator="eq",
value="Test course",
value="test_username",
)
DataRule.objects.create(
requirement=requirement2,
data_path="course.display_name",
data_path="course_passing_status.user.pii.email",
operator="eq",
value="Test course",
value="test_email",
)

progress = BadgeProgress.objects.create(username="test_username")
Fulfillment.objects.create(progress=progress, requirement=requirement1)
Fulfillment.objects.create(progress=progress, requirement=requirement2)

self.assertEqual(
BadgeProgress.objects.filter(username="test_username").count(), 1
)
self.assertEqual(BadgeProgress.objects.filter(username="test_username").count(), 1)
self.assertEqual(Fulfillment.objects.filter(progress=progress).count(), 2)
self.assertEqual(
Fulfillment.objects.filter(
progress=progress, requirement=requirement1
).count(),
1,
)
self.assertEqual(
Fulfillment.objects.filter(
progress=progress, requirement=requirement1
).count(),
1,
)
self.assertEqual(Fulfillment.objects.filter(progress=progress, requirement=requirement1).count(), 1)
self.assertEqual(Fulfillment.objects.filter(progress=progress, requirement=requirement1).count(), 1)

BadgePenalty.objects.create(
template=self.badge_template, event_type=self.COURSE_PASSING_EVENT
Expand All @@ -297,19 +221,21 @@ def test_process_penalties_one_datarule_fail(self):
)
PenaltyDataRule.objects.create(
penalty=BadgePenalty.objects.first(),
data_path="course.display_name",
data_path="course_passing_status.user.pii.username",
operator="ne",
value="Test course 1",
value="test_username",
)
PenaltyDataRule.objects.create(
penalty=BadgePenalty.objects.first(),
data_path="course.display_name",
data_path="course_passing_status.user.pii.email",
operator="ne",
value="Test course",
value="test_email",
)
kwargs = {
"course_passing_status": {
"course": {"display_name": "Test course"},
"user": {
"pii": {"username": "test_username", "email": "test_email", "name": "test_name"},
}
}
}
process_penalties(self.COURSE_PASSING_EVENT, "test_username", kwargs)
Expand Down

0 comments on commit 67f0f98

Please sign in to comment.