|
@@ -712,6 +712,55 @@ class TestModelverse(unittest.TestCase):
|
|
|
except ReadPermissionDenied:
|
|
|
pass
|
|
|
|
|
|
+ def test_op_user_password(self):
|
|
|
+ # Test initial password
|
|
|
+ user_logout()
|
|
|
+ try:
|
|
|
+ login("user", "user2")
|
|
|
+ self.fail()
|
|
|
+ except PermissionDenied:
|
|
|
+ pass
|
|
|
+ login("user", "user")
|
|
|
+
|
|
|
+ # Change it to user2
|
|
|
+ user_password("user", "user2")
|
|
|
+ user_logout()
|
|
|
+ try:
|
|
|
+ login("user", "user")
|
|
|
+ self.fail()
|
|
|
+ except PermissionDenied:
|
|
|
+ pass
|
|
|
+ login("user", "user2")
|
|
|
+
|
|
|
+ # Reset for further tests
|
|
|
+ user_password("user", "user")
|
|
|
+
|
|
|
+ # Change other users password
|
|
|
+ try:
|
|
|
+ user_password("user2", "user10")
|
|
|
+ self.fail()
|
|
|
+ except UserPermissionDenied:
|
|
|
+ user_logout()
|
|
|
+ login("user2", "user2")
|
|
|
+ user_logout()
|
|
|
+
|
|
|
+ # But admin can do that
|
|
|
+ self.do_as_user("admin", user_password, ["user2", "user10"])
|
|
|
+ user_logout()
|
|
|
+ login("user2", "user10")
|
|
|
+ user_logout()
|
|
|
+ login("user", "user")
|
|
|
+
|
|
|
+ # Admin cannot change password of non-existing user
|
|
|
+ try:
|
|
|
+ self.do_as_user("admin", user_password, ["user10", "user10"])
|
|
|
+ self.fail()
|
|
|
+ except UnknownUser:
|
|
|
+ user_logout()
|
|
|
+ # Check that we can still create the new user with whatever password we want
|
|
|
+ login("user10", "user11")
|
|
|
+ user_logout()
|
|
|
+
|
|
|
def test_op_model_types(self):
|
|
|
model_add("users/user/test/a", "formalisms/SimpleClassDiagrams")
|
|
|
|