Example #1
0
def test_user_id_requirement():
    user = User(username='******', password='******')
    
    assert user.username == 'joe'
    assert user.id == "org.couchdb.user:joe"

    db = create_test_users_db()
    
    user.store(db)
    user = User.load(db, "org.couchdb.user:joe")
    assert user.username == 'joe'
    
    user = User.get_by_username(db, "joe")
    assert user.username == 'joe'
    assert user.id == "org.couchdb.user:joe"
Example #2
0
def test_user_password():

    user = User(username='******', password='******')
    
    
    assert user.username == 'joe'
    assert user.check_password('fr3d')
    assert not user.check_password('fr01d')
    
    db = create_test_users_db()
    
    user.store(db)
    user = User.load(db, user.id)
    
    assert user.check_password('fr3d')
    assert not user.check_password('fr01d')
    assert user.username == 'joe'
Example #3
0
    def user(self):
        """
        Property that returns the currently logged in user
        """

        if self._current_user is None and self.USER_SESSION_KEY in self.session:
            try:
                user_id = self.session[self.USER_SESSION_KEY]
                udb = self.get_users_database()
                self._current_user = User.load(udb, user_id)
            except ResourceNotFound:
                # non-existant user, wipe this session
                self.session.invalidate()

        if self._current_user is None:
            self._current_user = AnonymousUser() 
        
        return self._current_user