Marco Ricci
Change the author e-mail address
Marco Ricci commited e8f3ec8 at 2024-09-08 11:08:45
test_derivepassphrase_vault.py
# SPDX-FileCopyrightText: 2024 Marco Ricci <software@the13thletter.info>
#
# SPDX-License-Identifier: MIT
"""Test passphrase generation via derivepassphrase.vault.Vault."""
from __future__ import annotations
import math
import pytest
import derivepassphrase
Vault = derivepassphrase.vault.Vault
class TestVault:
phrase = b'She cells C shells bye the sea shoars'
google_phrase = rb': 4TVH#5:aZl8LueOT\{'
twitter_phrase = rb"[ (HN_N:lI&<ro=)3'g9"
@pytest.mark.parametrize(
['service', 'expected'],
[
(b'google', google_phrase),
('twitter', twitter_phrase),
],
)
def test_200_basic_configuration(
self, service: bytes | str, expected: bytes
) -> None:
assert Vault(phrase=self.phrase).generate(service) == expected
def test_201_phrase_dependence(self) -> None:
assert (
Vault(phrase=(self.phrase + b'X')).generate('google')
== b'n+oIz6sL>K*lTEWYRO%7'
)
def test_202_reproducibility_and_bytes_service_name(self) -> None:
assert Vault(phrase=self.phrase).generate(b'google') == Vault(
phrase=self.phrase
).generate('google')
def test_203_reproducibility_and_bytearray_service_name(self) -> None:
assert Vault(phrase=self.phrase).generate(b'google') == Vault(
phrase=self.phrase
).generate(bytearray(b'google'))
def test_210_nonstandard_length(self) -> None:
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX