示例#1
0
    def test_create_decrypt_wrong_private_key(self):
        entry = Entry.create(
            self.device.id, {'password': '******'},
            user=UserFactory.create())

        assert entry.salt is not None
        assert entry.decrypt('password', self.device, PRIVATE_KEY2) is None
示例#2
0
    def test_values_can_contain_arbitrary_byte_values(self):
        entry = Entry.create(
            self.device.id, {'password': b'secret'},
            user=UserFactory.create())

        assert entry.salt is not None
        assert tuple(entry.values.keys()) == ('password',)
示例#3
0
    def test_simple_wrong_device_secret(self, settings):
        user = UserFactory.create(is_superuser=True)
        device = AuthorizedDeviceFactory.create(user=user)

        client = self.get_client(device.id, PRIVATE_KEY2)

        endpoint = '{0}/api/dummy/'.format(self.liveserver.url)

        response = client.get(endpoint)
        assert response.status_code == 401
        assert response.json()['detail'] == 'Error decoding signature.'
示例#4
0
    def test_simple_unauthorized(self):
        user = UserFactory.create()
        device = AuthorizedDeviceFactory.create(user=user)

        client = self.get_client(device.id, None)

        endpoint = '{0}/api/dummy/'.format(self.liveserver.url)

        response = client.get(endpoint)

        assert response.status_code == 401
示例#5
0
    def test_simple_authorized(self):
        user = UserFactory.create(is_superuser=True)
        device = AuthorizedDeviceFactory.create(user=user)

        client = self.get_client(device.id, PRIVATE_KEY)

        endpoint = '{0}/api/dummy/'.format(self.liveserver.url)

        response = client.get(endpoint)

        assert response.status_code == 200
        assert response.content == b'"{\\"dummy\\": \\"ok\\"}"'
示例#6
0
 def setup(self):
     self.user = UserFactory.create()