def test_can_get_limiter_by_url(self):
        self.db.query(Limiter).delete()

        limiter = LimiterFactory.create(url='http://test.com/')

        loaded_limiter = Limiter.by_url('http://test.com/', self.db)
        expect(loaded_limiter.id).to_equal(limiter.id)

        invalid_limiter = Limiter.by_url('http://test.com/1', self.db)
        expect(invalid_limiter).to_be_null()
    def test_can_save_limiters_with_access_token(self):
        self.db.query(Limiter).delete()
        self.db.query(User).delete()

        dt = datetime(2014, 2, 14, 15, 0, 30)

        UserFactory(email='*****@*****.**')

        user_data = dumps({
            'is_superuser': True,
            'fullname': u'Marcelo Jorge Vieira',
            'last_login': dt,
            'email': u'*****@*****.**'
        })

        self.mock_request(code=200, body=user_data)

        yield self.http_client.fetch(
            self.get_url('/limiters'),
            method='POST',
            body=dumps({
                'url': 'http://globo.com/',
                'maxValue': 10
            }),
            headers={'X-AUTH-HOLMES': '111'}
        )

        loaded_limiter = Limiter.by_url('http://globo.com/', self.db)
        expect(loaded_limiter).not_to_be_null()
    def test_can_add_or_update_limiter(self):
        self.db.query(Limiter).delete()

        limiters = Limiter.get_all(self.db)
        expect(limiters).to_equal([])

        # Add
        url = 'http://globo.com/'
        value = 2
        Limiter.add_or_update_limiter(self.db, url, value)
        limiter = Limiter.by_url(url, self.db)

        expect(limiter.value).to_equal(2)

        # Update
        url = 'http://globo.com/'
        value = 3
        Limiter.add_or_update_limiter(self.db, url, value)
        limiter = Limiter.by_url(url, self.db)

        expect(limiter.value).to_equal(3)
    def test_can_save_limiters_as_superuser(self):
        self.db.query(Limiter).delete()
        self.db.query(User).delete()
        user = UserFactory(email='*****@*****.**', is_superuser=True)

        response = yield self.authenticated_fetch(
            '/limiters', user_email=user.email, method='POST', body=dumps({
                'url': 'http://globo.com/',
                'maxValue': 10
            })
        )
        expect(response).not_to_be_null()
        expect(response.code).to_equal(200)

        loaded_limiter = Limiter.by_url('http://globo.com/', self.db)
        expect(loaded_limiter).not_to_be_null()
Exemple #5
0
    def test_can_save_limiters_as_superuser(self):
        self.db.query(Limiter).delete()
        self.db.query(User).delete()
        user = UserFactory(email='*****@*****.**', is_superuser=True)

        response = yield self.authenticated_fetch('/limiters',
                                                  user_email=user.email,
                                                  method='POST',
                                                  body=dumps({
                                                      'url':
                                                      'http://globo.com/',
                                                      'maxValue': 10
                                                  }))
        expect(response).not_to_be_null()
        expect(response.code).to_equal(200)

        loaded_limiter = Limiter.by_url('http://globo.com/', self.db)
        expect(loaded_limiter).not_to_be_null()