예제 #1
0
        def app(environ):
            session = environ.get('wsgi.session', None)
            if session:
                id_ = session['id']
                self.assertFalse(id_, 'not delay session')

                Session.unregister(environ, id_)
                cookie = environ.get('wsgi.cookie', None)
                if cookie:
                    sid_cookie = cookie['sid']
                    self.assertTrue(sid_cookie, 'not delay session cookie input')
                    sid = sid_cookie.value
                    self.assertEqual(sid, '1234567890', 'not delay sessionid match')

                if 'wsgi.setcookie' in environ:
                    sid_setcookie = environ['wsgi.setcookie'].get('sid', None)
                    self.assertTrue(sid_setcookie, 'not delay session cookie expires')

            return '200 ok', [], []
예제 #2
0
        def app(environ):
            session = environ.get('wsgi.session', None)
            if session:
                self.assertIs(session.get('id', None), None, 'session id exists')
                self.assertEqual(session.get('name', None), 'sid', 'session name exists')

                data = 'mydata'
                sid, sdata = Session.register(environ, data)
                # print(repr(sid), repr(sdata))
                if sid:
                    storage = session['storage']
                    row = storage.get(sid)
                    self.assertEqual(row[-1].obj, data, 'register session data match')
                    qs = environ.get('QUERY_STRING', None)
                    self.assertTrue(qs, 'register url session')
                    if qs:
                        self.assertRegex(qs, '='.join(('sid', str(sid))), 'register url session id match')
                    if 'wsgi.setcookie' in environ:
                        sid_cookie = environ['wsgi.setcookie'].get('sid', None)
                        self.assertTrue(sid_cookie, 'register cookie session')
                        if sid_cookie:
                            self.assertEqual(sid, sid_cookie.value, 'register cookie session id match')
            return '200 ok', [], []