def test04_checkName(self): """test04_checkName test checkName static function""" # Empty string. self.assertEquals( userClass.checkName(""), (False, mylimits.NAME_TOO_SHORT, "login name must be at least 3 characters long") ) # First, loops to test length only. All generated strings should be valid # [A-Z] [a-z] atoZ = [chr(xx) for xx in range(65, 91) + range(97, 123)] underbar = ["_"] # [0-9] nums = [chr(xx) for xx in range(48, 58)] weirdChars = [chr(xx) for xx in range(33, 48) + range(91, 94)] # SPEED NOTE: replaced atoZ with [ 'a', 'z', 'h', 'H', 'A', 'Z' ] for speed for first in ["a", "z", "h", "H", "A", "Z"]: for cc in ["a", "z", "A", "Z"] + nums + underbar: name = first while len(name) < userClass.NAME_LENGTH_MIN: self.assertEquals( userClass.checkName(name), (False, mylimits.NAME_TOO_SHORT, "login name must be at least 3 characters long"), ) name += cc while len(name) <= userClass.NAME_LENGTH_MAX: self.assertEquals(userClass.checkName(name), (True, None, None)) if len(name) < userClass.NAME_LENGTH_MAX: for dd in underbar + nums: self.assertEquals( userClass.checkName(dd + name), (False, mylimits.NAME_MUST_START_WITH_LETTER, "login name must start with a letter"), ) self.assertEquals(userClass.checkName(name + dd), (True, None, None)) for dd in weirdChars: self.assertEquals( userClass.checkName(dd + name), (False, mylimits.NAME_MUST_START_WITH_LETTER, "login name must start with a letter"), ) self.assertEquals( userClass.checkName(name + dd), ( False, mylimits.NAME_NOT_ALNUM, "login name must be all letters, digits or underscore ", ), ) name += cc for kk in range(20): self.assertEquals( userClass.checkName(name), (False, mylimits.NAME_TOO_LONG, "login name must be at most 50 characters long"), )
def test04_checkName(self): """test04_checkName test checkName static function""" # Empty string. self.assertEquals(userClass.checkName(""), (False, mylimits.NAME_TOO_SHORT, 'login name must be at least 5 characters long')) # First, loops to test length only. All generated strings should be valid # [A-Z] [a-z] atoZ = [chr(xx) for xx in range(65, 91) + range(97, 123)] underbar = ['_'] # [0-9] nums = [chr(xx) for xx in range(48, 58)] weirdChars = [chr(xx) for xx in range(33, 48) + range(91, 94)] # SPEED NOTE: replaced atoZ with [ 'a', 'z', 'h', 'H', 'A', 'Z' ] for speed for first in ['a', 'z', 'h', 'H', 'A', 'Z']: for cc in ['a', 'z', 'A', 'Z'] + nums + underbar: name = first while len(name) < userClass.NAME_LENGTH_MIN: self.assertEquals( userClass.checkName(name), (False, mylimits.NAME_TOO_SHORT, 'login name must be at least 5 characters long')) name += cc while len(name) <= userClass.NAME_LENGTH_MAX: self.assertEquals(userClass.checkName(name), (True, None, None)) if len(name) < userClass.NAME_LENGTH_MAX: for dd in underbar + nums: self.assertEquals( userClass.checkName(dd + name), (False, mylimits.NAME_MUST_START_WITH_LETTER, 'login name must start with a letter')) self.assertEquals(userClass.checkName(name + dd), (True, None, None)) for dd in weirdChars: self.assertEquals( userClass.checkName(dd + name), (False, mylimits.NAME_MUST_START_WITH_LETTER, 'login name must start with a letter')) self.assertEquals(userClass.checkName(name + dd), ( False, mylimits.NAME_NOT_ALNUM, 'login name must be all letters, digits or underscore ' )) name += cc for kk in range(20): self.assertEquals( userClass.checkName(name), (False, mylimits.NAME_TOO_LONG, 'login name must be at most 50 characters long'))
def lines2pool(self, lines): return filter(lambda string: checkName(string)[0], map(lambda string: string[:-1], lines))
def lines2pool(self, lines): return filter(lambda string: checkName(string)[0], map(lambda string: string[:-1], lines))