1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
from waffle import get_waffle_flag_model, get_waffle_switch_model
from waffle.tests.base import TestCase
class DecoratorTests(TestCase):
def test_flag_must_be_active(self):
resp = self.client.get('/flag-on')
self.assertEqual(404, resp.status_code)
get_waffle_flag_model().objects.create(name='foo', everyone=True)
resp = self.client.get('/flag-on')
self.assertEqual(200, resp.status_code)
def test_flag_must_be_inactive(self):
resp = self.client.get('/flag-off')
self.assertEqual(200, resp.status_code)
get_waffle_flag_model().objects.create(name='foo', everyone=True)
resp = self.client.get('/flag-off')
self.assertEqual(404, resp.status_code)
def test_switch_must_be_active(self):
resp = self.client.get('/switch-on')
self.assertEqual(404, resp.status_code)
get_waffle_switch_model().objects.create(name='foo', active=True)
resp = self.client.get('/switch-on')
self.assertEqual(200, resp.status_code)
def test_switch_must_be_inactive(self):
resp = self.client.get('/switch-off')
self.assertEqual(200, resp.status_code)
get_waffle_switch_model().objects.create(name='foo', active=True)
resp = self.client.get('/switch-off')
self.assertEqual(404, resp.status_code)
def test_switch_must_be_inactive_and_redirect_to_view(self):
resp = self.client.get('/switched_view_with_valid_redirect')
self.assertEqual(302, resp.status_code)
get_waffle_switch_model().objects.create(name='foo', active=True)
resp = self.client.get('/switched_view_with_valid_redirect')
self.assertEqual(200, resp.status_code)
def test_switch_must_be_inactive_and_redirect_to_named_view(self):
resp = self.client.get('/switched_view_with_valid_url_name')
self.assertEqual(302, resp.status_code)
get_waffle_switch_model().objects.create(name='foo', active=True)
resp = self.client.get('/switched_view_with_valid_url_name')
self.assertEqual(200, resp.status_code)
def test_switch_must_be_inactive_and_redirect_to_view_with_args(self):
resp = self.client.get('/switched_view_with_args_with_valid_redirect/1/')
self.assertRedirects(resp, '/foo_view_with_args/1/')
get_waffle_switch_model().objects.create(name='foo', active=True)
resp = self.client.get('/switched_view_with_args_with_valid_redirect/1/')
self.assertEqual(200, resp.status_code)
def test_switch_must_be_inactive_and_redirect_to_named_view_with_args(self):
resp = self.client.get('/switched_view_with_args_with_valid_url_name/1/')
self.assertRedirects(resp, '/foo_view_with_args/1/')
get_waffle_switch_model().objects.create(name='foo', active=True)
resp = self.client.get('/switched_view_with_args_with_valid_url_name/1/')
self.assertEqual(200, resp.status_code)
def test_switch_must_be_inactive_and_not_redirect(self):
resp = self.client.get('/switched_view_with_invalid_redirect')
self.assertEqual(404, resp.status_code)
get_waffle_switch_model().objects.create(name='foo', active=True)
resp = self.client.get('/switched_view_with_invalid_redirect')
self.assertEqual(200, resp.status_code)
def test_flag_must_be_inactive_and_redirect_to_view(self):
resp = self.client.get('/flagged_view_with_valid_redirect')
self.assertEqual(302, resp.status_code)
get_waffle_flag_model().objects.create(name='foo', everyone=True)
resp = self.client.get('/flagged_view_with_valid_redirect')
self.assertEqual(200, resp.status_code)
def test_flag_must_be_inactive_and_redirect_to_named_view(self):
resp = self.client.get('/flagged_view_with_valid_url_name')
self.assertEqual(302, resp.status_code)
get_waffle_flag_model().objects.create(name='foo', everyone=True)
resp = self.client.get('/flagged_view_with_valid_url_name')
self.assertEqual(200, resp.status_code)
def test_flag_must_be_inactive_and_redirect_to_view_with_args(self):
resp = self.client.get('/flagged_view_with_args_with_valid_redirect/1/')
self.assertRedirects(resp, '/foo_view_with_args/1/')
get_waffle_flag_model().objects.create(name='foo', everyone=True)
resp = self.client.get('/flagged_view_with_args_with_valid_redirect/1/')
self.assertEqual(200, resp.status_code)
def test_flag_must_be_inactive_and_redirect_to_named_view_with_args(self):
resp = self.client.get('/flagged_view_with_args_with_valid_url_name/1/')
self.assertRedirects(resp, '/foo_view_with_args/1/')
get_waffle_flag_model().objects.create(name='foo', everyone=True)
resp = self.client.get('/flagged_view_with_args_with_valid_url_name/1/')
self.assertEqual(200, resp.status_code)
def test_flag_must_be_inactive_and_not_redirect(self):
resp = self.client.get('/flagged_view_with_invalid_redirect')
self.assertEqual(404, resp.status_code)
get_waffle_flag_model().objects.create(name='foo', everyone=True)
resp = self.client.get('/flagged_view_with_invalid_redirect')
self.assertEqual(200, resp.status_code)
|