Skip to content

Commit 9a83176

Browse files
authored
Merge pull request #419 from byte-physics/update-changelog
changelog.rst: Update it
2 parents deeac91 + 8146b9c commit 9a83176

2 files changed

Lines changed: 57 additions & 1 deletion

File tree

Readme.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ The framework itself combines numerous features:
4141
* Test cases can be grouped in test suites, run with multiple inputs, run in independent modules and contain background activity
4242
* Support of standard output formats like [JUNIT](https://junit.org/junit4) and [TAP](https://testanything.org/tap-version-13-specification.html)
4343
* Support for automated execution as part of a CI pipeline
44-
* Optional code coverage determination
44+
* Optional code coverage determination with Cobertura output support
4545
* Optional memory leak tracking
4646
* Fully documented and comes with lots of examples
4747
* Easily expandable and adaptable

docu/sphinx/source/changelog.rst

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,62 @@ All notable changes to this project will be documented in this file.
77

88
The format is based on `Keep a Changelog <https://keepachangelog.com/en/1.0.0/>`_.
99

10+
1.10 (03/21/2023)
11+
-----------------
12+
13+
- Rename the project to **Igor Pro Universal Testing Framework** (IUTF). This also renamed all procedure files.
14+
Although the old main procedure file ``unit-testing.ipf`` still exists, users are advised to switch to
15+
``igortest.ipf``. This change is fully backward compatible as all, now deprecated, names are kept until the next
16+
major release.
17+
- Add a flag to allow shuffling the test suite and test case order, see :ref:`here <shuffle_test_case_order>`
18+
- Fix the order of test case execution: IUTF now always executes the test cases from the same test suite together
19+
- Add support for rerunning "flaky" tests on failure, see :ref:`here <flaky_tests>`
20+
- Document behaviour of runtime errors and aborts in data generators and hooks
21+
- Support test case and data generator names longer than 255 bytes
22+
- Document how the user can abort a test run
23+
- Add :cpp:func:`IUTF_RestoreTracing` for restoring the procedure files from before tracing
24+
- Adopt `reuse <https://api.reuse.software/info/github.com/byte-physics/igortest>`__ specification
25+
- Add data generators as virtual test cases. This allows to use all test assertions inside data generators and failing
26+
test assertions are then attributed to the corresponding data generator. Before they were attributed to the very
27+
first test case being run.
28+
- Also treat user hooks as virtual test cases.
29+
- Support tracing with tests which save the Igor Pro experiment in a different folder
30+
- Be stricter when checking for compatible reentry functions (Igor Pro 6 only)
31+
- Skip test case end user hook as well if the test case was skipped
32+
- Skip test suite end hook when we did not call the test suite begin hook at all
33+
- Require that test cases marked as ``UTF_EXPECTED_FAILURE`` have failing test assertions
34+
- Fix ``UTF_FTAG_TAP_DIRECTIVE``/``UTF_FTAG_TAP_DESCRIPTION`` in Igor Pro 9 due to now illegal characters in dimension
35+
labels
36+
- Completely revise Readme.md
37+
- Copy all history output also to stdin/stderr (Igor Pro 8 and higher)
38+
- Enhance the output on failed assertions to include the full test case name
39+
- Add the test case name on failure for TAP output
40+
- Allow creating TAP and JUNIT output simultaneously
41+
- Introduce the test result wave from which TAP and JUNIT output is generated from
42+
- Fixed code coverage instrumentation to track non-instrumented lines correctly
43+
- Add support for outputting code coverage results into the standard Cobertura format
44+
- Fix testcase discovery for multi-multi data test cases (Igor Pro 6 only)
45+
- Add testing on MacOSX Catalina for Igor Pro 8/9
46+
- Ensure that the abort flag is always cleared on test begin
47+
- Add test to showcase how tracing works in an independent module
48+
- Fix call stack traversing in an independent module
49+
- Add complexity calculation for cobertura output, see `wikipedia <https://en.wikipedia.org/wiki/Cyclomatic_complexity#Interpretation>`__
50+
and the `original article page 36 <https://web.archive.org/web/20220329072759/http://www.mccabe.com/ppt/SoftwareQualityMetricsToIdentifyRisk.ppt>`__
51+
- Fixed a bug where when running IUTF in an independent module, the ``run`` function was searched in ``ProcGlobal``
52+
instead of the independent module.
53+
54+
Test assertions
55+
~~~~~~~~~~~~~~~
56+
57+
- Added assertions for checking runtime errors, see :cpp:func:`*_RTE <CHECK_RTE>`, :cpp:func:`*_ANY_RTE <CHECK_ANY_RTE>` and
58+
:cpp:func:`*_NO_RTE <CHECK_NO_RTE>`
59+
- Changed parameter types of :cpp:func:`*_EQUAL_STR <CHECK_EQUAL_STR>` and :cpp:func:`*_NEQ_STR <CHECK_NEQ_STR>` to be
60+
bass-by-value. This might break cases where a null string was passed. For null strings the test assertions
61+
:cpp:func:`*_NULL_STR <CHECK_NULL_STR>` and :cpp:func:`*_PROPER_STR <CHECK_PROPER_STR>` should be used.
62+
- Output messages from :cpp:func:`INFO` also on stderr and in JUNIT
63+
- Added assertions for compilation testing, see :cpp:func:`*_COMPILATION <CHECK_COMPILATION>` and
64+
:cpp:func:`*_COMPILATION <CHECK_NO_COMPILATION>`
65+
1066
1.09 (01/04/2023)
1167
-----------------
1268

0 commit comments

Comments
 (0)