Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consistency in CFE coverage test helper macros #1626

Closed
jphickey opened this issue Jun 16, 2021 · 0 comments · Fixed by #1627 or #1632
Closed

Consistency in CFE coverage test helper macros #1626

jphickey opened this issue Jun 16, 2021 · 0 comments · Fixed by #1627 or #1632
Assignees
Milestone

Comments

@jphickey
Copy link
Contributor

Is your feature request related to a problem? Please describe.
The following helper macros are defined in ut_support.h and used in sb_UT.c, with the intent of applying to other modules:

  • SETUP
  • ASSERT
  • ASSERT_EQ
  • ASSERT_TRUE
  • EVTCNT
  • EVTSENT

These macros are all specific to/tuned toward CFE coverage testing (i.e. they are not generic) because they embed certain CFE patterns/assumptions, i.e. SETUP and TEARDOWN check for CFE_SUCCESS, the "EVENT" macros deal with the UT stub event capture logic, etc.

Describe the solution you'd like
The genuinely CFE-specific macros should be updated with a CFE_UtAssert_ prefix to indicate that they are assertion statements that are specific to CFE.

For macros which are actually generic, such as "ASSERT_EQ", consider replacing this with the existing generic UtAssert_INT32_EQ macro.

Also for wider coverage test applicability and consistency of logging output, should also add the following:

  • VOIDCALL macro to consistently log functions that do not have a return value, but still want to include the full text of what was called
  • RESOURCEID_EQ macro to check for equality between resource ID values (INT32_EQ is not sufficient here because one should not assume that IDs are integers)

Additional context
Discussed in CCB 2021-06-16, as part of issue #596 and improving the test log output

Requester Info
Joseph Hickey, Vantage Systems, Inc.

@jphickey jphickey self-assigned this Jun 16, 2021
jphickey added a commit to jphickey/cFE that referenced this issue Jun 16, 2021
Rename CFE coverage test assert macros in ut_support.h to have
consistent name prefix.

Also adds a "VOIDCALL" and "RESOURCEID_EQ" macro for logging void
functions and ID checks, respectively.
jphickey added a commit to jphickey/cFE that referenced this issue Jun 16, 2021
Rename CFE coverage test assert macros in ut_support.h to have
consistent name prefix.

Also adds a "VOIDCALL" and "RESOURCEID_EQ" macro for logging void
functions and ID checks, respectively.
jphickey added a commit to jphickey/cFE that referenced this issue Jun 17, 2021
Rename CFE coverage test assert macros in ut_support.h to have
consistent name prefix.

Also adds a "VOIDCALL" and "RESOURCEID_EQ" macro for logging void
functions and ID checks, respectively.
jphickey added a commit to jphickey/cFE that referenced this issue Jun 17, 2021
Rename CFE coverage test assert macros in ut_support.h to have
consistent name prefix.

Also adds a "VOIDCALL" and "RESOURCEID_EQ" macro for logging void
functions and ID checks, respectively.
jphickey added a commit to jphickey/cFE that referenced this issue Jun 21, 2021
Rename CFE coverage test assert macros in ut_support.h to have
consistent name prefix.

Adds implementation functions for completely generic signed/unsigned
comparison asserts, and wrapper macros to invoke those functions.
These functions return the pass/fail status of the assert as a bool
value, so the test case can act on the result.

Also adds a "VOIDCALL" and "RESOURCEID_EQ" macro for logging void
functions and ID checks, respectively.
jphickey added a commit to jphickey/cFE that referenced this issue Jun 21, 2021
Rename CFE coverage test assert macros in ut_support.h to have
consistent name prefix.

Adds implementation functions for completely generic signed/unsigned
comparison asserts, and wrapper macros to invoke those functions.
These functions return the pass/fail status of the assert as a bool
value, so the test case can act on the result.

Also adds a "VOIDCALL" and "RESOURCEID_EQ" macro for logging void
functions and ID checks, respectively.
astrogeco added a commit that referenced this issue Jun 21, 2021
@skliper skliper added this to the 7.0.0 milestone Sep 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants