Examples¶
Django-keepcool : get started !
static_page¶
from django.test import TestCase
from keepcool.testers import ViewTester
class HomeViewTest(ViewTester, TestCase):
url_name = "home"
expected_status_code = 200
dynamic page¶
from django.test import TestCase
from keepcool.testers import ViewTester
class DashboardViewTest(ViewTester, TestCase):
url_name = "dashboard"
expected_status_code = 200
def setUp(self):
# fill testing data here
pass
create view testing¶
from django.contrib.auth import get_user_model
from django.test import TestCase
from keepcool.testers import CreateViewTester
class ProfileCreateViewTest(CreateViewTester, TestCase):
url_name = "profile_create"
expected_status_code = 200
form_data = {
"email": "data@example.com",
"first_name": "Jean",
"last_name": "Reinhardt",
}
def get_users(self):
"""List all users that have access to view."""
return get_user_model.objects.filter(groups__in=["administrator"])
def setUp(self):
# fill testing data here
pass
def log_user_in(self, user):
"""Log in user in argument."""
user.set_password("pass")
self.client.login(username=user.email, password="pass")
formwizard view testing¶
from django.test import TestCase
from keepcool.testers import NamedFormwizardTester
class KeepcoolBase(object):
def log_user_in(self, user):
"""Log in user in argument."""
user.set_password("pass")
self.client.login(username=user.email, password="pass")
def setUp(self):
# fill testing data here
pass
class PurchaseWizardData(object):
"""
PurchaseWizard testing data.
PurchaseWizardData defines a set of data to be used in
testing with the NamedFormwizardTester class."""
wizard_url_name = "client_buy"
wizard_url_step_name = "client_buy_step"
wizard_done_step_name = "buy_done"
wizard_steps = ["products", "configuration", "discount"]
wizard_form_data = {
"products": {
# all your product form data.
"client_purchase_wizard_view-current_step": "products"
},
"configuration": {
# all your configuration form data.
"client_purchase_wizard_view-current_step": "configuration",
},
"discount": {
# all your summary form data.
"client_purchase_wizard_view-current_step": "discount"
},
}
class PurchaseWizardViewTest(PurchaseWizardData, NamedFormwizardTester,
KeepcoolBase, TestCase):
url_name = "client_buy"
expected_status_code = 200
braces access restricted view¶
- group_required protection
class ViewTest(
#...,
TestCase):
# ...
group_required = ["administrators", ]
- permission_required production
class ViewTest(
#...,
TestCase):
# ...
permission_required = "app_name.perm_name"