Example #1
0
    def test_already_cookie_good_client(self):
        start_response = mock.MagicMock()
        sess = self.store.create()
        sess['client_id'] = sha1('salt')
        self.smgr._session_store.commit(sess)
        self.smgr._session = sess
        self.environ['HTTP_COOKIE'] = 'sess=' + sess._id + '; Path=/'
        ret, headers = self.smgr(self.environ, start_response)

        self.assertEqual(self.environ['app.session']._id, sess._id)
        self.assertIn(sess._id, headers[0][1])
Example #2
0
    def test_timeout(self):
        start_response = mock.MagicMock()
        sess = self.store.create()
        sess['client_id'] = sha1('salt')
        self.smgr._session_store.commit(sess)
        self.smgr._session = sess
        self.environ['HTTP_COOKIE'] = 'sess=' + sess._id + '; Path=/'
        self.smgr(self.environ, start_response)

        self.assertIsNotNone(self.store.checkout(sess._id))
        with patch('time.time') as time:
            time.return_value = 99999999999999.99
            self.store.vacuum()
            gc.collect()
            self.assertIsNone(self.store.checkout(sess._id))
Example #3
0
    def test_correct(self):
        self.assertNotIn('HTTP_COOKIE', self.environ)

        start_response = mock.MagicMock()
        ret, headers = self.smgr(self.environ, start_response)

        self.assertIn('app.session', self.environ)
        self.assertIsInstance(self.environ['app.session'], Session)
        self.assertIn('testing', self.environ['app.session'])
        self.assertTrue(self.environ['app.session']['testing'])

        self.assertIn('client_id', self.environ['app.session'])
        self.assertEqual(self.environ['app.session']['client_id'], sha1('salt'))

        self.assertIn('Set-Cookie', map(lambda x: x[0], headers))
        cookies = filter(lambda x: x[0] == 'Set-Cookie', headers)
        for cookie in cookies:
            self.assertIn('sess', cookie[1])
        self.assertEqual(ret, 'hello world')