def test_userInfoLoginMethods(self): """ Check that C{createUser} creates only two L{LoginMethod}s on the account. """ username, domain = u'fjones', u'divmod.com' signup = self.createFreeSignup(free_signup.userInfo.itemClass) signup.createUser(u'Frank Jones', username, domain, u'asdf', u'*****@*****.**') account = self.ls.accountByAddress(username, domain) query = list( self.store.query(userbase.LoginMethod, userbase.LoginMethod.account == account, sort=userbase.LoginMethod.internal.ascending)) self.assertEquals(len(query), 2) self.assertEquals(query[0].internal, False) self.assertEquals(query[0].verified, False) self.assertEquals(query[0].localpart, u'fj') self.assertEquals(query[0].domain, u'example.com') self.assertEquals(query[1].internal, True) self.assertEquals(query[1].verified, True) self.assertEquals(query[1].localpart, username) self.assertEquals(query[1].domain, domain)
def test_usernameAvailability(self): """ Test that the usernames which ought to be available are and that those which aren't are not: Only syntactically valid localparts are allowed. Localparts which are already assigned are not allowed. Only domains which are actually served by this mantissa instance are allowed. """ signup = self.createFreeSignup(free_signup.userInfo.itemClass) # Allowed: unused localpart, same domain as the administrator created # by setUp. self.failUnless(signup.usernameAvailable(u'alice', u'localhost')[0]) # Not allowed: unused localpart, unknown domain. self.failIf(signup.usernameAvailable(u'alice', u'example.com')[0]) # Not allowed: used localpart, same domain as the administrator created # by setUp. self.failIf(signup.usernameAvailable(u'admin', u'localhost')[0]) self.assertEquals(signup.usernameAvailable(u'fjones', u'localhost'), [True, u'Username already taken']) signup.createUser( realName=u"Frank Jones", username=u'fjones', domain=u'localhost', password=u'asdf', emailAddress=u'*****@*****.**') self.assertEquals(signup.usernameAvailable(u'fjones', u'localhost'), [False, u'Username already taken']) ss = self.ls.accountByAddress(u"fjones", u"localhost").avatars.open() self.assertEquals(ss.query(Installation).count(), 1)
def test_usernameAvailability(self): """ Test that the usernames which ought to be available are and that those which aren't are not: Only syntactically valid localparts are allowed. Localparts which are already assigned are not allowed. Only domains which are actually served by this mantissa instance are allowed. """ signup = self.createFreeSignup(free_signup.userInfo.itemClass) # Allowed: unused localpart, same domain as the administrator created # by setUp. self.failUnless(signup.usernameAvailable(u'alice', u'localhost')[0]) # Not allowed: unused localpart, unknown domain. self.failIf(signup.usernameAvailable(u'alice', u'example.com')[0]) # Not allowed: used localpart, same domain as the administrator created # by setUp. self.failIf(signup.usernameAvailable(u'admin', u'localhost')[0]) self.assertEquals(signup.usernameAvailable(u'fjones', u'localhost'), [True, u'Username already taken']) signup.createUser(realName=u"Frank Jones", username=u'fjones', domain=u'localhost', password=u'asdf', emailAddress=u'*****@*****.**') self.assertEquals(signup.usernameAvailable(u'fjones', u'localhost'), [False, u'Username already taken']) ss = self.ls.accountByAddress(u"fjones", u"localhost").avatars.open() self.assertEquals(ss.query(Installation).count(), 1)