40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
"""dummy policy tests"""
 | 
						|
from django.test import TestCase
 | 
						|
from guardian.shortcuts import get_anonymous_user
 | 
						|
 | 
						|
from passbook.policies.dummy.forms import DummyPolicyForm
 | 
						|
from passbook.policies.dummy.models import DummyPolicy
 | 
						|
from passbook.policies.engine import PolicyRequest
 | 
						|
 | 
						|
 | 
						|
class TestDummyPolicy(TestCase):
 | 
						|
    """Test dummy policy"""
 | 
						|
 | 
						|
    def setUp(self):
 | 
						|
        super().setUp()
 | 
						|
        self.request = PolicyRequest(user=get_anonymous_user())
 | 
						|
 | 
						|
    def test_policy(self):
 | 
						|
        """test policy .passes"""
 | 
						|
        policy: DummyPolicy = DummyPolicy.objects.create(
 | 
						|
            name="dummy", wait_min=1, wait_max=2
 | 
						|
        )
 | 
						|
        result = policy.passes(self.request)
 | 
						|
        self.assertFalse(result.passing)
 | 
						|
        self.assertEqual(result.messages, ("dummy",))
 | 
						|
 | 
						|
    def test_form(self):
 | 
						|
        """test form"""
 | 
						|
        form = DummyPolicyForm(
 | 
						|
            data={
 | 
						|
                "name": "dummy",
 | 
						|
                "negate": False,
 | 
						|
                "order": 0,
 | 
						|
                "timeout": 1,
 | 
						|
                "result": True,
 | 
						|
                "wait_min": 1,
 | 
						|
                "wait_max": 2,
 | 
						|
            }
 | 
						|
        )
 | 
						|
        self.assertTrue(form.is_valid())
 |