validation: Reduce source code/rodata size

Use a common wording for the tests.  Use the new templates for action
requirements described in the RTEMS Software Engineering manual.
This commit is contained in:
Sebastian Huber committed 2021-03-19 16:55:48 +01:00
1 parent eb1cd404d0
commit fa1e7ea054
9 files changed
+1322 -9846

No files matched your search

File diff suppressed because it is too large. Load diff
+62 -60
View File
@@ -184,7 +184,7 @@ static void RtemsBarrierReqDelete_Pre_Id_Prepare(
switch ( state ) {
case RtemsBarrierReqDelete_Pre_Id_NoObj: {
/*
* The ``id`` parameter shall not be associated with a barrier.
* While the ``id`` parameter is not associated with a barrier.
*/
ctx->id = 0;
break;
@@ -192,7 +192,7 @@ static void RtemsBarrierReqDelete_Pre_Id_Prepare(
case RtemsBarrierReqDelete_Pre_Id_Barrier: {
/*
* The ``id`` parameter shall be associated with a barrier.
* While the ``id`` parameter is associated with a barrier.
*/
ctx->id = ctx->barrier_id;
break;
@@ -355,50 +355,6 @@ static void RtemsBarrierReqDelete_Teardown_Wrap( void *arg )
RtemsBarrierReqDelete_Teardown( ctx );
}
static size_t RtemsBarrierReqDelete_Scope( void *arg, char *buf, size_t n )
{
RtemsBarrierReqDelete_Context *ctx;
ctx = arg;
if ( ctx->in_action_loop ) {
return T_get_scope( RtemsBarrierReqDelete_PreDesc, buf, n, ctx->pcs );
}
return 0;
}
static T_fixture RtemsBarrierReqDelete_Fixture = {
.setup = RtemsBarrierReqDelete_Setup_Wrap,
.stop = NULL,
.teardown = RtemsBarrierReqDelete_Teardown_Wrap,
.scope = RtemsBarrierReqDelete_Scope,
.initial_context = &RtemsBarrierReqDelete_Instance
};
static const uint8_t RtemsBarrierReqDelete_TransitionMap[][ 3 ] = {
{
RtemsBarrierReqDelete_Post_Status_InvId,
RtemsBarrierReqDelete_Post_Name_Valid,
RtemsBarrierReqDelete_Post_Flush_No
}, {
RtemsBarrierReqDelete_Post_Status_Ok,
RtemsBarrierReqDelete_Post_Name_Invalid,
RtemsBarrierReqDelete_Post_Flush_Yes
}
};
static const struct {
uint8_t Skip : 1;
uint8_t Pre_Id_NA : 1;
} RtemsBarrierReqDelete_TransitionInfo[] = {
{
0, 0
}, {
0, 0
}
};
static void RtemsBarrierReqDelete_Prepare( RtemsBarrierReqDelete_Context *ctx )
{
rtems_status_code sc;
@@ -430,12 +386,65 @@ static void RtemsBarrierReqDelete_Cleanup( RtemsBarrierReqDelete_Context *ctx )
}
}
typedef struct {
uint8_t Skip : 1;
uint8_t Pre_Id_NA : 1;
uint8_t Post_Status : 2;
uint8_t Post_Name : 2;
uint8_t Post_Flush : 2;
} RtemsBarrierReqDelete_Entry;
static const RtemsBarrierReqDelete_Entry
RtemsBarrierReqDelete_Entries[] = {
{ 0, 0, RtemsBarrierReqDelete_Post_Status_InvId,
RtemsBarrierReqDelete_Post_Name_Valid, RtemsBarrierReqDelete_Post_Flush_No },
{ 0, 0, RtemsBarrierReqDelete_Post_Status_Ok,
RtemsBarrierReqDelete_Post_Name_Invalid,
RtemsBarrierReqDelete_Post_Flush_Yes }
};
static const uint8_t
RtemsBarrierReqDelete_Map[] = {
0, 1
};
static size_t RtemsBarrierReqDelete_Scope( void *arg, char *buf, size_t n )
{
RtemsBarrierReqDelete_Context *ctx;
ctx = arg;
if ( ctx->in_action_loop ) {
return T_get_scope( RtemsBarrierReqDelete_PreDesc, buf, n, ctx->pcs );
}
return 0;
}
static T_fixture RtemsBarrierReqDelete_Fixture = {
.setup = RtemsBarrierReqDelete_Setup_Wrap,
.stop = NULL,
.teardown = RtemsBarrierReqDelete_Teardown_Wrap,
.scope = RtemsBarrierReqDelete_Scope,
.initial_context = &RtemsBarrierReqDelete_Instance
};
static inline RtemsBarrierReqDelete_Entry RtemsBarrierReqDelete_GetEntry(
size_t index
)
{
return RtemsBarrierReqDelete_Entries[
RtemsBarrierReqDelete_Map[ index ]
];
}
/**
* @fn void T_case_body_RtemsBarrierReqDelete( void )
*/
T_TEST_CASE_FIXTURE( RtemsBarrierReqDelete, &RtemsBarrierReqDelete_Fixture )
{
RtemsBarrierReqDelete_Context *ctx;
RtemsBarrierReqDelete_Entry entry;
size_t index;
ctx = T_fixture_context();
@@ -447,12 +456,14 @@ T_TEST_CASE_FIXTURE( RtemsBarrierReqDelete, &RtemsBarrierReqDelete_Fixture )
ctx->pcs[ 0 ] < RtemsBarrierReqDelete_Pre_Id_NA;
++ctx->pcs[ 0 ]
) {
if ( RtemsBarrierReqDelete_TransitionInfo[ index ].Pre_Id_NA ) {
entry = RtemsBarrierReqDelete_GetEntry( index );
if ( entry.Pre_Id_NA ) {
ctx->pcs[ 0 ] = RtemsBarrierReqDelete_Pre_Id_NA;
index += ( RtemsBarrierReqDelete_Pre_Id_NA - 1 );
}
if ( RtemsBarrierReqDelete_TransitionInfo[ index ].Skip ) {
if ( entry.Skip ) {
++index;
continue;
}
@@ -460,18 +471,9 @@ T_TEST_CASE_FIXTURE( RtemsBarrierReqDelete, &RtemsBarrierReqDelete_Fixture )
RtemsBarrierReqDelete_Prepare( ctx );
RtemsBarrierReqDelete_Pre_Id_Prepare( ctx, ctx->pcs[ 0 ] );
RtemsBarrierReqDelete_Action( ctx );
RtemsBarrierReqDelete_Post_Status_Check(
ctx,
RtemsBarrierReqDelete_TransitionMap[ index ][ 0 ]
);
RtemsBarrierReqDelete_Post_Name_Check(
ctx,
RtemsBarrierReqDelete_TransitionMap[ index ][ 1 ]
);
RtemsBarrierReqDelete_Post_Flush_Check(
ctx,
RtemsBarrierReqDelete_TransitionMap[ index ][ 2 ]
);
RtemsBarrierReqDelete_Post_Status_Check( ctx, entry.Post_Status );
RtemsBarrierReqDelete_Post_Name_Check( ctx, entry.Post_Name );
RtemsBarrierReqDelete_Post_Flush_Check( ctx, entry.Post_Flush );
RtemsBarrierReqDelete_Cleanup( ctx );
++index;
}
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff