Example #1
0
    def testEncryption(self):
        a1 = Account('key', 'crypto')
        a1.setPassword('pass')

        # Check that the password is encrypted (or at least obscured)
        encrypted = a1.encryptedPassword()
        self.assertNotEqual(encrypted, None)
        self.assertNotEqual(encrypted, 'pass')

        # Make sure the password can be decrypted
        a2 = Account('key', 'crypto')
        a2.setEncryptedPassword(encrypted)
        self.assertEqual(a2.password(), 'pass')

        # Make sure the password can't be decrypted with the wrong key
        a3 = Account('key', 'wrong key')
        a3.setEncryptedPassword(encrypted)
        self.assertNotEqual(a3.password(), 'pass')
Example #2
0
    def testWritefp(self):
        a = Account("the_key")
        a.setNote("the note")
        a.setUsername("the username")
        a.setEncryptedPassword("the password")

        f = tempfile.TemporaryFile()
        persistance.writefp(f, [a])
        f.seek(0)

        config = SafeConfigParser()
        config.readfp(f)

        self.assertEqual(config.sections(), ["the_key"])
        self.assertEqual(config.get("the_key", "note"), "the note")
        self.assertEqual(config.get("the_key", "username"), "the username")
        self.assertEqual(config.get("the_key", "password"), "the password")

        f.close