Example #1
0
    def test_session_with_not_support_cookie_docomo(self):
        d = dict(NOT_SUPPORT_COOKIE_DOCOMO)
        del d['HTTP_X_DCMGUID']
        request = self.factory.get('/', **d)
        response = HttpResponse('Session test')
        middleware1 = DeviceDetectionMiddleware()
        middleware2 = SessionMiddleware()

        middleware1.process_request(request)
        response = middleware2.process_request(request)

        # without '?guid=pn', DoCoMo server does not return UID thus
        # the middleware redirect when no ?guid=on is found
        self.assertNotEqual(response, None)
        response.client = self.client   # monkey patch
        self.assertRedirects(response, '/?guid=on')

        request = self.factory.get('/?guid=on', **NOT_SUPPORT_COOKIE_DOCOMO)
        response = HttpResponse('Session test')
        middleware1 = DeviceDetectionMiddleware()
        middleware2 = SessionMiddleware()

        middleware1.process_request(request)
        response = middleware2.process_request(request)

        # with guid=on, the middleware should not redirect
        self.assertEqual(response, None)