Exemple #1
0
    def test_key_auth_decorator(self):

        u = user(username="******", email="*****@*****.**", save=True)

        key = Key(user=u)
        secret = key.generate_secret()
        key.save()

        @accepts_auth_key
        def fake_view(request, foo, bar):
            return (foo, bar)

        cases = ((key.key, secret, True), (key.key, 'FAKE', False),
                 ('FAKE', secret, False), ('FAKE', 'FAKE', False))

        for k, s, success in cases:

            request = HttpRequest()
            request.user = AnonymousUser()

            auth = '%s:%s' % (k, s)
            b64_auth = base64.encodestring(auth)
            request.META['HTTP_AUTHORIZATION'] = 'Basic %s' % b64_auth

            foo, bar = fake_view(request, 'foo', 'bar')
            eq_('foo', foo)
            eq_('bar', bar)

            if not success:
                ok_(not request.user.is_authenticated())
            else:
                ok_(request.user.is_authenticated())
                ok_(request.user == u)
                ok_(request.authkey)
                ok_(request.authkey == key)
Exemple #2
0
    def setUp(self):
        username = '******'
        password = '******'
        self.email = '*****@*****.**'

        self.user = user(username=username, email=self.email,
                         password=password, save=True)

        self.client.login(username=username, password=password)

        self.user2 = user(username='******', email='*****@*****.**',
                          save=True)

        self.key1 = Key(user=self.user, description='Test Key 1')
        self.key1.save()
        self.key2 = Key(user=self.user, description='Test Key 2')
        self.key2.save()
        self.key3 = Key(user=self.user2, description='Test Key 3')
        self.key3.save()
Exemple #3
0
    def setUp(self):
        self.username = '******'
        self.password = '******'
        self.email = '*****@*****.**'

        self.user = User(username=self.username, email=self.email)
        self.user.set_password(self.password)
        self.user.save()

        self.user2 = User(username='******', email='*****@*****.**')
        self.user2.save()

        self.key1 = Key(user=self.user, description='Test Key 1')
        self.key1.save()
        self.key2 = Key(user=self.user, description='Test Key 2')
        self.key2.save()
        self.key3 = Key(user=self.user2, description='Test Key 3')
        self.key3.save()

        self.client = Client()
Exemple #4
0
 def test_secret_generation(self):
     """Generated secret should be saved as a hash and pass a check"""
     key = Key(user=self.user)
     secret = key.generate_secret()
     key.save()
     ok_(key.key)
     ok_(key.hashed_secret)
     ok_(len(key.hashed_secret) > 0)
     ok_(len(secret) > 0)
     ok_(secret != key.hashed_secret)
     ok_(not key.check_secret("I AM A FAKE"))
     ok_(key.check_secret(secret))
Exemple #5
0
 def test_secret_generation(self):
     """Generated secret should be saved as a hash and pass a check"""
     u = user(username="******", email="*****@*****.**", save=True)
     key = Key(user=u)
     secret = key.generate_secret()
     key.save()
     ok_(key.key)
     ok_(key.hashed_secret)
     ok_(len(key.hashed_secret) > 0)
     ok_(len(secret) > 0)
     ok_(secret != key.hashed_secret)
     ok_(not key.check_secret("I AM A FAKE"))
     ok_(key.check_secret(secret))