cfinterface 1.8.2__tar.gz → 1.8.3__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.
- {cfinterface-1.8.2 → cfinterface-1.8.3}/PKG-INFO +1 -1
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/__init__.py +1 -1
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/floatfield.py +3 -2
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_floatfield.py +17 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/.github/workflows/docs.yml +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/.github/workflows/main.yml +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/.github/workflows/publish.yml +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/.gitignore +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/LICENSE +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/README.md +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/_utils/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/adapters/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/adapters/components/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/adapters/components/line/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/adapters/components/line/repository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/adapters/components/repository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/adapters/reading/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/adapters/reading/repository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/adapters/writing/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/adapters/writing/repository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/block.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/datetimefield.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/defaultblock.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/defaultregister.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/defaultsection.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/field.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/integerfield.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/line.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/literalfield.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/register.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/components/section.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/data/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/data/blockdata.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/data/registerdata.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/data/sectiondata.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/files/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/files/blockfile.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/files/registerfile.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/files/sectionfile.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/py.typed +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/reading/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/reading/blockreading.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/reading/registerreading.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/reading/sectionreading.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/writing/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/writing/blockwriting.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/writing/registerwriting.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/cfinterface/writing/sectionwriting.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/conf.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/getting_started/contributing.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/getting_started/tutorial.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/index.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/install/install.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/blocks/files/block.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/blocks/files/blockdata.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/blocks/files/blockfile.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/blocks/index.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/components/datetimefield.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/components/field.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/components/floatfield.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/components/integerfield.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/components/literalfield.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/index.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/line/index.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/registers/files/register.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/registers/files/registerdata.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/registers/files/registerfile.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/registers/index.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/sections/files/section.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/sections/files/sectiondata.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/sections/files/sectionfile.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/sections/index.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/examples/README.rst +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/examples/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/pyproject.toml +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/components/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/components/test_blockrepository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/components/test_linerepository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/components/test_registerrepository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/components/test_sectionrepository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/reading/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/reading/test_readingrepository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/writing/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/writing/test_writingrepository.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_block.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_datetimefield.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_defaultblock.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_defaultregister.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_defaultsection.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_field.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_integerfield.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_line.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_literalfield.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_register.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/components/test_section.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/data/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/data/test_blockdata.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/data/test_registerdata.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/data/test_sectiondata.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/files/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/files/test_blockfile.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/files/test_registerfile.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/files/test_sectionfile.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/mocks/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/mocks/mock_open.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/reading/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/reading/test_blockreading.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/reading/test_registerreading.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/reading/test_sectionreading.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/writing/__init__.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/writing/test_blockwriting.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/writing/test_registerwriting.py +0 -0
- {cfinterface-1.8.2 → cfinterface-1.8.3}/tests/writing/test_sectionwriting.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cfinterface
|
|
3
|
-
Version: 1.8.
|
|
3
|
+
Version: 1.8.3
|
|
4
4
|
Summary: Interface for handling custom formatted files
|
|
5
5
|
Project-URL: Documentation, https://rjmalves.github.io/cfinterface/
|
|
6
6
|
Project-URL: Repository, https://github.com/rjmalves/cfinterface/
|
|
@@ -92,11 +92,12 @@ class FloatField(Field):
|
|
|
92
92
|
value = value[: self.size]
|
|
93
93
|
else:
|
|
94
94
|
for d in range(self.__decimal_digits, -1, -1):
|
|
95
|
+
formatting_format = "E" if self.__format.lower() == "d" else self.__format
|
|
95
96
|
value = "{:.{d}{format}}".format(
|
|
96
97
|
round(self.value, d),
|
|
97
98
|
d=d,
|
|
98
|
-
format=
|
|
99
|
-
)
|
|
99
|
+
format=formatting_format,
|
|
100
|
+
).replace("E", self.__format)
|
|
100
101
|
if len(value) <= self._size:
|
|
101
102
|
break
|
|
102
103
|
return value.rjust(self.size)
|
|
@@ -19,6 +19,15 @@ def test_floatfield_read_scientific_notation():
|
|
|
19
19
|
assert field.value == float(data)
|
|
20
20
|
|
|
21
21
|
|
|
22
|
+
|
|
23
|
+
def test_floatfield_read_scientific_notation_d():
|
|
24
|
+
data = "1.2D3"
|
|
25
|
+
field = FloatField(5, 0, 1, format="D")
|
|
26
|
+
line = f"{data}-something-else"
|
|
27
|
+
field.read(line)
|
|
28
|
+
assert field.value == float(data.replace("D", "e"))
|
|
29
|
+
|
|
30
|
+
|
|
22
31
|
def test_floatfield_comma_separator():
|
|
23
32
|
data = "1,23"
|
|
24
33
|
field = FloatField(4, 0, 1, sep=",")
|
|
@@ -56,6 +65,14 @@ def test_floatfield_write_scientific_notation():
|
|
|
56
65
|
line_after = field.write(line_before)
|
|
57
66
|
assert line_before == line_after
|
|
58
67
|
|
|
68
|
+
def test_floatfield_write_scientific_notation_d():
|
|
69
|
+
data_text = "1.2D+3"
|
|
70
|
+
line_before = f"field-{data_text}-else"
|
|
71
|
+
data = float(data_text.replace("D", "e"))
|
|
72
|
+
field = FloatField(5, 6, 1, format="D", value=data)
|
|
73
|
+
line_after = field.write(line_before)
|
|
74
|
+
assert line_before == line_after
|
|
75
|
+
|
|
59
76
|
|
|
60
77
|
def test_floatfield_write_scientific_notation_0():
|
|
61
78
|
data_text = "0e+00"
|
|
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
|
|
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
|
|
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
|
|
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
|
{cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/components/datetimefield.rst
RENAMED
|
File without changes
|
|
File without changes
|
{cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/components/floatfield.rst
RENAMED
|
File without changes
|
{cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/components/integerfield.rst
RENAMED
|
File without changes
|
{cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/fields/components/literalfield.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/registers/files/registerdata.rst
RENAMED
|
File without changes
|
{cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/registers/files/registerfile.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/sections/files/sectiondata.rst
RENAMED
|
File without changes
|
{cfinterface-1.8.2 → cfinterface-1.8.3}/docs/source/reference/sections/files/sectionfile.rst
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
|
{cfinterface-1.8.2 → cfinterface-1.8.3}/tests/adapters/components/test_registerrepository.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
|
|
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
|
|
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
|