3389da68ea507ff9bd0d12562e04cb883e9997b9
Marco Ricci Update copyright notices to...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py   1) # SPDX-FileCopyrightText: 2025 Marco Ricci <software@the13thletter.info>
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py       2) #
Marco Ricci Update copyright notices to...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py   3) # SPDX-License-Identifier: Zlib
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py       4) 
tests/test_derivepassphrase_exporter_cli.py       5) from __future__ import annotations
tests/test_derivepassphrase_exporter_cli.py       6) 
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py       7) import base64
Marco Ricci Refactor code to run under...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py   8) import contextlib
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py       9) import json
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py  10) import os
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      11) from typing import TYPE_CHECKING
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      12) 
tests/test_derivepassphrase_exporter_cli.py      13) import click.testing
Marco Ricci Trigger InvalidSignature ex...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py  14) import hypothesis
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      15) import pytest
Marco Ricci Trigger InvalidSignature ex...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py  16) from hypothesis import strategies
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      17) 
tests/test_derivepassphrase_exporter_cli.py      18) import tests
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py  19) from derivepassphrase import _types, cli, exporter
Marco Ricci Reintegrate all functionali...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_cli_export_vault.py  20) from derivepassphrase.exporter import storeroom, vault_native
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      21) 
tests/test_derivepassphrase_exporter_cli.py      22) cryptography = pytest.importorskip('cryptography', minversion='38.0')
tests/test_derivepassphrase_exporter_cli.py      23) 
Marco Ricci Add remaining tests to the...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py  24) from cryptography.hazmat.primitives import (  # noqa: E402
tests/test_derivepassphrase_cli_export_vault.py  25)     ciphers,
tests/test_derivepassphrase_cli_export_vault.py  26)     hashes,
tests/test_derivepassphrase_cli_export_vault.py  27)     hmac,
tests/test_derivepassphrase_cli_export_vault.py  28)     padding,
tests/test_derivepassphrase_cli_export_vault.py  29) )
tests/test_derivepassphrase_cli_export_vault.py  30) from cryptography.hazmat.primitives.ciphers import (  # noqa: E402
tests/test_derivepassphrase_cli_export_vault.py  31)     algorithms,
tests/test_derivepassphrase_cli_export_vault.py  32)     modes,
tests/test_derivepassphrase_cli_export_vault.py  33) )
tests/test_derivepassphrase_cli_export_vault.py  34) 
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      35) if TYPE_CHECKING:
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      36)     from collections.abc import Callable
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      37)     from typing import Any
tests/test_derivepassphrase_exporter_cli.py      38) 
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py  39)     from typing_extensions import Buffer, Literal
tests/test_derivepassphrase_cli_export_vault.py  40) 
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      41) 
tests/test_derivepassphrase_exporter_cli.py      42) class TestCLI:
tests/test_derivepassphrase_exporter_cli.py      43)     def test_200_path_parameter(self, monkeypatch: pytest.MonkeyPatch) -> None:
tests/test_derivepassphrase_exporter_cli.py      44)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py      45)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py      46)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py      47)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py      48)             vault_config=tests.VAULT_V03_CONFIG,
tests/test_derivepassphrase_exporter_cli.py      49)             vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_exporter_cli.py      50)         ):
tests/test_derivepassphrase_exporter_cli.py      51)             monkeypatch.setenv('VAULT_KEY', tests.VAULT_MASTER_KEY)
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py  52)             result_ = runner.invoke(
Marco Ricci Reintegrate all functionali...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_cli_export_vault.py  53)                 cli.derivepassphrase_export_vault,
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      54)                 ['VAULT_PATH'],
tests/test_derivepassphrase_exporter_cli.py      55)             )
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py  56)         result = tests.ReadableResult.parse(result_)
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      57)         assert result.clean_exit(empty_stderr=True), 'expected clean exit'
tests/test_derivepassphrase_exporter_cli.py      58)         assert json.loads(result.output) == tests.VAULT_V03_CONFIG_DATA
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      59) 
tests/test_derivepassphrase_exporter_cli.py      60)     def test_201_key_parameter(self, monkeypatch: pytest.MonkeyPatch) -> None:
tests/test_derivepassphrase_exporter_cli.py      61)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py      62)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py      63)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py      64)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py      65)             vault_config=tests.VAULT_V03_CONFIG,
tests/test_derivepassphrase_exporter_cli.py      66)         ):
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py  67)             result_ = runner.invoke(
Marco Ricci Reintegrate all functionali...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_cli_export_vault.py  68)                 cli.derivepassphrase_export_vault,
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      69)                 ['-k', tests.VAULT_MASTER_KEY, '.vault'],
tests/test_derivepassphrase_exporter_cli.py      70)             )
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py  71)         result = tests.ReadableResult.parse(result_)
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      72)         assert result.clean_exit(empty_stderr=True), 'expected clean exit'
tests/test_derivepassphrase_exporter_cli.py      73)         assert json.loads(result.output) == tests.VAULT_V03_CONFIG_DATA
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py      74) 
tests/test_derivepassphrase_exporter_cli.py      75)     @pytest.mark.parametrize(
tests/test_derivepassphrase_exporter_cli.py      76)         ['format', 'config', 'config_data'],
tests/test_derivepassphrase_exporter_cli.py      77)         [
tests/test_derivepassphrase_exporter_cli.py      78)             pytest.param(
tests/test_derivepassphrase_exporter_cli.py      79)                 'v0.2',
tests/test_derivepassphrase_exporter_cli.py      80)                 tests.VAULT_V02_CONFIG,
tests/test_derivepassphrase_exporter_cli.py      81)                 tests.VAULT_V02_CONFIG_DATA,
tests/test_derivepassphrase_exporter_cli.py      82)                 id='0.2',
tests/test_derivepassphrase_exporter_cli.py      83)             ),
tests/test_derivepassphrase_exporter_cli.py      84)             pytest.param(
tests/test_derivepassphrase_exporter_cli.py      85)                 'v0.3',
tests/test_derivepassphrase_exporter_cli.py      86)                 tests.VAULT_V03_CONFIG,
tests/test_derivepassphrase_exporter_cli.py      87)                 tests.VAULT_V03_CONFIG_DATA,
tests/test_derivepassphrase_exporter_cli.py      88)                 id='0.3',
tests/test_derivepassphrase_exporter_cli.py      89)             ),
tests/test_derivepassphrase_exporter_cli.py      90)             pytest.param(
tests/test_derivepassphrase_exporter_cli.py      91)                 'storeroom',
tests/test_derivepassphrase_exporter_cli.py      92)                 tests.VAULT_STOREROOM_CONFIG_ZIPPED,
tests/test_derivepassphrase_exporter_cli.py      93)                 tests.VAULT_STOREROOM_CONFIG_DATA,
tests/test_derivepassphrase_exporter_cli.py      94)                 id='storeroom',
tests/test_derivepassphrase_exporter_cli.py      95)             ),
tests/test_derivepassphrase_exporter_cli.py      96)         ],
tests/test_derivepassphrase_exporter_cli.py      97)     )
tests/test_derivepassphrase_exporter_cli.py      98)     def test_210_load_vault_v02_v03_storeroom(
tests/test_derivepassphrase_exporter_cli.py      99)         self,
tests/test_derivepassphrase_exporter_cli.py     100)         monkeypatch: pytest.MonkeyPatch,
tests/test_derivepassphrase_exporter_cli.py     101)         format: str,
tests/test_derivepassphrase_exporter_cli.py     102)         config: str | bytes,
tests/test_derivepassphrase_exporter_cli.py     103)         config_data: dict[str, Any],
tests/test_derivepassphrase_exporter_cli.py     104)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     105)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py     106)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py     107)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py     108)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py     109)             vault_config=config,
tests/test_derivepassphrase_exporter_cli.py     110)         ):
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 111)             result_ = runner.invoke(
Marco Ricci Reintegrate all functionali...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_cli_export_vault.py 112)                 cli.derivepassphrase_export_vault,
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     113)                 ['-f', format, '-k', tests.VAULT_MASTER_KEY, 'VAULT_PATH'],
tests/test_derivepassphrase_exporter_cli.py     114)             )
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 115)         result = tests.ReadableResult.parse(result_)
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     116)         assert result.clean_exit(empty_stderr=True), 'expected clean exit'
tests/test_derivepassphrase_exporter_cli.py     117)         assert json.loads(result.output) == config_data
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     118) 
tests/test_derivepassphrase_exporter_cli.py     119)     # test_300_invalid_format is found in
tests/test_derivepassphrase_exporter_cli.py     120)     # tests.test_derivepassphrase_export::Test002CLI
tests/test_derivepassphrase_exporter_cli.py     121) 
tests/test_derivepassphrase_exporter_cli.py     122)     def test_301_vault_config_not_found(
tests/test_derivepassphrase_exporter_cli.py     123)         self,
tests/test_derivepassphrase_exporter_cli.py     124)         monkeypatch: pytest.MonkeyPatch,
Marco Ricci Adapt the test suite to use...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 125)         caplog: pytest.LogCaptureFixture,
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     126)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     127)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py     128)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py     129)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py     130)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py     131)             vault_config=tests.VAULT_V03_CONFIG,
tests/test_derivepassphrase_exporter_cli.py     132)             vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_exporter_cli.py     133)         ):
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 134)             result_ = runner.invoke(
Marco Ricci Reintegrate all functionali...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_cli_export_vault.py 135)                 cli.derivepassphrase_export_vault,
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     136)                 ['does-not-exist.txt'],
tests/test_derivepassphrase_exporter_cli.py     137)             )
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 138)         result = tests.ReadableResult.parse(result_)
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     139)         assert result.error_exit(
Marco Ricci Replace strings in `derivep...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 140)             error=(
tests/test_derivepassphrase_cli_export_vault.py 141)                 "Cannot parse 'does-not-exist.txt' "
Marco Ricci Format everything with ruff...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 142)                 'as a valid vault-native config'
Marco Ricci Replace strings in `derivep...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 143)             ),
Marco Ricci Adapt the test suite to use...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 144)             record_tuples=caplog.record_tuples,
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     145)         ), 'expected error exit and known error message'
tests/test_derivepassphrase_exporter_cli.py     146)         assert tests.CANNOT_LOAD_CRYPTOGRAPHY not in result.stderr
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     147) 
tests/test_derivepassphrase_exporter_cli.py     148)     def test_302_vault_config_invalid(
tests/test_derivepassphrase_exporter_cli.py     149)         self,
tests/test_derivepassphrase_exporter_cli.py     150)         monkeypatch: pytest.MonkeyPatch,
Marco Ricci Adapt the test suite to use...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 151)         caplog: pytest.LogCaptureFixture,
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     152)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     153)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py     154)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py     155)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py     156)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py     157)             vault_config='',
tests/test_derivepassphrase_exporter_cli.py     158)             vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_exporter_cli.py     159)         ):
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 160)             result_ = runner.invoke(
Marco Ricci Reintegrate all functionali...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_cli_export_vault.py 161)                 cli.derivepassphrase_export_vault,
Marco Ricci Move exporter command-line...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     162)                 ['.vault'],
tests/test_derivepassphrase_exporter_cli.py     163)             )
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 164)         result = tests.ReadableResult.parse(result_)
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     165)         assert result.error_exit(
Marco Ricci Replace strings in `derivep...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 166)             error="Cannot parse '.vault' as a valid vault-native config",
Marco Ricci Adapt the test suite to use...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 167)             record_tuples=caplog.record_tuples,
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     168)         ), 'expected error exit and known error message'
tests/test_derivepassphrase_exporter_cli.py     169)         assert tests.CANNOT_LOAD_CRYPTOGRAPHY not in result.stderr
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     170) 
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 171)     def test_302a_vault_config_invalid_just_a_directory(
tests/test_derivepassphrase_cli_export_vault.py 172)         self,
tests/test_derivepassphrase_cli_export_vault.py 173)         monkeypatch: pytest.MonkeyPatch,
tests/test_derivepassphrase_cli_export_vault.py 174)         caplog: pytest.LogCaptureFixture,
tests/test_derivepassphrase_cli_export_vault.py 175)     ) -> None:
tests/test_derivepassphrase_cli_export_vault.py 176)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_cli_export_vault.py 177)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_cli_export_vault.py 178)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_cli_export_vault.py 179)             runner=runner,
tests/test_derivepassphrase_cli_export_vault.py 180)             vault_config='',
tests/test_derivepassphrase_cli_export_vault.py 181)             vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_cli_export_vault.py 182)         ):
tests/test_derivepassphrase_cli_export_vault.py 183)             os.remove('.vault')
tests/test_derivepassphrase_cli_export_vault.py 184)             os.mkdir('.vault')
tests/test_derivepassphrase_cli_export_vault.py 185)             result_ = runner.invoke(
tests/test_derivepassphrase_cli_export_vault.py 186)                 cli.derivepassphrase_export_vault,
tests/test_derivepassphrase_cli_export_vault.py 187)                 ['.vault'],
tests/test_derivepassphrase_cli_export_vault.py 188)             )
tests/test_derivepassphrase_cli_export_vault.py 189)         result = tests.ReadableResult.parse(result_)
tests/test_derivepassphrase_cli_export_vault.py 190)         assert result.error_exit(
tests/test_derivepassphrase_cli_export_vault.py 191)             error="Cannot parse '.vault' as a valid vault-native config",
tests/test_derivepassphrase_cli_export_vault.py 192)             record_tuples=caplog.record_tuples,
tests/test_derivepassphrase_cli_export_vault.py 193)         ), 'expected error exit and known error message'
tests/test_derivepassphrase_cli_export_vault.py 194)         assert tests.CANNOT_LOAD_CRYPTOGRAPHY not in result.stderr
tests/test_derivepassphrase_cli_export_vault.py 195) 
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     196)     def test_403_invalid_vault_config_bad_signature(
tests/test_derivepassphrase_exporter_cli.py     197)         self,
tests/test_derivepassphrase_exporter_cli.py     198)         monkeypatch: pytest.MonkeyPatch,
Marco Ricci Adapt the test suite to use...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 199)         caplog: pytest.LogCaptureFixture,
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     200)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     201)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py     202)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py     203)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py     204)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py     205)             vault_config=tests.VAULT_V02_CONFIG,
tests/test_derivepassphrase_exporter_cli.py     206)             vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_exporter_cli.py     207)         ):
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 208)             result_ = runner.invoke(
Marco Ricci Reintegrate all functionali...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_cli_export_vault.py 209)                 cli.derivepassphrase_export_vault,
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     210)                 ['-f', 'v0.3', '.vault'],
tests/test_derivepassphrase_exporter_cli.py     211)             )
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 212)         result = tests.ReadableResult.parse(result_)
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     213)         assert result.error_exit(
Marco Ricci Replace strings in `derivep...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 214)             error="Cannot parse '.vault' as a valid vault-native config",
Marco Ricci Adapt the test suite to use...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 215)             record_tuples=caplog.record_tuples,
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     216)         ), 'expected error exit and known error message'
tests/test_derivepassphrase_exporter_cli.py     217)         assert tests.CANNOT_LOAD_CRYPTOGRAPHY not in result.stderr
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     218) 
tests/test_derivepassphrase_exporter_cli.py     219)     def test_500_vault_config_invalid_internal(
tests/test_derivepassphrase_exporter_cli.py     220)         self,
tests/test_derivepassphrase_exporter_cli.py     221)         monkeypatch: pytest.MonkeyPatch,
Marco Ricci Adapt the test suite to use...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 222)         caplog: pytest.LogCaptureFixture,
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     223)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     224)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py     225)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py     226)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py     227)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py     228)             vault_config=tests.VAULT_V03_CONFIG,
tests/test_derivepassphrase_exporter_cli.py     229)             vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_exporter_cli.py     230)         ):
tests/test_derivepassphrase_exporter_cli.py     231) 
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 232)             def export_vault_config_data(*_args: Any, **_kwargs: Any) -> None:
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     233)                 return None
tests/test_derivepassphrase_exporter_cli.py     234) 
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 235)             monkeypatch.setattr(
tests/test_derivepassphrase_cli_export_vault.py 236)                 exporter,
tests/test_derivepassphrase_cli_export_vault.py 237)                 'export_vault_config_data',
tests/test_derivepassphrase_cli_export_vault.py 238)                 export_vault_config_data,
tests/test_derivepassphrase_cli_export_vault.py 239)             )
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 240)             result_ = runner.invoke(
Marco Ricci Reintegrate all functionali...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_cli_export_vault.py 241)                 cli.derivepassphrase_export_vault,
Marco Ricci Test exporter data loading...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     242)                 ['.vault'],
tests/test_derivepassphrase_exporter_cli.py     243)             )
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 244)         result = tests.ReadableResult.parse(result_)
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     245)         assert result.error_exit(
Marco Ricci Adapt the test suite to use...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 246)             error='Invalid vault config: ',
tests/test_derivepassphrase_cli_export_vault.py 247)             record_tuples=caplog.record_tuples,
Marco Ricci Clean up testing machinery...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     248)         ), 'expected error exit and known error message'
tests/test_derivepassphrase_exporter_cli.py     249)         assert tests.CANNOT_LOAD_CRYPTOGRAPHY not in result.stderr
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     250) 
tests/test_derivepassphrase_exporter_cli.py     251) 
tests/test_derivepassphrase_exporter_cli.py     252) class TestStoreroom:
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 253)     @pytest.mark.parametrize('path', ['.vault', None])
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     254)     @pytest.mark.parametrize(
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 255)         'key',
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     256)         [
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 257)             None,
tests/test_derivepassphrase_cli_export_vault.py 258)             pytest.param(tests.VAULT_MASTER_KEY, id='str'),
tests/test_derivepassphrase_cli_export_vault.py 259)             pytest.param(tests.VAULT_MASTER_KEY.encode('ascii'), id='bytes'),
tests/test_derivepassphrase_cli_export_vault.py 260)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 261)                 bytearray(tests.VAULT_MASTER_KEY.encode('ascii')),
tests/test_derivepassphrase_cli_export_vault.py 262)                 id='bytearray',
tests/test_derivepassphrase_cli_export_vault.py 263)             ),
tests/test_derivepassphrase_cli_export_vault.py 264)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 265)                 memoryview(tests.VAULT_MASTER_KEY.encode('ascii')),
tests/test_derivepassphrase_cli_export_vault.py 266)                 id='memoryview',
tests/test_derivepassphrase_cli_export_vault.py 267)             ),
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     268)         ],
tests/test_derivepassphrase_exporter_cli.py     269)     )
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 270)     @pytest.mark.parametrize(
tests/test_derivepassphrase_cli_export_vault.py 271)         'handler',
tests/test_derivepassphrase_cli_export_vault.py 272)         [
tests/test_derivepassphrase_cli_export_vault.py 273)             pytest.param(storeroom.export_storeroom_data, id='handler'),
tests/test_derivepassphrase_cli_export_vault.py 274)             pytest.param(exporter.export_vault_config_data, id='dispatcher'),
tests/test_derivepassphrase_cli_export_vault.py 275)         ],
tests/test_derivepassphrase_cli_export_vault.py 276)     )
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     277)     def test_200_export_data_path_and_keys_type(
tests/test_derivepassphrase_exporter_cli.py     278)         self,
tests/test_derivepassphrase_exporter_cli.py     279)         monkeypatch: pytest.MonkeyPatch,
tests/test_derivepassphrase_exporter_cli.py     280)         path: str | None,
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 281)         key: str | Buffer | None,
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 282)         handler: exporter.ExportVaultConfigDataFunction,
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     283)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     284)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py     285)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py     286)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py     287)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py     288)             vault_config=tests.VAULT_STOREROOM_CONFIG_ZIPPED,
tests/test_derivepassphrase_exporter_cli.py     289)             vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_exporter_cli.py     290)         ):
tests/test_derivepassphrase_exporter_cli.py     291)             assert (
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 292)                 handler(path, key, format='storeroom')
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     293)                 == tests.VAULT_STOREROOM_CONFIG_DATA
tests/test_derivepassphrase_exporter_cli.py     294)             )
tests/test_derivepassphrase_exporter_cli.py     295) 
tests/test_derivepassphrase_exporter_cli.py     296)     def test_400_decrypt_bucket_item_unknown_version(self) -> None:
tests/test_derivepassphrase_exporter_cli.py     297)         bucket_item = (
tests/test_derivepassphrase_exporter_cli.py     298)             b'\xff' + bytes(storeroom.ENCRYPTED_KEYPAIR_SIZE) + bytes(3)
tests/test_derivepassphrase_exporter_cli.py     299)         )
Marco Ricci Move storeroom helper types...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 300)         master_keys = _types.StoreroomMasterKeys(
tests/test_derivepassphrase_cli_export_vault.py 301)             encryption_key=bytes(storeroom.KEY_SIZE),
tests/test_derivepassphrase_cli_export_vault.py 302)             signing_key=bytes(storeroom.KEY_SIZE),
tests/test_derivepassphrase_cli_export_vault.py 303)             hashing_key=bytes(storeroom.KEY_SIZE),
tests/test_derivepassphrase_cli_export_vault.py 304)         )
Marco Ricci Apply new ruff ruleset to c...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     305)         with pytest.raises(ValueError, match='Cannot handle version 255'):
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     306)             storeroom.decrypt_bucket_item(bucket_item, master_keys)
tests/test_derivepassphrase_exporter_cli.py     307) 
tests/test_derivepassphrase_exporter_cli.py     308)     @pytest.mark.parametrize('config', ['xxx', 'null', '{"version": 255}'])
tests/test_derivepassphrase_exporter_cli.py     309)     def test_401_decrypt_bucket_file_bad_json_or_version(
tests/test_derivepassphrase_exporter_cli.py     310)         self,
tests/test_derivepassphrase_exporter_cli.py     311)         monkeypatch: pytest.MonkeyPatch,
tests/test_derivepassphrase_exporter_cli.py     312)         config: str,
tests/test_derivepassphrase_exporter_cli.py     313)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     314)         runner = click.testing.CliRunner(mix_stderr=False)
Marco Ricci Move storeroom helper types...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 315)         master_keys = _types.StoreroomMasterKeys(
tests/test_derivepassphrase_cli_export_vault.py 316)             encryption_key=bytes(storeroom.KEY_SIZE),
tests/test_derivepassphrase_cli_export_vault.py 317)             signing_key=bytes(storeroom.KEY_SIZE),
tests/test_derivepassphrase_cli_export_vault.py 318)             hashing_key=bytes(storeroom.KEY_SIZE),
tests/test_derivepassphrase_cli_export_vault.py 319)         )
Marco Ricci Refactor code to run under...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 320)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_cli_export_vault.py 321)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_cli_export_vault.py 322)             runner=runner,
tests/test_derivepassphrase_cli_export_vault.py 323)             vault_config=tests.VAULT_STOREROOM_CONFIG_ZIPPED,
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     324)         ):
tests/test_derivepassphrase_exporter_cli.py     325)             with open('.vault/20', 'w', encoding='UTF-8') as outfile:
tests/test_derivepassphrase_exporter_cli.py     326)                 print(config, file=outfile)
Marco Ricci Apply new ruff ruleset to c...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     327)             with pytest.raises(ValueError, match='Invalid bucket file: '):
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     328)                 list(storeroom.decrypt_bucket_file('.vault/20', master_keys))
tests/test_derivepassphrase_exporter_cli.py     329) 
tests/test_derivepassphrase_exporter_cli.py     330)     @pytest.mark.parametrize(
tests/test_derivepassphrase_exporter_cli.py     331)         ['data', 'err_msg'],
tests/test_derivepassphrase_exporter_cli.py     332)         [
tests/test_derivepassphrase_exporter_cli.py     333)             ('{"version": 255}', 'bad or unsupported keys version header'),
tests/test_derivepassphrase_exporter_cli.py     334)             ('{"version": 1}\nAAAA\nAAAA', 'trailing data; cannot make sense'),
tests/test_derivepassphrase_exporter_cli.py     335)             ('{"version": 1}\nAAAA', 'cannot handle version 0 encrypted keys'),
tests/test_derivepassphrase_exporter_cli.py     336)         ],
tests/test_derivepassphrase_exporter_cli.py     337)     )
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 338)     @pytest.mark.parametrize(
tests/test_derivepassphrase_cli_export_vault.py 339)         'handler',
tests/test_derivepassphrase_cli_export_vault.py 340)         [
tests/test_derivepassphrase_cli_export_vault.py 341)             pytest.param(storeroom.export_storeroom_data, id='handler'),
tests/test_derivepassphrase_cli_export_vault.py 342)             pytest.param(exporter.export_vault_config_data, id='dispatcher'),
tests/test_derivepassphrase_cli_export_vault.py 343)         ],
tests/test_derivepassphrase_cli_export_vault.py 344)     )
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     345)     def test_402_export_storeroom_data_bad_master_keys_file(
tests/test_derivepassphrase_exporter_cli.py     346)         self,
tests/test_derivepassphrase_exporter_cli.py     347)         monkeypatch: pytest.MonkeyPatch,
tests/test_derivepassphrase_exporter_cli.py     348)         data: str,
tests/test_derivepassphrase_exporter_cli.py     349)         err_msg: str,
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 350)         handler: exporter.ExportVaultConfigDataFunction,
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     351)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     352)         runner = click.testing.CliRunner(mix_stderr=False)
Marco Ricci Refactor code to run under...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 353)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_cli_export_vault.py 354)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_cli_export_vault.py 355)             runner=runner,
tests/test_derivepassphrase_cli_export_vault.py 356)             vault_config=tests.VAULT_STOREROOM_CONFIG_ZIPPED,
tests/test_derivepassphrase_cli_export_vault.py 357)             vault_key=tests.VAULT_MASTER_KEY,
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     358)         ):
tests/test_derivepassphrase_exporter_cli.py     359)             with open('.vault/.keys', 'w', encoding='UTF-8') as outfile:
tests/test_derivepassphrase_exporter_cli.py     360)                 print(data, file=outfile)
tests/test_derivepassphrase_exporter_cli.py     361)             with pytest.raises(RuntimeError, match=err_msg):
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 362)                 handler(format='storeroom')
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     363) 
Marco Ricci Add remaining tests to the...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py 364)     @pytest.mark.parametrize(
tests/test_derivepassphrase_cli_export_vault.py 365)         ['zipped_config', 'error_text'],
tests/test_derivepassphrase_cli_export_vault.py 366)         [
tests/test_derivepassphrase_cli_export_vault.py 367)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 368)                 tests.VAULT_STOREROOM_BROKEN_DIR_CONFIG_ZIPPED,
tests/test_derivepassphrase_cli_export_vault.py 369)                 'Object key mismatch',
tests/test_derivepassphrase_cli_export_vault.py 370)                 id='VAULT_STOREROOM_BROKEN_DIR_CONFIG_ZIPPED',
tests/test_derivepassphrase_cli_export_vault.py 371)             ),
tests/test_derivepassphrase_cli_export_vault.py 372)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 373)                 tests.VAULT_STOREROOM_BROKEN_DIR_CONFIG_ZIPPED2,
tests/test_derivepassphrase_cli_export_vault.py 374)                 'Directory index is not actually an index',
tests/test_derivepassphrase_cli_export_vault.py 375)                 id='VAULT_STOREROOM_BROKEN_DIR_CONFIG_ZIPPED2',
tests/test_derivepassphrase_cli_export_vault.py 376)             ),
tests/test_derivepassphrase_cli_export_vault.py 377)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 378)                 tests.VAULT_STOREROOM_BROKEN_DIR_CONFIG_ZIPPED3,
tests/test_derivepassphrase_cli_export_vault.py 379)                 'Directory index is not actually an index',
tests/test_derivepassphrase_cli_export_vault.py 380)                 id='VAULT_STOREROOM_BROKEN_DIR_CONFIG_ZIPPED3',
tests/test_derivepassphrase_cli_export_vault.py 381)             ),
tests/test_derivepassphrase_cli_export_vault.py 382)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 383)                 tests.VAULT_STOREROOM_BROKEN_DIR_CONFIG_ZIPPED4,
tests/test_derivepassphrase_cli_export_vault.py 384)                 'Object key mismatch',
tests/test_derivepassphrase_cli_export_vault.py 385)                 id='VAULT_STOREROOM_BROKEN_DIR_CONFIG_ZIPPED4',
tests/test_derivepassphrase_cli_export_vault.py 386)             ),
tests/test_derivepassphrase_cli_export_vault.py 387)         ],
tests/test_derivepassphrase_cli_export_vault.py 388)     )
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 389)     @pytest.mark.parametrize(
tests/test_derivepassphrase_cli_export_vault.py 390)         'handler',
tests/test_derivepassphrase_cli_export_vault.py 391)         [
tests/test_derivepassphrase_cli_export_vault.py 392)             pytest.param(storeroom.export_storeroom_data, id='handler'),
tests/test_derivepassphrase_cli_export_vault.py 393)             pytest.param(exporter.export_vault_config_data, id='dispatcher'),
tests/test_derivepassphrase_cli_export_vault.py 394)         ],
tests/test_derivepassphrase_cli_export_vault.py 395)     )
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     396)     def test_403_export_storeroom_data_bad_directory_listing(
tests/test_derivepassphrase_exporter_cli.py     397)         self,
tests/test_derivepassphrase_exporter_cli.py     398)         monkeypatch: pytest.MonkeyPatch,
Marco Ricci Add remaining tests to the...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py 399)         zipped_config: bytes,
tests/test_derivepassphrase_cli_export_vault.py 400)         error_text: str,
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 401)         handler: exporter.ExportVaultConfigDataFunction,
Marco Ricci Add more tests of the store...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     402)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     403)         runner = click.testing.CliRunner(mix_stderr=False)
Marco Ricci Refactor code to run under...

Marco Ricci authored 3 months ago

tests/test_derivepassphrase_cli_export_vault.py 404)         # Use parenthesized context manager expressions once Python 3.9
tests/test_derivepassphrase_cli_export_vault.py 405)         # becomes unsupported.
tests/test_derivepassphrase_cli_export_vault.py 406)         with contextlib.ExitStack() as stack:
tests/test_derivepassphrase_cli_export_vault.py 407)             stack.enter_context(
tests/test_derivepassphrase_cli_export_vault.py 408)                 tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_cli_export_vault.py 409)                     monkeypatch=monkeypatch,
tests/test_derivepassphrase_cli_export_vault.py 410)                     runner=runner,
tests/test_derivepassphrase_cli_export_vault.py 411)                     vault_config=zipped_config,
tests/test_derivepassphrase_cli_export_vault.py 412)                     vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_cli_export_vault.py 413)                 )
tests/test_derivepassphrase_cli_export_vault.py 414)             )
tests/test_derivepassphrase_cli_export_vault.py 415)             stack.enter_context(pytest.raises(RuntimeError, match=error_text))
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 416)             handler(format='storeroom')
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     417) 
Marco Ricci Add remaining tests to the...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py 418)     def test_404_decrypt_keys_wrong_data_length(self) -> None:
tests/test_derivepassphrase_cli_export_vault.py 419)         payload = (
Marco Ricci Update ruff to v0.8.x, refo...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 420)             b"Any text here, as long as it isn't exactly 64 or 96 bytes long."
Marco Ricci Add remaining tests to the...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py 421)         )
tests/test_derivepassphrase_cli_export_vault.py 422)         assert len(payload) not in frozenset({
tests/test_derivepassphrase_cli_export_vault.py 423)             2 * storeroom.KEY_SIZE,
tests/test_derivepassphrase_cli_export_vault.py 424)             3 * storeroom.KEY_SIZE,
tests/test_derivepassphrase_cli_export_vault.py 425)         })
tests/test_derivepassphrase_cli_export_vault.py 426)         key = b'DEADBEEFdeadbeefDeAdBeEfdEaDbEeF'
tests/test_derivepassphrase_cli_export_vault.py 427)         padder = padding.PKCS7(storeroom.IV_SIZE * 8).padder()
tests/test_derivepassphrase_cli_export_vault.py 428)         plaintext = bytearray(padder.update(payload))
tests/test_derivepassphrase_cli_export_vault.py 429)         plaintext.extend(padder.finalize())
tests/test_derivepassphrase_cli_export_vault.py 430)         iv = b'deadbeefDEADBEEF'
tests/test_derivepassphrase_cli_export_vault.py 431)         assert len(iv) == storeroom.IV_SIZE
tests/test_derivepassphrase_cli_export_vault.py 432)         encryptor = ciphers.Cipher(
tests/test_derivepassphrase_cli_export_vault.py 433)             algorithms.AES256(key), modes.CBC(iv)
tests/test_derivepassphrase_cli_export_vault.py 434)         ).encryptor()
tests/test_derivepassphrase_cli_export_vault.py 435)         ciphertext = bytearray(encryptor.update(plaintext))
tests/test_derivepassphrase_cli_export_vault.py 436)         ciphertext.extend(encryptor.finalize())
tests/test_derivepassphrase_cli_export_vault.py 437)         mac_obj = hmac.HMAC(key, hashes.SHA256())
tests/test_derivepassphrase_cli_export_vault.py 438)         mac_obj.update(iv)
tests/test_derivepassphrase_cli_export_vault.py 439)         mac_obj.update(ciphertext)
tests/test_derivepassphrase_cli_export_vault.py 440)         data = iv + bytes(ciphertext) + mac_obj.finalize()
tests/test_derivepassphrase_cli_export_vault.py 441)         with pytest.raises(
tests/test_derivepassphrase_cli_export_vault.py 442)             ValueError,
tests/test_derivepassphrase_cli_export_vault.py 443)             match=r'Invalid encrypted master keys payload',
tests/test_derivepassphrase_cli_export_vault.py 444)         ):
tests/test_derivepassphrase_cli_export_vault.py 445)             storeroom.decrypt_master_keys_data(
Marco Ricci Move storeroom helper types...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 446)                 data,
tests/test_derivepassphrase_cli_export_vault.py 447)                 _types.StoreroomKeyPair(encryption_key=key, signing_key=key),
Marco Ricci Add remaining tests to the...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py 448)             )
tests/test_derivepassphrase_cli_export_vault.py 449)         with pytest.raises(
tests/test_derivepassphrase_cli_export_vault.py 450)             ValueError,
tests/test_derivepassphrase_cli_export_vault.py 451)             match=r'Invalid encrypted session keys payload',
tests/test_derivepassphrase_cli_export_vault.py 452)         ):
tests/test_derivepassphrase_cli_export_vault.py 453)             storeroom.decrypt_session_keys(
tests/test_derivepassphrase_cli_export_vault.py 454)                 data,
Marco Ricci Move storeroom helper types...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 455)                 _types.StoreroomMasterKeys(
tests/test_derivepassphrase_cli_export_vault.py 456)                     hashing_key=key, encryption_key=key, signing_key=key
tests/test_derivepassphrase_cli_export_vault.py 457)                 ),
Marco Ricci Add remaining tests to the...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py 458)             )
tests/test_derivepassphrase_cli_export_vault.py 459) 
Marco Ricci Trigger InvalidSignature ex...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py 460)     @tests.hypothesis_settings_coverage_compatible
tests/test_derivepassphrase_cli_export_vault.py 461)     @hypothesis.given(
tests/test_derivepassphrase_cli_export_vault.py 462)         data=strategies.binary(
tests/test_derivepassphrase_cli_export_vault.py 463)             min_size=storeroom.MAC_SIZE, max_size=storeroom.MAC_SIZE
tests/test_derivepassphrase_cli_export_vault.py 464)         ),
tests/test_derivepassphrase_cli_export_vault.py 465)     )
tests/test_derivepassphrase_cli_export_vault.py 466)     def test_405_decrypt_keys_invalid_signature(self, data: bytes) -> None:
tests/test_derivepassphrase_cli_export_vault.py 467)         key = b'DEADBEEFdeadbeefDeAdBeEfdEaDbEeF'
tests/test_derivepassphrase_cli_export_vault.py 468)         # Guessing a correct payload plus MAC would be a pre-image
tests/test_derivepassphrase_cli_export_vault.py 469)         # attack on the underlying hash function (SHA-256), i.e. is
tests/test_derivepassphrase_cli_export_vault.py 470)         # computationally infeasible, and the chance of finding one by
tests/test_derivepassphrase_cli_export_vault.py 471)         # such random sampling is astronomically tiny.
tests/test_derivepassphrase_cli_export_vault.py 472)         with pytest.raises(cryptography.exceptions.InvalidSignature):
tests/test_derivepassphrase_cli_export_vault.py 473)             storeroom.decrypt_master_keys_data(
Marco Ricci Move storeroom helper types...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 474)                 data,
tests/test_derivepassphrase_cli_export_vault.py 475)                 _types.StoreroomKeyPair(encryption_key=key, signing_key=key),
Marco Ricci Trigger InvalidSignature ex...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py 476)             )
tests/test_derivepassphrase_cli_export_vault.py 477)         with pytest.raises(cryptography.exceptions.InvalidSignature):
tests/test_derivepassphrase_cli_export_vault.py 478)             storeroom.decrypt_session_keys(
tests/test_derivepassphrase_cli_export_vault.py 479)                 data,
Marco Ricci Move storeroom helper types...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 480)                 _types.StoreroomMasterKeys(
tests/test_derivepassphrase_cli_export_vault.py 481)                     hashing_key=key, encryption_key=key, signing_key=key
tests/test_derivepassphrase_cli_export_vault.py 482)                 ),
Marco Ricci Trigger InvalidSignature ex...

