Esempio n. 1
0
 def test_password_change_clears_sessions(self):
     factories.SessionFactory(user=self.user)
     factories.SessionFactory(user=self.user)
     factories.SessionFactory(user=self.user)
     assert_equal(3, Session.find().count())
     self.user.set_password('killerqueen')
     assert_equal(0, Session.find().count())
Esempio n. 2
0
 def test_get_cookie(self):
     user = AuthUserFactory()
     create_delta = Delta(lambda: Session.find().count(), lambda value: value + 1)
     with AssertDeltas(create_delta):
         utils.get_cookie_for_user(user)
     get_delta = Delta(lambda: Session.find().count())
     with AssertDeltas(get_delta):
         utils.get_cookie_for_user(user)
Esempio n. 3
0
    def test_remove_session_for_user(self):
        factories.SessionFactory(user=self.user)

        # sanity check
        assert_equal(1, Session.find().count())

        utils.remove_sessions_for_user(self.user)
        assert_equal(0, Session.find().count())

        factories.SessionFactory()
        factories.SessionFactory(user=self.user)

        # sanity check
        assert_equal(2, Session.find().count())

        utils.remove_sessions_for_user(self.user)
        assert_equal(1, Session.find().count())
Esempio n. 4
0
def get_cookie_for_user(user):
    sessions = Session.find(Q('data.auth_user_id', 'eq',
                              user._id)).sort('-date_modified')
    if sessions:
        session = sessions[0]
    else:
        session = Session(
            data={
                'auth_user_id': user._id,
                'auth_user_username': user.username,
                'auth_user_fullname': user.fullname,
            })
        session.save()
    signer = itsdangerous.Signer(site_settings.SECRET_KEY)
    return signer.sign(session._id)
Esempio n. 5
0
def get_cookie_for_user(user):
    sessions = Session.find(
        Q('data.auth_user_id', 'eq', user._id)
    ).sort(
        '-date_modified'
    )
    if sessions:
        session = sessions[0]
    else:
        session = Session(data={
            'auth_user_id': user._id,
            'auth_user_username': user.username,
            'auth_user_fullname': user.fullname,
        })
        session.save()
    signer = itsdangerous.Signer(site_settings.SECRET_KEY)
    return signer.sign(session._id)
Esempio n. 6
0
 def setUp(self):
     super(TestClearSessions, self).setUp()
     now = datetime.datetime.utcnow()
     self.dates = [
         now,
         now - relativedelta.relativedelta(months=2),
         now - relativedelta.relativedelta(months=4),
     ]
     self.sessions = [Session() for _ in range(len(self.dates))]
     for session in self.sessions:
         session.save()
     # Manually set `date_created` fields in MongoDB.
     for idx, date in enumerate(self.dates):
         self.session_collection.update(
             {'_id': self.sessions[idx]._id},
             {'$set': {'date_modified': date}},
         )
     Session._clear_caches()
     assert_equal(
         Session.find().count(),
         3,
     )
Esempio n. 7
0
 def setUp(self):
     super(TestClearSessions, self).setUp()
     now = datetime.datetime.utcnow()
     self.dates = [
         now,
         now - relativedelta.relativedelta(months=2),
         now - relativedelta.relativedelta(months=4),
     ]
     self.sessions = [Session() for _ in range(len(self.dates))]
     for session in self.sessions:
         session.save()
     # Manually set `date_created` fields in MongoDB.
     for idx, date in enumerate(self.dates):
         self.session_collection.update(
             {'_id': self.sessions[idx]._id},
             {'$set': {
                 'date_modified': date
             }},
         )
     Session._clear_caches()
     assert_equal(
         Session.find().count(),
         3,
     )
Esempio n. 8
0
 def test_clear_sessions_relative(self):
     clear_sessions_relative(3)
     assert_equal(
         Session.find().count(),
         2,
     )
Esempio n. 9
0
 def test_clear_sessions(self):
     clear_sessions(self.dates[1])
     assert_equal(
         Session.find().count(),
         2,
     )
Esempio n. 10
0
 def test_clear_sessions_relative(self):
     clear_sessions_relative(3)
     assert_equal(
         Session.find().count(),
         2,
     )
Esempio n. 11
0
 def test_clear_sessions(self):
     clear_sessions(self.dates[1])
     assert_equal(
         Session.find().count(),
         2,
     )
Esempio n. 12
0
 def test_remove_session(self):
     session = SessionFactory(user=self.user)
     assert_equal(1, Session.find().count())
     utils.remove_session(session)
     assert_equal(0, Session.find().count())