Changeset 1d07dfa in rtems
- Timestamp:
- 02/03/23 07:53:32 (8 weeks ago)
- Branches:
- master
- Children:
- a67b9443
- Parents:
- f16b8fc3
- git-author:
- Sebastian Huber <sebastian.huber@…> (02/03/23 07:53:32)
- git-committer:
- Sebastian Huber <sebastian.huber@…> (02/06/23 08:46:45)
- Files:
-
- 1 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
spec/build/testsuites/validation/validation-intr.yml
rf16b8fc3 r1d07dfa 11 11 ldflags: 12 12 - -Wl,--wrap=bsp_interrupt_handler_default 13 - -Wl,--wrap=bsp_interrupt_spurious 13 14 links: [] 14 15 source: 15 - testsuites/validation/tc-bsp-interrupt- spurious.c16 - testsuites/validation/tc-bsp-interrupt-handler-dispatch-unchecked.c 16 17 - testsuites/validation/tc-intr-clear.c 17 18 - testsuites/validation/tc-intr-entry-install.c -
testsuites/validation/tc-bsp-interrupt-handler-dispatch-unchecked.c
rf16b8fc3 r1d07dfa 4 4 * @file 5 5 * 6 * @ingroup RTEMSTestCaseBspReqInterrupt Spurious6 * @ingroup RTEMSTestCaseBspReqInterruptHandlerDispatchUnchecked 7 7 */ 8 8 9 9 /* 10 * Copyright (C) 2021 embedded brains GmbH (http://www.embedded-brains.de)10 * Copyright (C) 2021, 2023 embedded brains GmbH (http://www.embedded-brains.de) 11 11 * 12 12 * Redistribution and use in source and binary forms, with or without … … 61 61 62 62 /** 63 * @defgroup RTEMSTestCaseBspReqInterrupt Spurious\64 * spec:/bsp/req/interrupt- spurious63 * @defgroup RTEMSTestCaseBspReqInterruptHandlerDispatchUnchecked \ 64 * spec:/bsp/req/interrupt-handler-dispatch-unchecked 65 65 * 66 66 * @ingroup RTEMSTestSuiteTestsuitesValidationIntr … … 70 70 71 71 typedef enum { 72 BspReqInterrupt Spurious_Pre_First_Null,73 BspReqInterrupt Spurious_Pre_First_Entry,74 BspReqInterrupt Spurious_Pre_First_NA75 } BspReqInterrupt Spurious_Pre_First;72 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_Null, 73 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_Entry, 74 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_NA 75 } BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst; 76 76 77 77 typedef enum { 78 BspReqInterrupt Spurious_Pre_FirstAgain_Null,79 BspReqInterrupt Spurious_Pre_FirstAgain_Entry,80 BspReqInterrupt Spurious_Pre_FirstAgain_NA81 } BspReqInterrupt Spurious_Pre_FirstAgain;78 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_Null, 79 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_Entry, 80 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_NA 81 } BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain; 82 82 83 83 typedef enum { 84 BspReqInterrupt Spurious_Post_Result_FatalError,85 BspReqInterrupt Spurious_Post_Result_Dispatch,86 BspReqInterrupt Spurious_Post_Result_NA87 } BspReqInterrupt Spurious_Post_Result;84 BspReqInterruptHandlerDispatchUnchecked_Post_Result_FatalError, 85 BspReqInterruptHandlerDispatchUnchecked_Post_Result_Dispatch, 86 BspReqInterruptHandlerDispatchUnchecked_Post_Result_NA 87 } BspReqInterruptHandlerDispatchUnchecked_Post_Result; 88 88 89 89 typedef enum { 90 BspReqInterrupt Spurious_Post_FatalSource_SpuriousInterrupt,91 BspReqInterrupt Spurious_Post_FatalSource_NA92 } BspReqInterrupt Spurious_Post_FatalSource;90 BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_SpuriousInterrupt, 91 BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_NA 92 } BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource; 93 93 94 94 typedef enum { 95 BspReqInterrupt Spurious_Post_FatalCode_Vector,96 BspReqInterrupt Spurious_Post_FatalCode_NA97 } BspReqInterrupt Spurious_Post_FatalCode;95 BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_Vector, 96 BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_NA 97 } BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode; 98 98 99 99 typedef struct { 100 100 uint8_t Skip : 1; 101 uint8_t Pre_ First_NA : 1;102 uint8_t Pre_ FirstAgain_NA : 1;101 uint8_t Pre_LoadFirst_NA : 1; 102 uint8_t Pre_LoadFirstAgain_NA : 1; 103 103 uint8_t Post_Result : 2; 104 104 uint8_t Post_FatalSource : 1; 105 105 uint8_t Post_FatalCode : 1; 106 } BspReqInterrupt Spurious_Entry;106 } BspReqInterruptHandlerDispatchUnchecked_Entry; 107 107 108 108 /** 109 * @brief Test context for spec:/bsp/req/interrupt-spurious test case. 109 * @brief Test context for spec:/bsp/req/interrupt-handler-dispatch-unchecked 110 * test case. 110 111 */ 111 112 typedef struct { … … 193 194 * @brief This member contains the current transition map entry. 194 195 */ 195 BspReqInterrupt Spurious_Entry entry;196 BspReqInterruptHandlerDispatchUnchecked_Entry entry; 196 197 197 198 /** … … 201 202 bool skip; 202 203 } Map; 203 } BspReqInterrupt Spurious_Context;204 205 static BspReqInterrupt Spurious_Context206 BspReqInterrupt Spurious_Instance;207 208 static const char * const BspReqInterrupt Spurious_PreDesc_First[] = {204 } BspReqInterruptHandlerDispatchUnchecked_Context; 205 206 static BspReqInterruptHandlerDispatchUnchecked_Context 207 BspReqInterruptHandlerDispatchUnchecked_Instance; 208 209 static const char * const BspReqInterruptHandlerDispatchUnchecked_PreDesc_LoadFirst[] = { 209 210 "Null", 210 211 "Entry", … … 212 213 }; 213 214 214 static const char * const BspReqInterrupt Spurious_PreDesc_FirstAgain[] = {215 static const char * const BspReqInterruptHandlerDispatchUnchecked_PreDesc_LoadFirstAgain[] = { 215 216 "Null", 216 217 "Entry", … … 218 219 }; 219 220 220 static const char * const * const BspReqInterrupt Spurious_PreDesc[] = {221 BspReqInterrupt Spurious_PreDesc_First,222 BspReqInterrupt Spurious_PreDesc_FirstAgain,221 static const char * const * const BspReqInterruptHandlerDispatchUnchecked_PreDesc[] = { 222 BspReqInterruptHandlerDispatchUnchecked_PreDesc_LoadFirst, 223 BspReqInterruptHandlerDispatchUnchecked_PreDesc_LoadFirstAgain, 223 224 NULL 224 225 }; 225 226 226 typedef BspReqInterrupt Spurious_Context Context;227 typedef BspReqInterruptHandlerDispatchUnchecked_Context Context; 227 228 228 229 static bool test_case_active; … … 284 285 } 285 286 286 static void BspReqInterruptSpurious_Pre_First_Prepare( 287 BspReqInterruptSpurious_Context *ctx, 288 BspReqInterruptSpurious_Pre_First state 287 #if defined(RTEMS_SMP) 288 void __real_bsp_interrupt_spurious( rtems_vector_number vector ); 289 290 void __wrap_bsp_interrupt_spurious( rtems_vector_number vector ); 291 292 void __wrap_bsp_interrupt_spurious( rtems_vector_number vector ) 293 { 294 if ( test_case_active ) { 295 Context *ctx; 296 297 ctx = T_fixture_context(); 298 *ctx->first = ctx->first_again; 299 } 300 301 __real_bsp_interrupt_spurious( vector ); 302 } 303 #endif 304 305 static void BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_Prepare( 306 BspReqInterruptHandlerDispatchUnchecked_Context *ctx, 307 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst state 289 308 ) 290 309 { 291 310 switch ( state ) { 292 case BspReqInterrupt Spurious_Pre_First_Null: {311 case BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_Null: { 293 312 /* 294 313 * While the first loaded value of the pointer to the first interrupt … … 300 319 } 301 320 302 case BspReqInterrupt Spurious_Pre_First_Entry: {321 case BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_Entry: { 303 322 /* 304 323 * While the first loaded value of the pointer to the first interrupt … … 310 329 } 311 330 312 case BspReqInterrupt Spurious_Pre_First_NA:313 break; 314 } 315 } 316 317 static void BspReqInterrupt Spurious_Pre_FirstAgain_Prepare(318 BspReqInterrupt Spurious_Context*ctx,319 BspReqInterrupt Spurious_Pre_FirstAgain state331 case BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_NA: 332 break; 333 } 334 } 335 336 static void BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_Prepare( 337 BspReqInterruptHandlerDispatchUnchecked_Context *ctx, 338 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain state 320 339 ) 321 340 { 322 341 switch ( state ) { 323 case BspReqInterrupt Spurious_Pre_FirstAgain_Null: {342 case BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_Null: { 324 343 /* 325 344 * While the second loaded value of the pointer to the first interrupt … … 331 350 } 332 351 333 case BspReqInterrupt Spurious_Pre_FirstAgain_Entry: {352 case BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_Entry: { 334 353 /* 335 354 * While the second loaded value of the pointer to the first interrupt … … 341 360 } 342 361 343 case BspReqInterrupt Spurious_Pre_FirstAgain_NA:344 break; 345 } 346 } 347 348 static void BspReqInterrupt Spurious_Post_Result_Check(349 BspReqInterrupt Spurious_Context *ctx,350 BspReqInterrupt Spurious_Post_Result state362 case BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_NA: 363 break; 364 } 365 } 366 367 static void BspReqInterruptHandlerDispatchUnchecked_Post_Result_Check( 368 BspReqInterruptHandlerDispatchUnchecked_Context *ctx, 369 BspReqInterruptHandlerDispatchUnchecked_Post_Result state 351 370 ) 352 371 { 353 372 switch ( state ) { 354 case BspReqInterrupt Spurious_Post_Result_FatalError: {373 case BspReqInterruptHandlerDispatchUnchecked_Post_Result_FatalError: { 355 374 /* 356 375 * A fatal error shall occur. … … 361 380 } 362 381 363 case BspReqInterrupt Spurious_Post_Result_Dispatch: {382 case BspReqInterruptHandlerDispatchUnchecked_Post_Result_Dispatch: { 364 383 /* 365 384 * The interrupt entries installed at the interrupt vector specified by … … 371 390 } 372 391 373 case BspReqInterrupt Spurious_Post_Result_NA:374 break; 375 } 376 } 377 378 static void BspReqInterrupt Spurious_Post_FatalSource_Check(379 BspReqInterrupt Spurious_Context *ctx,380 BspReqInterrupt Spurious_Post_FatalSource state392 case BspReqInterruptHandlerDispatchUnchecked_Post_Result_NA: 393 break; 394 } 395 } 396 397 static void BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_Check( 398 BspReqInterruptHandlerDispatchUnchecked_Context *ctx, 399 BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource state 381 400 ) 382 401 { 383 402 switch ( state ) { 384 case BspReqInterrupt Spurious_Post_FatalSource_SpuriousInterrupt: {403 case BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_SpuriousInterrupt: { 385 404 /* 386 405 * The fatal source shall be equal to … … 391 410 } 392 411 393 case BspReqInterrupt Spurious_Post_FatalSource_NA:394 break; 395 } 396 } 397 398 static void BspReqInterrupt Spurious_Post_FatalCode_Check(399 BspReqInterrupt Spurious_Context *ctx,400 BspReqInterrupt Spurious_Post_FatalCode state412 case BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_NA: 413 break; 414 } 415 } 416 417 static void BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_Check( 418 BspReqInterruptHandlerDispatchUnchecked_Context *ctx, 419 BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode state 401 420 ) 402 421 { 403 422 switch ( state ) { 404 case BspReqInterrupt Spurious_Post_FatalCode_Vector: {423 case BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_Vector: { 405 424 /* 406 425 * The fatal code shall be equal to the ``vector`` parameter. … … 410 429 } 411 430 412 case BspReqInterrupt Spurious_Post_FatalCode_NA:413 break; 414 } 415 } 416 417 static void BspReqInterrupt Spurious_Setup(418 BspReqInterrupt Spurious_Context *ctx431 case BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_NA: 432 break; 433 } 434 } 435 436 static void BspReqInterruptHandlerDispatchUnchecked_Setup( 437 BspReqInterruptHandlerDispatchUnchecked_Context *ctx 419 438 ) 420 439 { … … 432 451 } 433 452 434 static void BspReqInterrupt Spurious_Setup_Wrap( void *arg )435 { 436 BspReqInterrupt Spurious_Context *ctx;453 static void BspReqInterruptHandlerDispatchUnchecked_Setup_Wrap( void *arg ) 454 { 455 BspReqInterruptHandlerDispatchUnchecked_Context *ctx; 437 456 438 457 ctx = arg; 439 458 ctx->Map.in_action_loop = false; 440 BspReqInterrupt Spurious_Setup( ctx );441 } 442 443 static void BspReqInterrupt Spurious_Teardown(444 BspReqInterrupt Spurious_Context *ctx459 BspReqInterruptHandlerDispatchUnchecked_Setup( ctx ); 460 } 461 462 static void BspReqInterruptHandlerDispatchUnchecked_Teardown( 463 BspReqInterruptHandlerDispatchUnchecked_Context *ctx 445 464 ) 446 465 { … … 453 472 } 454 473 455 static void BspReqInterrupt Spurious_Teardown_Wrap( void *arg )456 { 457 BspReqInterrupt Spurious_Context *ctx;474 static void BspReqInterruptHandlerDispatchUnchecked_Teardown_Wrap( void *arg ) 475 { 476 BspReqInterruptHandlerDispatchUnchecked_Context *ctx; 458 477 459 478 ctx = arg; 460 479 ctx->Map.in_action_loop = false; 461 BspReqInterrupt Spurious_Teardown( ctx );462 } 463 464 static void BspReqInterrupt Spurious_Action(465 BspReqInterrupt Spurious_Context *ctx480 BspReqInterruptHandlerDispatchUnchecked_Teardown( ctx ); 481 } 482 483 static void BspReqInterruptHandlerDispatchUnchecked_Action( 484 BspReqInterruptHandlerDispatchUnchecked_Context *ctx 466 485 ) 467 486 { … … 472 491 ctx->fatal_code = UINT32_MAX; 473 492 474 #if defined(RTEMS_SMP) 475 if ( *ctx->first == NULL && ctx->first_again != NULL ) { 476 *ctx->first = ctx->first_again; 477 bsp_interrupt_spurious( ctx->test_vector ); 478 } else 479 #endif 480 { 481 (void) rtems_interrupt_vector_enable( ctx->test_vector ); 482 483 CallWithinISRRaise(); 484 485 while ( !ctx->interrupt_occurred ) { 486 /* Wait */ 487 } 488 489 Disable( ctx ); 490 } 491 } 492 493 static const BspReqInterruptSpurious_Entry 494 BspReqInterruptSpurious_Entries[] = { 495 { 0, 0, 1, BspReqInterruptSpurious_Post_Result_Dispatch, 496 BspReqInterruptSpurious_Post_FatalSource_NA, 497 BspReqInterruptSpurious_Post_FatalCode_NA }, 493 (void) rtems_interrupt_vector_enable( ctx->test_vector ); 494 495 CallWithinISRRaise(); 496 497 while ( !ctx->interrupt_occurred ) { 498 /* Wait */ 499 } 500 501 Disable( ctx ); 502 } 503 504 static const BspReqInterruptHandlerDispatchUnchecked_Entry 505 BspReqInterruptHandlerDispatchUnchecked_Entries[] = { 506 { 0, 0, 1, BspReqInterruptHandlerDispatchUnchecked_Post_Result_Dispatch, 507 BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_NA, 508 BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_NA }, 498 509 #if defined(RTEMS_SMP) 499 { 0, 0, 0, BspReqInterrupt Spurious_Post_Result_FatalError,500 BspReqInterrupt Spurious_Post_FatalSource_SpuriousInterrupt,501 BspReqInterrupt Spurious_Post_FatalCode_Vector },510 { 0, 0, 0, BspReqInterruptHandlerDispatchUnchecked_Post_Result_FatalError, 511 BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_SpuriousInterrupt, 512 BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_Vector }, 502 513 #else 503 { 0, 0, 1, BspReqInterrupt Spurious_Post_Result_FatalError,504 BspReqInterrupt Spurious_Post_FatalSource_SpuriousInterrupt,505 BspReqInterrupt Spurious_Post_FatalCode_Vector },514 { 0, 0, 1, BspReqInterruptHandlerDispatchUnchecked_Post_Result_FatalError, 515 BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_SpuriousInterrupt, 516 BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_Vector }, 506 517 #endif 507 518 #if defined(RTEMS_SMP) 508 { 0, 0, 0, BspReqInterrupt Spurious_Post_Result_Dispatch,509 BspReqInterrupt Spurious_Post_FatalSource_NA,510 BspReqInterrupt Spurious_Post_FatalCode_NA }519 { 0, 0, 0, BspReqInterruptHandlerDispatchUnchecked_Post_Result_Dispatch, 520 BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_NA, 521 BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_NA } 511 522 #else 512 { 0, 0, 1, BspReqInterrupt Spurious_Post_Result_FatalError,513 BspReqInterrupt Spurious_Post_FatalSource_SpuriousInterrupt,514 BspReqInterrupt Spurious_Post_FatalCode_Vector }523 { 0, 0, 1, BspReqInterruptHandlerDispatchUnchecked_Post_Result_FatalError, 524 BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_SpuriousInterrupt, 525 BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_Vector } 515 526 #endif 516 527 }; 517 528 518 529 static const uint8_t 519 BspReqInterrupt Spurious_Map[] = {530 BspReqInterruptHandlerDispatchUnchecked_Map[] = { 520 531 1, 2, 0, 0 521 532 }; 522 533 523 static size_t BspReqInterruptSpurious_Scope( void *arg, char *buf, size_t n ) 524 { 525 BspReqInterruptSpurious_Context *ctx; 534 static size_t BspReqInterruptHandlerDispatchUnchecked_Scope( 535 void *arg, 536 char *buf, 537 size_t n 538 ) 539 { 540 BspReqInterruptHandlerDispatchUnchecked_Context *ctx; 526 541 527 542 ctx = arg; … … 529 544 if ( ctx->Map.in_action_loop ) { 530 545 return T_get_scope( 531 BspReqInterrupt Spurious_PreDesc,546 BspReqInterruptHandlerDispatchUnchecked_PreDesc, 532 547 buf, 533 548 n, … … 539 554 } 540 555 541 static T_fixture BspReqInterrupt Spurious_Fixture = {542 .setup = BspReqInterrupt Spurious_Setup_Wrap,556 static T_fixture BspReqInterruptHandlerDispatchUnchecked_Fixture = { 557 .setup = BspReqInterruptHandlerDispatchUnchecked_Setup_Wrap, 543 558 .stop = NULL, 544 .teardown = BspReqInterrupt Spurious_Teardown_Wrap,545 .scope = BspReqInterrupt Spurious_Scope,546 .initial_context = &BspReqInterrupt Spurious_Instance559 .teardown = BspReqInterruptHandlerDispatchUnchecked_Teardown_Wrap, 560 .scope = BspReqInterruptHandlerDispatchUnchecked_Scope, 561 .initial_context = &BspReqInterruptHandlerDispatchUnchecked_Instance 547 562 }; 548 563 549 static inline BspReqInterruptSpurious_Entry BspReqInterruptSpurious_PopEntry( 550 BspReqInterruptSpurious_Context *ctx 564 static inline BspReqInterruptHandlerDispatchUnchecked_Entry 565 BspReqInterruptHandlerDispatchUnchecked_PopEntry( 566 BspReqInterruptHandlerDispatchUnchecked_Context *ctx 551 567 ) 552 568 { … … 555 571 index = ctx->Map.index; 556 572 ctx->Map.index = index + 1; 557 return BspReqInterrupt Spurious_Entries[558 BspReqInterrupt Spurious_Map[ index ]573 return BspReqInterruptHandlerDispatchUnchecked_Entries[ 574 BspReqInterruptHandlerDispatchUnchecked_Map[ index ] 559 575 ]; 560 576 } 561 577 562 static void BspReqInterrupt Spurious_SetPreConditionStates(563 BspReqInterrupt Spurious_Context *ctx578 static void BspReqInterruptHandlerDispatchUnchecked_SetPreConditionStates( 579 BspReqInterruptHandlerDispatchUnchecked_Context *ctx 564 580 ) 565 581 { 566 582 ctx->Map.pcs[ 0 ] = ctx->Map.pci[ 0 ]; 567 583 568 if ( ctx->Map.entry.Pre_ FirstAgain_NA ) {569 ctx->Map.pcs[ 1 ] = BspReqInterrupt Spurious_Pre_FirstAgain_NA;584 if ( ctx->Map.entry.Pre_LoadFirstAgain_NA ) { 585 ctx->Map.pcs[ 1 ] = BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_NA; 570 586 } else { 571 587 ctx->Map.pcs[ 1 ] = ctx->Map.pci[ 1 ]; … … 573 589 } 574 590 575 static void BspReqInterruptSpurious_TestVariant( 576 BspReqInterruptSpurious_Context *ctx 577 ) 578 { 579 BspReqInterruptSpurious_Pre_First_Prepare( ctx, ctx->Map.pcs[ 0 ] ); 580 BspReqInterruptSpurious_Pre_FirstAgain_Prepare( ctx, ctx->Map.pcs[ 1 ] ); 581 BspReqInterruptSpurious_Action( ctx ); 582 BspReqInterruptSpurious_Post_Result_Check( ctx, ctx->Map.entry.Post_Result ); 583 BspReqInterruptSpurious_Post_FatalSource_Check( 591 static void BspReqInterruptHandlerDispatchUnchecked_TestVariant( 592 BspReqInterruptHandlerDispatchUnchecked_Context *ctx 593 ) 594 { 595 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_Prepare( 596 ctx, 597 ctx->Map.pcs[ 0 ] 598 ); 599 BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_Prepare( 600 ctx, 601 ctx->Map.pcs[ 1 ] 602 ); 603 BspReqInterruptHandlerDispatchUnchecked_Action( ctx ); 604 BspReqInterruptHandlerDispatchUnchecked_Post_Result_Check( 605 ctx, 606 ctx->Map.entry.Post_Result 607 ); 608 BspReqInterruptHandlerDispatchUnchecked_Post_FatalSource_Check( 584 609 ctx, 585 610 ctx->Map.entry.Post_FatalSource 586 611 ); 587 BspReqInterrupt Spurious_Post_FatalCode_Check(612 BspReqInterruptHandlerDispatchUnchecked_Post_FatalCode_Check( 588 613 ctx, 589 614 ctx->Map.entry.Post_FatalCode … … 592 617 593 618 /** 594 * @fn void T_case_body_BspReqInterrupt Spurious( void )619 * @fn void T_case_body_BspReqInterruptHandlerDispatchUnchecked( void ) 595 620 */ 596 621 T_TEST_CASE_FIXTURE( 597 BspReqInterrupt Spurious,598 &BspReqInterrupt Spurious_Fixture599 ) 600 { 601 BspReqInterrupt Spurious_Context *ctx;622 BspReqInterruptHandlerDispatchUnchecked, 623 &BspReqInterruptHandlerDispatchUnchecked_Fixture 624 ) 625 { 626 BspReqInterruptHandlerDispatchUnchecked_Context *ctx; 602 627 603 628 ctx = T_fixture_context(); … … 606 631 607 632 for ( 608 ctx->Map.pci[ 0 ] = BspReqInterrupt Spurious_Pre_First_Null;609 ctx->Map.pci[ 0 ] < BspReqInterrupt Spurious_Pre_First_NA;633 ctx->Map.pci[ 0 ] = BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_Null; 634 ctx->Map.pci[ 0 ] < BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirst_NA; 610 635 ++ctx->Map.pci[ 0 ] 611 636 ) { 612 637 for ( 613 ctx->Map.pci[ 1 ] = BspReqInterrupt Spurious_Pre_FirstAgain_Null;614 ctx->Map.pci[ 1 ] < BspReqInterrupt Spurious_Pre_FirstAgain_NA;638 ctx->Map.pci[ 1 ] = BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_Null; 639 ctx->Map.pci[ 1 ] < BspReqInterruptHandlerDispatchUnchecked_Pre_LoadFirstAgain_NA; 615 640 ++ctx->Map.pci[ 1 ] 616 641 ) { 617 ctx->Map.entry = BspReqInterrupt Spurious_PopEntry( ctx );618 BspReqInterrupt Spurious_SetPreConditionStates( ctx );619 BspReqInterrupt Spurious_TestVariant( ctx );642 ctx->Map.entry = BspReqInterruptHandlerDispatchUnchecked_PopEntry( ctx ); 643 BspReqInterruptHandlerDispatchUnchecked_SetPreConditionStates( ctx ); 644 BspReqInterruptHandlerDispatchUnchecked_TestVariant( ctx ); 620 645 } 621 646 }
Note: See TracChangeset
for help on using the changeset viewer.