Skip to content

Draft: Regression test example#123

Closed
gunnar-mb wants to merge 4 commits intomasterfrom
regression_test_example
Closed

Draft: Regression test example#123
gunnar-mb wants to merge 4 commits intomasterfrom
regression_test_example

Conversation

@gunnar-mb
Copy link
Collaborator

@gunnar-mb gunnar-mb commented Jun 4, 2024

(WIP) Regression test CI workflow, to check for problems when doing bigger refactoring etc.

@gunnar-mb gunnar-mb marked this pull request as draft June 4, 2024 16:58
@gunnar-mb gunnar-mb force-pushed the regression_test_example branch from e6263b2 to 13f912d Compare January 7, 2025 14:25
@gunnar-mb
Copy link
Collaborator Author

Rebased.

Gunnar Andersson added 3 commits May 13, 2025 22:29
Factor out functions that do walk-tree and that answer questions about the
model (e.g. is_optional()? for a particular field).  Those functions are
reusable for several tasks and should not be tied to document generation
only.

The implementations of helper functions are now also cleaner, and using
consistent naming of parameters.

The ifex_ast_doc.py was modified accordingly to make use of the new
module ifex_model_walk for walk-function and other helpers.
Other than that, very little change to the actual documentation
generation logic.

Signed-off-by: Gunnar Andersson <gunnar_dev@nospam@novaspring.eu>
This simplifies the implementation of TemplateDir so that it can
easily get the node names to match them against template names.
(the walk function was clearly overkill for this task).

Signed-off-by: Gunnar Andersson <gunnar_dev@nospam@novaspring.eu>
This runs through most outputs we can find (various generators
and documentation generation) and reports any differences compared
to previous versions.  This is useful for spotting regressions and
being confident about refactorings.

At this time, comparison of the result must be done manually -
the workflow does not determine "failure" on a regression (but that is
of course done by the normal unit tests, etc.).

NOTE:  This removes other workflows from regression test branch
because they are superfluous in the current usage (they will be run
when a PR is sent, etc.)

Later, if the regression test is introduced in the PR flow, some
conditions could be set up to make this better.

Signed-off-by: Gunnar Andersson <gunnar_dev@nospam@novaspring.eu>
@gunnar-mb gunnar-mb force-pushed the regression_test_example branch from 13f912d to 3c1885d Compare May 13, 2025 20:32
Signed-off-by: Gunnar Andersson <gunnar.andersson@mercedes-benz.com>
@gunnar-mb gunnar-mb force-pushed the regression_test_example branch from 9ddd1b3 to bfb7b79 Compare May 13, 2025 20:35
@gunnar-mb
Copy link
Collaborator Author

Rebased.

@gunnar-mb
Copy link
Collaborator Author

gunnar-mb commented Jun 4, 2025

This is not fully automated yet so that it can be include on the main branch.
And we also don't always wish to fail the build if changed output is expected.
It will be kept on the separate branch for now.

@gunnar-mb gunnar-mb closed this Jun 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant