Example #1
0
    def test_record_auth(self, _urllib_mock, _requests_mock):
        client = models.Client.objects.get(pk=1)
        user_clients = client.userclients.filter(fbid=100)
        tokens = models.Token.items.filter(fbid__eq=100, appid__eq=471727162864364)
        visitor = models.Visitor.objects.create()
        visit = visitor.visits.create(session_id='sid001', app_id=client.fb_app_id, ip='0.0.0.0')

        facebook.store_oauth_token('PIEZ', 'http://testserver/incoming/SLUGZ/', '1.0',
                                   client_id=client.pk, visit_id=visit.pk)
        self.assertEqual(user_clients.count(), 1)
        self.assertEqual(tokens.query_count(), 1)

        auths = visit.events.filter(event_type='authorized')
        self.assertEqual(len(auths), 1)
        (auth,) = auths
        self.assertEqual(auth.content, 'oauth')
        self.assertIsNone(auth.campaign_id)
        self.assertEqual(auth.visit, visit)

        visitor = models.Visitor.objects.get(visits__visit_id=auth.visit_id) # refresh
        self.assertEqual(visitor, visit.visitor)
        self.assertEqual(visitor.fbid, 100)
Example #2
0
    def test_store_auth(self, _urllib_mock, _requests_mock):
        user_clients = models.UserClient.objects.filter(fbid=100, client_id=1)
        tokens = models.Token.items.filter(fbid__eq=100, appid__eq=471727162864364)
        self.assertEqual(user_clients.count(), 0)
        self.assertEqual(tokens.query_count(), 0)

        token = facebook.store_oauth_token('PIEZ', 'http://testserver/incoming/SLUGZ/', '1.0',
                                           client_id=1)

        self.assertEqual(token, (100, 471727162864364, 'TOKZ', '1.0'))
        self.assertEqual(user_clients.count(), 1)
        self.assertEqual(tokens.query_count(), 1)
        extended_token = tokens.filter_get()
        self.assertEqual(extended_token.fbid, 100)
        self.assertEqual(extended_token.token, 'tok1')
Example #3
0
 def test_invalid_token(self, _urllib_mock, _requests_mock):
     user_clients = models.UserClient.objects.filter(fbid=100, client_id=1)
     tokens = models.Token.items.filter(fbid__eq=100, appid__eq=471727162864364)
     facebook.store_oauth_token('PIEZ', 'http://testserver/incoming/SLUGZ/', '1.0', client_id=1)
     self.assertEqual(user_clients.count(), 0)
     self.assertEqual(tokens.query_count(), 0)