def test_character_set(self): s = PasswordSetting("unit.test") self.assertFalse(s.use_custom_character_set()) self.assertEqual("abcdefghijklmnopqrstuvwxyz" + "ABCDEFGHJKLMNPQRTUVWXYZ" + "0123456789" + "#!\"§$%&/()[]{}=-_+*<>;:.", s.get_character_set()) s.set_custom_character_set("&=Oo0wWsS$#uUvVzZ") self.assertTrue(s.use_custom_character_set()) self.assertEqual("&=Oo0wWsS$#uUvVzZ", s.get_character_set()) s.set_custom_character_set( "abcdefghijklmnopqrstuvwxyz" + "ABCDEFGHJKLMNPQRTUVWXYZ" + "0123456789" + "#!\"§$%&/()[]{}=-_+*<>;:.") self.assertFalse(s.use_custom_character_set()) self.assertEqual("abcdefghijklmnopqrstuvwxyz" + "ABCDEFGHJKLMNPQRTUVWXYZ" + "0123456789" + "#!\"§$%&/()[]{}=-_+*<>;:.", s.get_character_set()) s.set_use_letters(False) self.assertEqual("0123456789#!\"§$%&/()[]{}=-_+*<>;:.", s.get_character_set()) s.set_use_letters(True) s.set_use_digits(False) s.set_use_extra(False) self.assertEqual("abcdefghijklmnopqrstuvwxyzABCDEFGHJKLMNPQRTUVWXYZ", s.get_character_set())
def test_get_character_set(self): s = PasswordSetting("unit.test") self.assertEqual("c", s.get_character_set()[2]) s.set_custom_character_set("axFLp0") self.assertEqual(6, len(s.get_character_set())) self.assertEqual("F", s.get_character_set()[2]) self.assertEqual("0", s.get_character_set()[5])
def test_load_from_json(self): json_str = "{\"domain\": \"unit.test\", \"username\": \"testilinius\", " +\ "\"notes\": \"interesting note\", \"legacyPassword\": \"rtSr?bS,mi\", " +\ "\"usedCharacters\": \"AEIOUaeiou\", \"iterations\": 5341, " +\ "\"length\": 16, \"salt\": \"ZmFzY2luYXRpbmc=\", " +\ "\"cDate\": \"2001-01-01T02:14:12\", \"mDate\": \"2005-01-01T01:14:12\"}" s = PasswordSetting(json.loads(json_str)["domain"]) s.load_from_dict(json.loads(json_str)) self.assertEquals("unit.test", s.get_domain()) self.assertEquals("testilinius", s.get_username()) self.assertEquals("interesting note", s.get_notes()) self.assertEquals("rtSr?bS,mi", s.get_legacy_password()) self.assertFalse(s.use_lower_case()) self.assertFalse(s.use_upper_case()) self.assertFalse(s.use_digits()) self.assertFalse(s.use_extra()) self.assertTrue(s.use_custom_character_set()) self.assertEquals("AEIOUaeiou", s.get_character_set()) self.assertEquals(5341, s.get_iterations()) self.assertEquals(16, s.get_length()) expected_salt = "fascinating".encode('utf-8') self.assertEqual(len(expected_salt), len(s.get_salt())) for i in range(len(expected_salt)): self.assertEqual(expected_salt[i], s.get_salt()[i]) self.assertEquals("2001-01-01T02:14:12", s.get_creation_date()) self.assertEquals("2005-01-01T01:14:12", s.get_modification_date())