From f9f4f1c57ac9a2eba6a7a0d68ca0bc66ae9d92cc Mon Sep 17 00:00:00 2001 From: Brian Wilson Date: Mon, 2 Jun 2014 16:16:56 -0400 Subject: [PATCH] Add additional tests for tracking of sessions. --- common/djangoapps/track/tests/test_middleware.py | 7 +++++++ common/djangoapps/track/tests/test_views.py | 8 ++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/common/djangoapps/track/tests/test_middleware.py b/common/djangoapps/track/tests/test_middleware.py index 2c1afb4ee5..a280886311 100644 --- a/common/djangoapps/track/tests/test_middleware.py +++ b/common/djangoapps/track/tests/test_middleware.py @@ -124,6 +124,13 @@ class TrackMiddlewareTestCase(TestCase): 'session': expected_session_key, }) + @override_settings(SECRET_KEY='85920908f28904ed733fe576320db18cabd7b6cd') + def test_session_key_encryption(self): + session_key = '665924b49a93e22b46ee9365abf28c2a' + expected_session_key = '3b81f559d14130180065d635a4f35dd2' + encrypted_session_key = self.track_middleware.encrypt_session_key(session_key) + self.assertEquals(encrypted_session_key, expected_session_key) + def test_request_headers(self): ip_address = '10.0.0.0' user_agent = 'UnitTest/1.0' diff --git a/common/djangoapps/track/tests/test_views.py b/common/djangoapps/track/tests/test_views.py index 9d8871fa81..4a66db35a4 100644 --- a/common/djangoapps/track/tests/test_views.py +++ b/common/djangoapps/track/tests/test_views.py @@ -7,6 +7,8 @@ from freezegun import freeze_time from django.test import TestCase from django.test.client import RequestFactory +from eventtracking import tracker + from datetime import datetime expected_time = datetime(2013, 10, 3, 8, 24, 55) @@ -34,11 +36,12 @@ class TestTrackViews(TestCase): 'event_type': sentinel.event_type, 'event': {} }) - views.user_track(request) + with tracker.get_tracker().context('edx.request', {'session': sentinel.session}): + views.user_track(request) expected_event = { 'username': 'anonymous', - 'session': '', + 'session': sentinel.session, 'ip': '127.0.0.1', 'event_source': 'browser', 'event_type': str(sentinel.event_type), @@ -50,6 +53,7 @@ class TestTrackViews(TestCase): 'context': { 'course_id': 'foo/bar/baz', 'org_id': 'foo', + 'session': sentinel.session, }, } self.mock_tracker.send.assert_called_once_with(expected_event)