Testing infrastructure¶
Activities¶
Abstract test cases for activities subclasses and surrounding models.
Subclasses must define a few required models and attributes:
class Fixtures(ActivityFixtures):
base_class = MyClass
class TestMyClass(Fixtures, ActivityTests):
def test_something(self, activity):
assert activity.the_answer() == 45
class TestMySubmissions(Fixtures, SubmissionTests):
def test_something_else(self, submission):
assert submission.is_working_well() is True
Classes¶
-
class
codeschool.tests.activities.ActivityFixtures[source]¶ Expose an “activity” and a “progress” fixtures that do not access the database by default.
Users of this class must define an activity_class class attribute with the class that should be tested.
-
class
codeschool.tests.activities.ActivityTests[source]¶ Abstract tests for activities.
You should inherit from this class and maybe write additional tests methods for the specific class you want to test.
-
class
codeschool.tests.activities.ActivityTestsDb[source]¶ Activity tests that requires using the database.
-
class
codeschool.tests.activities.ProgressTestsDb[source]¶ Test Progress instances touching the database.
-
class
codeschool.tests.activities.SubmissionTests[source]¶ Abstract tests for submission subclasses.
-
class
codeschool.tests.activities.SubmissionTestsDb[source]¶ Submissions tests that use the database.
-
class
codeschool.tests.activities.ActivityFixtures[source] Expose an “activity” and a “progress” fixtures that do not access the database by default.
Users of this class must define an activity_class class attribute with the class that should be tested.
-
activity_class¶ alias of
Activity
-
-
class
codeschool.tests.activities.ActivityTests[source] Abstract tests for activities.
You should inherit from this class and maybe write additional tests methods for the specific class you want to test.
-
class
codeschool.tests.activities.ActivityTestsDb[source] Activity tests that requires using the database.
-
class
codeschool.tests.activities.FeedbackTests[source] Abstract tests for Feedback subclasses.
-
class
codeschool.tests.activities.FeedbackTestsDb[source] Feedback tests that use the database.
-
class
codeschool.tests.activities.ProgressTests[source] Abstract tests for progress subclasses.
-
class
codeschool.tests.activities.ProgressTestsDb[source] Test Progress instances touching the database.
-
class
codeschool.tests.activities.SubmissionTests[source] Abstract tests for submission subclasses.
-
class
codeschool.tests.activities.SubmissionTestsDb[source] Submissions tests that use the database.
Patchers/mockers¶
-
codeschool.tests.mocks.queryset_mock(data=(), cls=<class 'django.db.models.query.QuerySet'>)[source]¶ Mocks a few methods in the queryset API to make them return mocks instead of consulting the database.