Beispiel #1
0
    def test_can_encrypt_method(self):
        # 32 pixels are required for end message code
        # 4 x 4 x 3 = 48; (48 - 32) / 4 = 4 -> 4 characters possible
        img_small = np.zeros((4, 4, 3), np.uint8)
        # 5 x 5 x 3 = 75; (75 - 32) / 4 ~= 10+ -> 10 characters possible
        img_ok = np.zeros((5, 5, 3), np.uint8)
        # 6x6 - minimum image size for encryption
        img_one_channel = np.zeros((6, 6, 1), np.uint8)
        text_small = "test"
        text = "10letters!"
        text_long = "Too long string"

        self.assertTrue(Encrypter.can_encrypt(img_small, text_small))
        self.assertFalse(Encrypter.can_encrypt(img_small, text))
        self.assertTrue(Encrypter.can_encrypt(img_ok, text))
        self.assertFalse(Encrypter.can_encrypt(img_ok, text_long))
        self.assertFalse(Encrypter.can_encrypt(img_one_channel, text))
        self.assertTrue(Encrypter.can_encrypt(img_one_channel, "1"))