X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/c3be4f19f3d6465ff4c1110a1a7e7a0686f8dc37..e6ea27d845697c1544c6a1bbcd71b624275648e7:/tests/user.py diff --git a/tests/user.py b/tests/user.py index 345fdef..2e5f86e 100755 --- a/tests/user.py +++ b/tests/user.py @@ -30,6 +30,8 @@ def test(): users = c.users() assert dtest.lists_have_same_contents(users, ["fred", "bob", "root"]) + rights = c.userinfo("bob", "rights") + print " new user rights are: %s" % rights print " checking new user can log in" c = disorder.client(user="bob", password="bobpass") c.version() @@ -53,6 +55,30 @@ def test(): users = c.users() assert dtest.lists_have_same_contents(users, ["fred", "root"]) + print " creating the guest user" + dtest.command(["disorder", + "--config", disorder._configfile, "--no-per-user-config", + "--user", "root", "setup-guest"]) + print " logging in as guest user" + gc = disorder.client(user="guest", password="") + gc.version() + print " testing user registration" + cs = gc.register("joe", "joepass", "joe@nowhere.invalid") + print " confirmation string is %s" % cs + print " checking unconfirmed user cannot log in" + jc = disorder.client(user="joe", password="joepass") + try: + jc.version() + print "*** should not be able to log in before confirmation ***" + assert False + except disorder.operationError: + pass # good + print " confirming user" + gc = disorder.client(user="guest", password="") + gc.confirm(cs) + print " checking confirmed user can log in" + jc = disorder.client(user="joe", password="joepass") + jc.version() if __name__ == '__main__': dtest.run()