Initial commit
This commit is contained in:
40
tests/test_password_readers.py
Normal file
40
tests/test_password_readers.py
Normal file
@ -0,0 +1,40 @@
|
||||
"""Test passsword readers."""
|
||||
|
||||
from typing import override
|
||||
import unittest
|
||||
from io import StringIO
|
||||
from unittest.mock import patch
|
||||
from dotenv import load_dotenv
|
||||
|
||||
|
||||
from sshecret.password_readers import InputPasswordReader, EnvironmentPasswordReader
|
||||
|
||||
|
||||
class TestInputPasswordReader(unittest.TestCase):
|
||||
"""Test input password reader."""
|
||||
|
||||
def test_reader(self) -> None:
|
||||
"""Test reader."""
|
||||
input_password = "testpassword"
|
||||
with patch("getpass.getpass", return_value=input_password):
|
||||
received_password = InputPasswordReader.get_password("test_password")
|
||||
self.assertEqual(received_password, "testpassword")
|
||||
|
||||
|
||||
class TestEnvPasswordReader(unittest.TestCase):
|
||||
"""Test environment password reader."""
|
||||
|
||||
@override
|
||||
def setUp(self) -> None:
|
||||
"""Set up environment."""
|
||||
env = StringIO("SSHECRET_test=secretthing")
|
||||
load_dotenv(stream=env)
|
||||
|
||||
def test_env_loader(self) -> None:
|
||||
"""Test environment loading."""
|
||||
password = EnvironmentPasswordReader.get_password("test")
|
||||
self.assertEqual(password, "secretthing")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user