[PATCH v2] eng: Add guidelines for validation tests

Gedare Bloom gedare at rtems.org
Fri Jun 16 19:17:33 UTC 2023


On Thu, Jun 15, 2023 at 11:09 PM Sebastian Huber
<sebastian.huber at embedded-brains.de> wrote:
>
> Update #3717.
> ---
> v2:
>
> * Mention that file name should be unique.
> * Clarify file name parts.
> * Add examples for enabled-by expressions.
>
>  eng/req/howto.rst | 80 +++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 80 insertions(+)
>
> diff --git a/eng/req/howto.rst b/eng/req/howto.rst
> index 0de3c01..125dac5 100644
> --- a/eng/req/howto.rst
> +++ b/eng/req/howto.rst
> @@ -1127,6 +1127,86 @@ the following post-condition states.
>            parameter in past calls to ${../if/directive:/name} shall not be
>            accessed by the ${../if/directive:/name} call.
>
> +Validation Test Guidelines
> +--------------------------
> +
> +The validation test cases, test runners, and test suites are generated by the
> +``./spec2modules.py`` script from specification items.  For the placement and
> +naming of the generated sources use the following rules:
> +
> +* Place architecture-specific validation test sources and programs into the
> +  ``testsuites/validation/cpu`` directory.
> +
> +* Place BSP-specific validation test sources and programs into the
> +  ``testsuites/validation/bsps`` directory.
> +
> +* Place all other validation test sources and programs into the
> +  ``testsuites/validation`` directory.
> +
> +* Place architecture-specific unit test sources and programs into the
> +  ``testsuites/unit/cpu`` directory.
> +
> +* Place BSP-specific unit test sources and programs into the
> +  ``testsuites/unit/bsps`` directory.
> +
> +* Place all other unit test sources and programs into the
> +  ``testsuites/unit`` directory.
> +
> +* Use dashes (``-``) to separate parts of a file name.  Use only dashes, the
> +  digits ``0`` to ``9``, and the lower case characters ``a`` to ``z`` for file
> +  names.  In particular, do not use underscores (``_``).
> +
> +* The parts of a file name shall be separated by dashes and ordered from most
> +  general (left) to more specific (right), for example ``tc-task-construct.c``.
> +
> +* The file names associated with tests shall be unique within the system since
> +  the test framework prints out only the base file names.
> +
> +* Use the prefix ``tc-`` for test case files.
> +
> +* Use the prefix ``tr-`` for test runner files.
> +
> +* Use the prefix ``ts-`` for test suite files.
> +
> +* Use the prefix ``tx-`` for test extension files (test support code).
> +
> +* Tests for fatal errors shall have ``fatal`` as the most general file part,
> +  for example ``ts-fatal-too-large-tls-size.c``.
> +
> +* Validation test suites shall have ``validation`` as the most general file
> +  part, for example ``ts-validation-no-clock-0.c``.
> +
> +* Unit test suites shall have ``unit`` as the most general file part, for
> +  example ``ts-unit-no-clock-0.c``.
> +
> +* Architecture-specific files shall have the architecture name as a file part,
> +  for example ``ts-fatal-sparc-leon3-clock-initialization.c``.
> +
> +* BSP-specific files shall have the BSP family or variant name as a file part,
> +  for example ``tc-sparc-gr712rc.c``.
> +
> +* Architecture-specific or BSP-specific tests shall use the ``enabled-by``
> +  attribute of the associated specification item to make the build item
> +  conditional, for example:
> +
> +  .. code-block:: yaml
> +
> +      ...
> +      build-type: objects
> +      enabled-by: arm
> +      type: build
> +      ...
> +
> +  .. code-block:: yaml
> +
> +      ...
> +      build-type: test-program
> +      enabled-by: bsps/sparc/leon3
> +      type: build
> +      ...
> +
> +
> +
I think too many new lines

Otherwise, looks good

>  Verify the Specification Items
>  ------------------------------
>
> --
> 2.35.3
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel


More information about the devel mailing list