approval-utilities 14.2.0__tar.gz → 14.3.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of approval-utilities might be problematic. Click here for more details.
- {approval_utilities-14.2.0/approval_utilities.egg-info → approval_utilities-14.3.1}/PKG-INFO +8 -2
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utils.py +6 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1/approval_utilities.egg-info}/PKG-INFO +8 -2
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities.egg-info/SOURCES.txt +1 -0
- approval_utilities-14.3.1/tests/test_approvaltests_temp_dir.py +8 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_fileapprover.py +43 -3
- approval_utilities-14.3.1/version.py +1 -0
- approval_utilities-14.2.0/version.py +0 -1
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/LICENSE +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/MANIFEST.in +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/README.md +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/__init__.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/approvaltests/__init__.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/approvaltests/core/__init__.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/approvaltests/core/executable_command.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/approvaltests/core/verifiable.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/approvaltests/core/verify_parameters.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/list_utils.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/py.typed +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/__init__.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/clipboard_utilities.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/deprecated.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/exceptions/__init__.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/exceptions/exception_collector.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/exceptions/exception_utils.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/exceptions/multiple_exceptions.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/logger/__init__.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/logger/logging_instance.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/logger/simple_logger.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/map_reduce.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/markdown_table.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/multiline_string_utils.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/os_utilities.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/persistence/__init__.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/persistence/loader.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/persistence/saver.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/stack_frame_utilities.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/string_wrapper.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/time_utilities.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/wrapper.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities.egg-info/dependency_links.txt +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities.egg-info/top_level.txt +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/requirements.prod.extras.txt +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/requirements.prod.required.txt +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/requirements.prod.txt +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/setup.cfg +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/setup.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/setup_utils.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_asserts.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_build.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_combinations.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_compare_file_lists.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_custom_printers.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_example_numpy.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_exception_utils.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_find_stale_approved_files.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_inline_approvals.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_list.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_multiline_string_utils.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_namer.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_options.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_pairwise_combinations.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_parse_inputs.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_python_patterns.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_scenarios.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_simple_logger.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_split_code.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_verify.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_verify_all.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_verify_argument_parser.py +0 -0
- {approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_writer.py +0 -0
{approval_utilities-14.2.0/approval_utilities.egg-info → approval_utilities-14.3.1}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: approval_utilities
|
|
3
|
-
Version: 14.
|
|
3
|
+
Version: 14.3.1
|
|
4
4
|
Summary: Utilities for your production code that work well with approvaltests
|
|
5
5
|
Home-page: https://github.com/approvals/ApprovalTests.Python
|
|
6
6
|
Author: ApprovalTests Contributors
|
|
@@ -21,3 +21,9 @@ Classifier: Topic :: Software Development :: Libraries
|
|
|
21
21
|
Classifier: Topic :: Utilities
|
|
22
22
|
Requires-Python: >=3.8
|
|
23
23
|
License-File: LICENSE
|
|
24
|
+
Dynamic: author
|
|
25
|
+
Dynamic: author-email
|
|
26
|
+
Dynamic: classifier
|
|
27
|
+
Dynamic: home-page
|
|
28
|
+
Dynamic: requires-python
|
|
29
|
+
Dynamic: summary
|
|
@@ -3,6 +3,7 @@ import json
|
|
|
3
3
|
import os
|
|
4
4
|
|
|
5
5
|
from copy import deepcopy
|
|
6
|
+
from pathlib import Path
|
|
6
7
|
|
|
7
8
|
from typing import Callable, Dict, TypeVar
|
|
8
9
|
|
|
@@ -92,3 +93,8 @@ _K = TypeVar("_K")
|
|
|
92
93
|
|
|
93
94
|
def filter_values(filter: Callable[[_V], bool], a_dict: Dict[_K, _V]) -> Dict[_K, _V]:
|
|
94
95
|
return {k: v for k, v in a_dict.items() if filter(v)}
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
def append_to_file(file: Path, text: str):
|
|
99
|
+
with file.open(mode="a") as f:
|
|
100
|
+
f.write(text)
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1/approval_utilities.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: approval_utilities
|
|
3
|
-
Version: 14.
|
|
3
|
+
Version: 14.3.1
|
|
4
4
|
Summary: Utilities for your production code that work well with approvaltests
|
|
5
5
|
Home-page: https://github.com/approvals/ApprovalTests.Python
|
|
6
6
|
Author: ApprovalTests Contributors
|
|
@@ -21,3 +21,9 @@ Classifier: Topic :: Software Development :: Libraries
|
|
|
21
21
|
Classifier: Topic :: Utilities
|
|
22
22
|
Requires-Python: >=3.8
|
|
23
23
|
License-File: LICENSE
|
|
24
|
+
Dynamic: author
|
|
25
|
+
Dynamic: author-email
|
|
26
|
+
Dynamic: classifier
|
|
27
|
+
Dynamic: home-page
|
|
28
|
+
Dynamic: requires-python
|
|
29
|
+
Dynamic: summary
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities.egg-info/SOURCES.txt
RENAMED
|
@@ -42,6 +42,7 @@ approval_utilities/utilities/logger/simple_logger.py
|
|
|
42
42
|
approval_utilities/utilities/persistence/__init__.py
|
|
43
43
|
approval_utilities/utilities/persistence/loader.py
|
|
44
44
|
approval_utilities/utilities/persistence/saver.py
|
|
45
|
+
tests/test_approvaltests_temp_dir.py
|
|
45
46
|
tests/test_asserts.py
|
|
46
47
|
tests/test_build.py
|
|
47
48
|
tests/test_combinations.py
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
from approvaltests.internals.logs.log_commons import APPROVAL_TESTS_TEMP_DIRECTORY
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def test_temp_directory_is_setup_automatically():
|
|
5
|
+
# setup happens automatically
|
|
6
|
+
gitignore_path = APPROVAL_TESTS_TEMP_DIRECTORY / ".gitignore"
|
|
7
|
+
contents = gitignore_path.read_text()
|
|
8
|
+
assert contents == "*"
|
|
@@ -6,9 +6,11 @@ from approvaltests.file_approver import FileApprover
|
|
|
6
6
|
from approvaltests.reporters.generic_diff_reporter_factory import (
|
|
7
7
|
GenericDiffReporterFactory,
|
|
8
8
|
)
|
|
9
|
+
from approvaltests.reporters.report_quietly import ReportQuietly
|
|
9
10
|
from approvaltests.reporters.testing_reporter import ReporterForTesting
|
|
10
11
|
from approvaltests.string_writer import StringWriter
|
|
11
|
-
from approvaltests.approved_file_log import ApprovedFilesLog
|
|
12
|
+
from approvaltests.internals.logs.approved_file_log import ApprovedFilesLog
|
|
13
|
+
from approvaltests.internals.logs.failed_comparison_log import FailedComparisonLog
|
|
12
14
|
|
|
13
15
|
|
|
14
16
|
class FileApproverTests(unittest.TestCase):
|
|
@@ -55,11 +57,12 @@ class FileApproverTests(unittest.TestCase):
|
|
|
55
57
|
|
|
56
58
|
def test_approved_file_is_logged(self):
|
|
57
59
|
name = approvals.get_default_namer().get_approved_filename()
|
|
58
|
-
log = ApprovedFilesLog.get_approved_files_log()
|
|
59
|
-
log_lines = log.read_text().split("\n")
|
|
60
60
|
name1 = name.replace(".txt", ".txt1")
|
|
61
61
|
name2 = name.replace(".txt", ".txt2")
|
|
62
62
|
|
|
63
|
+
log = ApprovedFilesLog.get_approved_files_log()
|
|
64
|
+
log_lines = log.read_text().split("\n")
|
|
65
|
+
|
|
63
66
|
# check log is cleared
|
|
64
67
|
self.assertNotIn(name1, log_lines)
|
|
65
68
|
self.assertNotIn(name2, log_lines)
|
|
@@ -72,3 +75,40 @@ class FileApproverTests(unittest.TestCase):
|
|
|
72
75
|
log_lines = log.read_text().split("\n")
|
|
73
76
|
self.assertIn(name1, log_lines)
|
|
74
77
|
self.assertIn(name2, log_lines)
|
|
78
|
+
|
|
79
|
+
def test_failed_comparison_is_logged(self):
|
|
80
|
+
approved_name = approvals.get_default_namer().get_approved_filename()
|
|
81
|
+
received_name = approvals.get_default_namer().get_received_filename()
|
|
82
|
+
expected_line = f"{received_name} -> {approved_name}"
|
|
83
|
+
|
|
84
|
+
name1 = expected_line.replace(".txt", ".txt1")
|
|
85
|
+
name2 = expected_line.replace(".txt", ".txt2")
|
|
86
|
+
|
|
87
|
+
log = FailedComparisonLog.get_failed_comparison_log()
|
|
88
|
+
|
|
89
|
+
log_lines = log.read_text().split("\n")
|
|
90
|
+
|
|
91
|
+
# check log is cleared
|
|
92
|
+
self.assertNotIn(name1, log_lines)
|
|
93
|
+
self.assertNotIn(name2, log_lines)
|
|
94
|
+
|
|
95
|
+
# fail a verify and log it
|
|
96
|
+
self.run_a_failing_test(".txt1")
|
|
97
|
+
self.run_a_failing_test(".txt2")
|
|
98
|
+
|
|
99
|
+
# assert that the approved file is logged
|
|
100
|
+
log_lines = log.read_text().split("\n")
|
|
101
|
+
self.assertIn(name1, log_lines)
|
|
102
|
+
self.assertIn(name2, log_lines)
|
|
103
|
+
|
|
104
|
+
def run_a_failing_test(self, extension):
|
|
105
|
+
try:
|
|
106
|
+
verify(
|
|
107
|
+
"a",
|
|
108
|
+
options=Options()
|
|
109
|
+
.for_file.with_extension(extension)
|
|
110
|
+
.with_reporter(ReportQuietly()),
|
|
111
|
+
)
|
|
112
|
+
self.fail("expected to fail")
|
|
113
|
+
except:
|
|
114
|
+
pass
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
version_number = "v14.3.1"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
version_number = "v14.2.0"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/approvaltests/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/deprecated.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/map_reduce.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/os_utilities.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities/utilities/wrapper.py
RENAMED
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/approval_utilities.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_find_stale_approved_files.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_multiline_string_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{approval_utilities-14.2.0 → approval_utilities-14.3.1}/tests/test_verify_argument_parser.py
RENAMED
|
File without changes
|
|
File without changes
|