Marco Ricci authored 5 months ago

tests/test_derivepassphrase_cli_export_vault.py 483)             )
tests/test_derivepassphrase_cli_export_vault.py 484) 
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     485) 
tests/test_derivepassphrase_exporter_cli.py     486) class TestVaultNativeConfig:
tests/test_derivepassphrase_exporter_cli.py     487)     @pytest.mark.parametrize(
tests/test_derivepassphrase_exporter_cli.py     488)         ['iterations', 'result'],
tests/test_derivepassphrase_exporter_cli.py     489)         [
tests/test_derivepassphrase_exporter_cli.py     490)             (100, b'6ede361e81e9c061efcdd68aeb768b80'),
tests/test_derivepassphrase_exporter_cli.py     491)             (200, b'bcc7d01e075b9ffb69e702bf701187c1'),
tests/test_derivepassphrase_exporter_cli.py     492)         ],
tests/test_derivepassphrase_exporter_cli.py     493)     )
tests/test_derivepassphrase_exporter_cli.py     494)     def test_200_pbkdf2_manually(self, iterations: int, result: bytes) -> None:
Marco Ricci Fix formatting and linting...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     495)         assert (
Marco Ricci Rename `vault_v03_and_below...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     496)             vault_native.VaultNativeConfigParser._pbkdf2(
Marco Ricci Fix formatting and linting...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     497)                 tests.VAULT_MASTER_KEY.encode('utf-8'), 32, iterations
tests/test_derivepassphrase_exporter_cli.py     498)             )
tests/test_derivepassphrase_exporter_cli.py     499)             == result
tests/test_derivepassphrase_exporter_cli.py     500)         )
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     501) 
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 502)     @pytest.mark.parametrize(
tests/test_derivepassphrase_cli_export_vault.py 503)         ['config', 'format', 'result'],
tests/test_derivepassphrase_cli_export_vault.py 504)         [
tests/test_derivepassphrase_cli_export_vault.py 505)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 506)                 tests.VAULT_V02_CONFIG,
tests/test_derivepassphrase_cli_export_vault.py 507)                 'v0.2',
tests/test_derivepassphrase_cli_export_vault.py 508)                 tests.VAULT_V02_CONFIG_DATA,
tests/test_derivepassphrase_cli_export_vault.py 509)                 id='V02_CONFIG-v0.2',
tests/test_derivepassphrase_cli_export_vault.py 510)             ),
tests/test_derivepassphrase_cli_export_vault.py 511)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 512)                 tests.VAULT_V02_CONFIG,
tests/test_derivepassphrase_cli_export_vault.py 513)                 'v0.3',
tests/test_derivepassphrase_cli_export_vault.py 514)                 exporter.NotAVaultConfigError,
tests/test_derivepassphrase_cli_export_vault.py 515)                 id='V02_CONFIG-v0.3',
tests/test_derivepassphrase_cli_export_vault.py 516)             ),
tests/test_derivepassphrase_cli_export_vault.py 517)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 518)                 tests.VAULT_V03_CONFIG,
tests/test_derivepassphrase_cli_export_vault.py 519)                 'v0.2',
tests/test_derivepassphrase_cli_export_vault.py 520)                 exporter.NotAVaultConfigError,
tests/test_derivepassphrase_cli_export_vault.py 521)                 id='V03_CONFIG-v0.2',
tests/test_derivepassphrase_cli_export_vault.py 522)             ),
tests/test_derivepassphrase_cli_export_vault.py 523)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 524)                 tests.VAULT_V03_CONFIG,
tests/test_derivepassphrase_cli_export_vault.py 525)                 'v0.3',
tests/test_derivepassphrase_cli_export_vault.py 526)                 tests.VAULT_V03_CONFIG_DATA,
tests/test_derivepassphrase_cli_export_vault.py 527)                 id='V03_CONFIG-v0.3',
tests/test_derivepassphrase_cli_export_vault.py 528)             ),
tests/test_derivepassphrase_cli_export_vault.py 529)         ],
tests/test_derivepassphrase_cli_export_vault.py 530)     )
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 531)     @pytest.mark.parametrize(
tests/test_derivepassphrase_cli_export_vault.py 532)         'handler',
tests/test_derivepassphrase_cli_export_vault.py 533)         [
tests/test_derivepassphrase_cli_export_vault.py 534)             pytest.param(vault_native.export_vault_native_data, id='handler'),
tests/test_derivepassphrase_cli_export_vault.py 535)             pytest.param(exporter.export_vault_config_data, id='dispatcher'),
tests/test_derivepassphrase_cli_export_vault.py 536)         ],
tests/test_derivepassphrase_cli_export_vault.py 537)     )
Marco Ricci Add vault_native exporter f...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     538)     def test_201_export_vault_native_data_no_arguments(
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 539)         self,
tests/test_derivepassphrase_cli_export_vault.py 540)         monkeypatch: pytest.MonkeyPatch,
tests/test_derivepassphrase_cli_export_vault.py 541)         config: str,
tests/test_derivepassphrase_cli_export_vault.py 542)         format: Literal['v0.2', 'v0.3'],
tests/test_derivepassphrase_cli_export_vault.py 543)         result: _types.VaultConfig | type[Exception],
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 544)         handler: exporter.ExportVaultConfigDataFunction,
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 545)     ) -> None:
tests/test_derivepassphrase_cli_export_vault.py 546)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_cli_export_vault.py 547)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_cli_export_vault.py 548)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_cli_export_vault.py 549)             runner=runner,
tests/test_derivepassphrase_cli_export_vault.py 550)             vault_config=config,
tests/test_derivepassphrase_cli_export_vault.py 551)             vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_cli_export_vault.py 552)         ):
tests/test_derivepassphrase_cli_export_vault.py 553)             if isinstance(result, type):
tests/test_derivepassphrase_cli_export_vault.py 554)                 with pytest.raises(result):
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 555)                     handler(None, format=format)
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 556)             else:
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 557)                 parsed_config = handler(None, format=format)
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 558)                 assert parsed_config == result
tests/test_derivepassphrase_cli_export_vault.py 559) 
tests/test_derivepassphrase_cli_export_vault.py 560)     @pytest.mark.parametrize('path', ['.vault', None])
tests/test_derivepassphrase_cli_export_vault.py 561)     @pytest.mark.parametrize(
tests/test_derivepassphrase_cli_export_vault.py 562)         'key',
tests/test_derivepassphrase_cli_export_vault.py 563)         [
tests/test_derivepassphrase_cli_export_vault.py 564)             None,
tests/test_derivepassphrase_cli_export_vault.py 565)             pytest.param(tests.VAULT_MASTER_KEY, id='str'),
tests/test_derivepassphrase_cli_export_vault.py 566)             pytest.param(tests.VAULT_MASTER_KEY.encode('ascii'), id='bytes'),
tests/test_derivepassphrase_cli_export_vault.py 567)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 568)                 bytearray(tests.VAULT_MASTER_KEY.encode('ascii')),
tests/test_derivepassphrase_cli_export_vault.py 569)                 id='bytearray',
tests/test_derivepassphrase_cli_export_vault.py 570)             ),
tests/test_derivepassphrase_cli_export_vault.py 571)             pytest.param(
tests/test_derivepassphrase_cli_export_vault.py 572)                 memoryview(tests.VAULT_MASTER_KEY.encode('ascii')),
tests/test_derivepassphrase_cli_export_vault.py 573)                 id='memoryview',
tests/test_derivepassphrase_cli_export_vault.py 574)             ),
tests/test_derivepassphrase_cli_export_vault.py 575)         ],
tests/test_derivepassphrase_cli_export_vault.py 576)     )
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 577)     @pytest.mark.parametrize(
tests/test_derivepassphrase_cli_export_vault.py 578)         'handler',
tests/test_derivepassphrase_cli_export_vault.py 579)         [
tests/test_derivepassphrase_cli_export_vault.py 580)             pytest.param(vault_native.export_vault_native_data, id='handler'),
tests/test_derivepassphrase_cli_export_vault.py 581)             pytest.param(exporter.export_vault_config_data, id='dispatcher'),
tests/test_derivepassphrase_cli_export_vault.py 582)         ],
tests/test_derivepassphrase_cli_export_vault.py 583)     )
Marco Ricci Harmonize the interface for...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 584)     def test_202_export_data_path_and_keys_type(
tests/test_derivepassphrase_cli_export_vault.py 585)         self,
tests/test_derivepassphrase_cli_export_vault.py 586)         monkeypatch: pytest.MonkeyPatch,
tests/test_derivepassphrase_cli_export_vault.py 587)         path: str | None,
tests/test_derivepassphrase_cli_export_vault.py 588)         key: str | Buffer | None,
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 589)         handler: exporter.ExportVaultConfigDataFunction,
Marco Ricci Add vault_native exporter f...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     590)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     591)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py     592)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py     593)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py     594)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py     595)             vault_config=tests.VAULT_V03_CONFIG,
tests/test_derivepassphrase_exporter_cli.py     596)             vault_key=tests.VAULT_MASTER_KEY,
tests/test_derivepassphrase_exporter_cli.py     597)         ):
Marco Ricci Test the export handler dis...

Marco Ricci authored 2 months ago

tests/test_derivepassphrase_cli_export_vault.py 598)             assert (
tests/test_derivepassphrase_cli_export_vault.py 599)                 handler(path, key, format='v0.3')
tests/test_derivepassphrase_cli_export_vault.py 600)                 == tests.VAULT_V03_CONFIG_DATA
tests/test_derivepassphrase_cli_export_vault.py 601)             )
Marco Ricci Add vault_native exporter f...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     602) 
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     603)     @pytest.mark.parametrize(
tests/test_derivepassphrase_exporter_cli.py     604)         ['parser_class', 'config', 'result'],
tests/test_derivepassphrase_exporter_cli.py     605)         [
tests/test_derivepassphrase_exporter_cli.py     606)             pytest.param(
Marco Ricci Rename `vault_v03_and_below...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     607)                 vault_native.VaultNativeV02ConfigParser,
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     608)                 tests.VAULT_V02_CONFIG,
tests/test_derivepassphrase_exporter_cli.py     609)                 tests.VAULT_V02_CONFIG_DATA,
tests/test_derivepassphrase_exporter_cli.py     610)                 id='0.2',
tests/test_derivepassphrase_exporter_cli.py     611)             ),
tests/test_derivepassphrase_exporter_cli.py     612)             pytest.param(
Marco Ricci Rename `vault_v03_and_below...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     613)                 vault_native.VaultNativeV03ConfigParser,
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     614)                 tests.VAULT_V03_CONFIG,
tests/test_derivepassphrase_exporter_cli.py     615)                 tests.VAULT_V03_CONFIG_DATA,
tests/test_derivepassphrase_exporter_cli.py     616)                 id='0.3',
tests/test_derivepassphrase_exporter_cli.py     617)             ),
tests/test_derivepassphrase_exporter_cli.py     618)         ],
tests/test_derivepassphrase_exporter_cli.py     619)     )
tests/test_derivepassphrase_exporter_cli.py     620)     def test_300_result_caching(
tests/test_derivepassphrase_exporter_cli.py     621)         self,
tests/test_derivepassphrase_exporter_cli.py     622)         monkeypatch: pytest.MonkeyPatch,
Marco Ricci Rename `vault_v03_and_below...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     623)         parser_class: type[vault_native.VaultNativeConfigParser],
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     624)         config: str,
tests/test_derivepassphrase_exporter_cli.py     625)         result: dict[str, Any],
tests/test_derivepassphrase_exporter_cli.py     626)     ) -> None:
tests/test_derivepassphrase_exporter_cli.py     627)         def null_func(name: str) -> Callable[..., None]:
tests/test_derivepassphrase_exporter_cli.py     628)             def func(*_args: Any, **_kwargs: Any) -> None:  # pragma: no cover
tests/test_derivepassphrase_exporter_cli.py     629)                 msg = f'disallowed and stubbed out function {name} called'
tests/test_derivepassphrase_exporter_cli.py     630)                 raise AssertionError(msg)
Marco Ricci Fix formatting and linting...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     631) 
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     632)             return func
tests/test_derivepassphrase_exporter_cli.py     633) 
tests/test_derivepassphrase_exporter_cli.py     634)         runner = click.testing.CliRunner(mix_stderr=False)
tests/test_derivepassphrase_exporter_cli.py     635)         with tests.isolated_vault_exporter_config(
tests/test_derivepassphrase_exporter_cli.py     636)             monkeypatch=monkeypatch,
tests/test_derivepassphrase_exporter_cli.py     637)             runner=runner,
tests/test_derivepassphrase_exporter_cli.py     638)             vault_config=config,
tests/test_derivepassphrase_exporter_cli.py     639)         ):
Marco Ricci Fix formatting and linting...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     640)             parser = parser_class(
tests/test_derivepassphrase_exporter_cli.py     641)                 base64.b64decode(config), tests.VAULT_MASTER_KEY
tests/test_derivepassphrase_exporter_cli.py     642)             )
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     643)             assert parser() == result
tests/test_derivepassphrase_exporter_cli.py     644)             # Now stub out all functions used to calculate the above result.
Marco Ricci Fix formatting and linting...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     645)             monkeypatch.setattr(
tests/test_derivepassphrase_exporter_cli.py     646)                 parser, '_parse_contents', null_func('_parse_contents')
tests/test_derivepassphrase_exporter_cli.py     647)             )
tests/test_derivepassphrase_exporter_cli.py     648)             monkeypatch.setattr(
tests/test_derivepassphrase_exporter_cli.py     649)                 parser, '_derive_keys', null_func('_derive_keys')
tests/test_derivepassphrase_exporter_cli.py     650)             )
tests/test_derivepassphrase_exporter_cli.py     651)             monkeypatch.setattr(
tests/test_derivepassphrase_exporter_cli.py     652)                 parser, '_check_signature', null_func('_check_signature')
tests/test_derivepassphrase_exporter_cli.py     653)             )
tests/test_derivepassphrase_exporter_cli.py     654)             monkeypatch.setattr(
tests/test_derivepassphrase_exporter_cli.py     655)                 parser, '_decrypt_payload', null_func('_decrypt_payload')
tests/test_derivepassphrase_exporter_cli.py     656)             )
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     657)             assert parser() == result
Marco Ricci Rename `vault_v03_and_below...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     658)             super_call = vault_native.VaultNativeConfigParser.__call__
Marco Ricci Fix formatting and linting...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     659)             assert super_call(parser) == result
Marco Ricci Rename vault v0.2/v0.3 clas...

Marco Ricci authored 6 months ago

tests/test_derivepassphrase_exporter_cli.py     660) 
tests/test_derivepassphrase_exporter_cli.py     661)     def test_400_no_password(self) -> None:
tests/test_derivepassphrase_exporter_cli.py     662)         with pytest.raises(ValueError, match='Password must not be empty'):