def test_getAll(self): self.assertEqual([], RestAuthUser.get_all(self.conn, flat=True)) RestAuthUser.create(self.conn, username) self.assertEqual([username], RestAuthUser.get_all(self.conn, flat=True)) RestAuthUser.create(self.conn, username2) self.assertCountEqual([username, username2], RestAuthUser.get_all(self.conn, flat=True))
def test_createUserTwice(self): user = RestAuthUser.create(self.conn, "mati", "password") try: RestAuthUser.create(self.conn, "mati", "new password") self.fail() except UserExists: self.assertEqual([user], RestAuthUser.get_all(self.conn)) self.assertTrue(user.verify_password("password")) self.assertFalse(user.verify_password("new password"))
def test_createUserWithNoPassword(self): user1 = RestAuthUser.create(self.conn, username) self.assertEqual([user1], RestAuthUser.get_all(self.conn)) self.assertEqual(user1, RestAuthUser.get(self.conn, username)) # check that no password verifies as correct self.assertFalse(user1.verify_password("")) self.assertFalse(user1.verify_password(password)) # use empty string instead: user2 = RestAuthUser.create(self.conn, username + "1", "") self.assertCountEqual([user1, user2], RestAuthUser.get_all(self.conn)) self.assertEqual(user2, RestAuthUser.get(self.conn, username + "1")) # check that no password verifies as correct self.assertFalse(user2.verify_password("")) self.assertFalse(user2.verify_password(password))
def test_setTooShortPassword(self): user = RestAuthUser.create(self.conn, username, password) try: user.set_password("x") self.fail() except error.PreconditionFailed: self.assertTrue(user.verify_password(password)) self.assertFalse(user.verify_password("x"))
def setUp(self): super(SimpleUserGroupTests, self).setUp() if RestAuthUser.get_all(self.conn): raise RuntimeError("Found leftover users.") if RestAuthGroup.get_all(self.conn): raise RuntimeError("Found leftover groups.") self.user = RestAuthUser.create(self.conn, username, password) self.group = RestAuthGroup.create(self.conn, groupname)
def test_badRequestPut(self): # we need to create it first, otherwise we might get a 404 instead user = RestAuthUser.create(self.conn, 'testuser', 'password') try: self.conn.put(str('/users/testuser/'), {'bad': 'request'}) self.fail() except error.BadRequest: pass user.remove()
def test_existingUser(self): user = RestAuthUser.create(self.conn, username) try: RestAuthUser.create_test(self.conn, username) self.fail() except UserExists: self.assertEqual([user], RestAuthUser.get_all(self.conn)) finally: user.remove()
def test_removeUser(self): user = RestAuthUser.create(self.conn, username, password) user.remove() self.assertEqual([], RestAuthUser.get_all(self.conn)) try: RestAuthUser.get(self.conn, username) self.fail() except error.ResourceNotFound as e: self.assertEqual("user", e.get_type())
def test_disableUser(self): newpass = "******" + password user = RestAuthUser.create(self.conn, username, password) self.assertTrue(user.verify_password(password)) self.assertFalse(user.verify_password(newpass)) user.set_password() self.assertFalse(user.verify_password(password)) self.assertFalse(user.verify_password(newpass)) self.assertFalse(user.verify_password(""))
def test_UnsupportedMediaTypePut(self): # we need to create it first, otherwise we might get a 404 instead old = self.conn.content_handler user = RestAuthUser.create(self.conn, 'testuser', 'password') self.conn.set_content_handler(wrongContentHandler()) try: self.conn.put('/users/testuser/', {'foo': 'bar'}) self.fail() except error.UnsupportedMediaType: pass finally: user.remove() self.conn.set_content_handler(old)
def test_removePropertyFromWrongUser(self): """ Purpose of this test is to add a property to one user, and verify that deleting it from the *other* user does not delete it for the original user. """ user_2 = RestAuthUser.create(self.conn, "new user", "password") self.assertEquals(None, self.user.create_property(propKey, propVal)) try: user_2.remove_property(propKey) self.fail() except error.ResourceNotFound as e: self.assertEqual("property", e.get_type()) self.assertProperties(user=user_2, **{})
def test_createUserWithProperty(self): properties = {propKey: propVal} user = RestAuthUser.create(self.conn, username, password, properties) self.assertProperties(user=user, **properties)
def test_createUserUnicode(self): user = RestAuthUser.create(self.conn, username, "password") self.assertEqual([user], RestAuthUser.get_all(self.conn)) self.assertEqual(user, RestAuthUser.get(self.conn, username))
def test_createUserWithSpace(self): user = RestAuthUser.create(self.conn, "mati space", "password") self.assertEqual([user], RestAuthUser.get_all(self.conn)) self.assertEqual(user, RestAuthUser.get(self.conn, "mati space"))
def setUp(self): super(PropertyBaseTests, self).setUp() if RestAuthUser.get_all(self.conn): raise RuntimeError("Found leftover users.") self.user = RestAuthUser.create(self.conn, username, password)
def test_verifyPassword(self): user = RestAuthUser.create(self.conn, username, password) self.assertTrue(user.verify_password(password)) self.assertFalse(user.verify_password("whatever"))