Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7057419

Browse files
committed
Fixed test_create_redirect_email testcase to check against decoded jwt payload
1 parent 7b0611a commit 7057419

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

stream/tests.py

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
import time
44
from stream.exceptions import ApiKeyException, InputException
55
import random
6+
import jwt
67
from unittest.case import TestCase
78

89
import os
910
import datetime
1011
from stream import serializer
1112
from requests.exceptions import ConnectionError, MissingSchema
12-
from urlparse import urlparse
13-
13+
from urlparse import urlparse, parse_qs
1414

1515
def connect_debug():
1616
return stream.connect(
@@ -644,7 +644,6 @@ def test_create_email_redirect(self):
644644
'auth_type=jwt',
645645
'url=http%3A%2F%2Fgoogle.com%2F%3Fa%3Db%26c%3Dd',
646646
'api_key=ahj2ndz7gsan',
647-
'authorization=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhY3Rpb24iOiIqIiwidXNlcl9pZCI6InRvbW1hc28iLCJyZXNvdXJjZSI6InJlZGlyZWN0X2FuZF90cmFjayJ9.pQ2cBmC7l0WGP9LP7RrvLEbtrw8YWcFtjOqSfoSr2s0',
648647
'events=%5B%7B%22foreign_ids%22%3A+%5B%22tweet%3A1%22%2C+%22tweet%3A2%22%2C+%22tweet%3A3%22%2C+%22tweet%3A4%22%2C+%22tweet%3A5%22%5D%2C+%22feed_id%22%3A+%22user%3Aglobal%22%2C+%22user_id%22%3A+%22tommaso%22%2C+%22location%22%3A+%22email%22%7D%2C+%7B%22user_id%22%3A+%22tommaso%22%2C+%22label%22%3A+%22click%22%2C+%22feed_id%22%3A+%22user%3Aglobal%22%2C+%22location%22%3A+%22email%22%2C+%22position%22%3A+3%2C+%22foreign_id%22%3A+%22tweet%3A1%22%7D%5D',
649648
]
650649
engagement = {'foreign_id': 'tweet:1', 'label': 'click', 'position': 3, 'user_id': 'tommaso', 'location': 'email', 'feed_id': 'user:global'}
@@ -655,6 +654,17 @@ def test_create_email_redirect(self):
655654
user_id = 'tommaso'
656655
redirect_url = self.c.create_redirect_url(target_url, user_id, events)
657656

657+
parsed_url = urlparse(redirect_url)
658+
qs = parse_qs(parsed_url.query)
659+
660+
decoded = jwt.decode(qs['authorization'][0], 'gthc2t9gh7pzq52f6cky8w4r4up9dr6rju9w3fjgmkv6cdvvav2ufe5fv7e2r9qy')
661+
662+
self.assertEqual(decoded, {
663+
'resource': 'redirect_and_track',
664+
'action': '*',
665+
'user_id': 'tommaso'
666+
})
667+
658668
for part in expected_parts:
659669
if part not in redirect_url:
660670
raise ValueError('didnt find %s in url \n %s' % (part, redirect_url))

0 commit comments

Comments
 (0)