//***************************************************************************** // (C) Automotive Lighting Reutlingen GmbH // Tuebinger Strasse 123, 72762 Reutlingen, Germany // // Automotive Lighting Reutlingen GmbH owns all the rights to this work. // This work shall not be copied, reproduced, used, modified, transferred // or its information shall not be disclosed without the prior written // authorization of Automotive Lighting Reutlingen GmbH. //***************************************************************************** //----------------------------------------------------------------------------- /// \file Test.c /// /// \brief Unit Test Cases for LedR /// /// \author /// //----------------------------------------------------------------------------- #include #include //#include #include #include #include #include #include #define Mt_printf(...) //printf(__VA_ARGS__) extern tiu16Percent_1_328 CtrlLed_aunAnimaRamp[ANIMMA_NR_PIXELS] ; FUNC(void, RTE_CODE) Rte_MemCopy (void * LpDestination, const void * LpSource, uint32 LulDataSize) { uint32 LulIndex; uint8* LpDest = (uint8*)LpDestination; const uint8* LpSrc = (const uint8*)LpSource; if ((NULL != LpDest) && (NULL != LpSrc)) { for (LulIndex = 0; LulIndex < LulDataSize; LulIndex++) { LpDest[LulIndex] = LpSrc[LulIndex]; } } } const tRomPara_CodingArea applicationCodingData; tRomPara_CodingArea coding_data; const tRomPara_CodingArea* applicationCodingDataptr = &coding_data; CtrlLed_tisLsLmmTarget Rte_ppLsLmmTarget[LEDR_CFG_LSM_MAX_NO_OF_VIRT_LS_CHANNELS]; CtrlLed_tisMxSegTarget Rte_ppMxSegTarget[LEDR_CFG_MATRIX_NO_OF_SEGMENTS]; CtrlLed_tieMountingSide Rte_ucMountingSide; uint8 Rte_aucLsTarget0_aucEnable[LEDR_CFG_LED_MAX_NO_OF_LS_CHANNELS]; CtrlLed_tisLsTarget_perc Rte_asLsTarget0_asSetting[LEDR_CFG_LED_MAX_NO_OF_LS_CHANNELS]; CtrlLed_tiu16Percent_1_328 Rte_aucExtSwitchTarget0_aunDutyCycle[CTRLLED_CFG_MAX_NO_OF_MLC][CTRLLED_CFG_MAX_NO_OF_SWITCHES_ON_MLC]; uint8 Rte_aucExtSwitchTarget0_aucEnable[CTRLLED_CFG_MAX_NO_OF_MLC][CTRLLED_CFG_MAX_NO_OF_SWITCHES_ON_MLC]; CtrlLed_tiu32Thermozone Rte_ppCtrlLedLsTarget0_aulThermozone[LEDR_CFG_LED_MAX_NO_OF_LS_CHANNELS]; CtrlLed_tiu32Thermozone Rte_ppCtrlLedExtSwitchTarget0_aulThermozone[CTRLLED_CFG_MAX_NO_OF_MLC][CTRLLED_CFG_MAX_NO_OF_SWITCHES_ON_MLC]; CtrlLed_tisLsSafetyStatusErrorArr Rte_LsSafetyStatusErrorArr; tisAllMlcSwitchStatus Rte_ppAllMlcSwitchStatus; CtrlLed_tisVirtLsStatusFaultArr Rte_LsStatusFaultArr; CtrlLed_tisMxSegStatusErrorArr Rte_ppCtrlLedMxSwitchStatusError0; tieDataStatus Rte_GaaCodDataStat; uint16 unInput = 2u; uint8 ucX_arr[8] = { 0, 40, 80, 120, 150, 180, 190, 200 } ; uint8 ucY_arr[8] = {0, 5, 24, 62, 103, 157, 178, 200 } ; uint8 ucPointsNo = 8u ; //----------------------------------------------------------------------------- /// \Test Case : Mt_LedR_Test_01 /// /// \Test Case Description /// - Test subject: /// To call riLedRInit, rpLedR10ms function on all variants /// /// - Expected test results: /// - All conditions and assigned values mentioned for each test case/step shall be reached and passed /// //----------------------------------------------------------------------------- void Mt_LedR_Test_01(void) { uint8* temp = applicationCodingDataptr->System.VariantSelection.HeadlightsVariant; temp = HEADLIGHTS_VARIANT_MID; Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_RIGHT; riLedRInit(); Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_LEFT; temp = HEADLIGHTS_VARIANT_LOW_1; riLedRInit(); temp = HEADLIGHTS_VARIANT_LOW_2; riLedRInit(); for (int itrTI = 0; itrTI < 1; itrTI++) { Rte_ppLsLmmTarget[itrTI].eRampType = 0; Rte_ppLsLmmTarget[itrTI].ucAnimation = 0; Rte_ppLsLmmTarget[itrTI].ucPriority = 1; Rte_ppLsLmmTarget[itrTI].unBrightness = 32800; Rte_ppLsLmmTarget[itrTI].unRampTime = 0; Mt_printf("itr = %d, value = %d\n",itrTI,Rte_asLsTarget0_asSetting[itrTI].unDutyCycle ); rpLedR10ms(); AL_UNITTEST_CHECK(Rte_asLsTarget0_asSetting[itrTI].unCurrent, (CtrlLed_tiu16Percent_1_328)32800u, == ); //AL_UNITTEST_CHECK(Rte_asLsTarget0_asSetting[itrTI].unDutyCycle, (CtrlLed_tiu16Percent_1_328)32800u, == ); } rdLedRDeInit(); } //----------------------------------------------------------------------------- /// \Test Case : Mt_LedR_Test_02 /// /// \Test Case Description /// - Test subject: /// To call rpLedR10ms function /// /// - Expected test results: /// - All conditions and assigned values mentioned for each test case/step shall be reached and passed /// //----------------------------------------------------------------------------- void Mt_LedR_Test_02(void) { uint8* temp = applicationCodingDataptr->System.VariantSelection.HeadlightsVariant; temp = HEADLIGHTS_VARIANT_MID; Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_RIGHT; Rte_GaaCodDataStat = tieDataStatus_Valid; riLedRInit(); for (int itrTI = 0; itrTI < 1; itrTI++) { Mt_printf("\nTI on"); Rte_ppLsLmmTarget[1].eRampType = 3; Rte_ppLsLmmTarget[1].ucAnimation = 128; Rte_ppLsLmmTarget[1].ucPriority = 1; Rte_ppLsLmmTarget[1].unBrightness = 32800; Rte_ppLsLmmTarget[1].unRampTime = 128; for (int itr = 0; itr <= 30; itr++) { Mt_printf("\n%5dms ", itr*10); int mlcCount = 0; for (int switchCount = 6; switchCount < 12; switchCount++) { //Mt_printf("%5d , ", Rte_aucExtSwitchTarget0_aunDutyCycle[mlcCount][switchCount]);// / 328); } for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); } Mt_printf("\nTI off"); Rte_ppLsLmmTarget[1].eRampType = 0; Rte_ppLsLmmTarget[1].ucAnimation = 0; Rte_ppLsLmmTarget[1].ucPriority = 15; Rte_ppLsLmmTarget[1].unBrightness = 0; Rte_ppLsLmmTarget[1].unRampTime = 0; for (int itr = 0; itr <= 4; itr++) { Mt_printf("\n%5dms ", itr*10); int mlcCount = 0; for (int switchCount = 6; switchCount < 12; switchCount++) { //Mt_printf("%5d , ", Rte_aucExtSwitchTarget0_aunDutyCycle[mlcCount][switchCount]);// / 328); } for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); } } } //----------------------------------------------------------------------------- /// \Test Case : Mt_LedR_Test_02a /// /// \Test Case Description /// - Test subject: /// Run TI+POS /// /// - Expected test results: /// - All conditions and assigned values mentioned for each test case/step shall be reached and passed /// //----------------------------------------------------------------------------- void Mt_LedR_Test_02a(void) { uint8* temp = applicationCodingDataptr->System.VariantSelection.HeadlightsVariant; temp = HEADLIGHTS_VARIANT_MID; Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_RIGHT; Rte_GaaCodDataStat = tieDataStatus_Valid; riLedRInit(); CodPrj_SetVariant(LEDR_ECU_VAR_HIGH); for (int itrTI = 0; itrTI < 1; itrTI++) { Mt_printf("\nTI POS on"); Rte_ppLsLmmTarget[1].eRampType = 3; Rte_ppLsLmmTarget[1].ucAnimation = 131; Rte_ppLsLmmTarget[1].ucPriority = 1; Rte_ppLsLmmTarget[1].unBrightness = 32800; Rte_ppLsLmmTarget[1].unRampTime = 128; for (int itr = 0; itr <= 30; itr++) { Mt_printf("\n%5dms ", itr*10); int mlcCount = 0; for (int switchCount = 6; switchCount < 12; switchCount++) { //Mt_printf("%5d , ", Rte_aucExtSwitchTarget0_aunDutyCycle[mlcCount][switchCount]);// / 328); } for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); } Mt_printf("\nTI POS off"); Rte_ppLsLmmTarget[1].eRampType = 0; Rte_ppLsLmmTarget[1].ucAnimation = 0; Rte_ppLsLmmTarget[1].ucPriority = 15; Rte_ppLsLmmTarget[1].unBrightness = 0; Rte_ppLsLmmTarget[1].unRampTime = 0; for (int itr = 0; itr <= 4; itr++) { Mt_printf("\n%5dms ", itr*10); int mlcCount = 0; for (int switchCount = 6; switchCount < 12; switchCount++) { //Mt_printf("%5d , ", Rte_aucExtSwitchTarget0_aunDutyCycle[mlcCount][switchCount]);// / 328); } for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); } } } //----------------------------------------------------------------------------- /// \Test Case : Mt_LedR_Test_02b /// /// \Test Case Description /// - Test subject: /// Run TI scrolling +POS /// /// - Expected test results: /// - All conditions and assigned values mentioned for each test case/step shall be reached and passed /// //----------------------------------------------------------------------------- void Mt_LedR_Test_02b(void) { uint8* temp = applicationCodingDataptr->System.VariantSelection.HeadlightsVariant; temp = HEADLIGHTS_VARIANT_MID; Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_RIGHT; Rte_GaaCodDataStat = tieDataStatus_Valid; riLedRInit(); for (int itrTI = 0; itrTI < 1; itrTI++) { Mt_printf("\nTI scrolling POS on"); Rte_ppLsLmmTarget[1].eRampType = 3; Rte_ppLsLmmTarget[1].ucAnimation = 132; Rte_ppLsLmmTarget[1].ucPriority = 1; Rte_ppLsLmmTarget[1].unBrightness = 32800; Rte_ppLsLmmTarget[1].unRampTime = 128; for (int itr = 0; itr <= 30; itr++) { Mt_printf("\n%5dms ", itr*10); int mlcCount = 0; for (int switchCount = 6; switchCount < 12; switchCount++) { //Mt_printf("%5d , ", Rte_aucExtSwitchTarget0_aunDutyCycle[mlcCount][switchCount]);// / 328); } for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); } Mt_printf("\nTI scrolling POS off"); Rte_ppLsLmmTarget[1].eRampType = 0; Rte_ppLsLmmTarget[1].ucAnimation = 0; Rte_ppLsLmmTarget[1].ucPriority = 15; Rte_ppLsLmmTarget[1].unBrightness = 0; Rte_ppLsLmmTarget[1].unRampTime = 0; for (int itr = 0; itr <= 4; itr++) { Mt_printf("\n%5dms ", itr*10); int mlcCount = 0; for (int switchCount = 6; switchCount < 12; switchCount++) { //Mt_printf("%5d , ", Rte_aucExtSwitchTarget0_aunDutyCycle[mlcCount][switchCount]);// / 328); } for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); } } } void Mt_LedR_Test_02c(void) { uint8* temp = applicationCodingDataptr->System.VariantSelection.HeadlightsVariant; temp = HEADLIGHTS_VARIANT_MID; Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_RIGHT; Rte_GaaCodDataStat = tieDataStatus_Valid; riLedRInit(); for (int itrTI = 0; itrTI < 1; itrTI++) { Mt_printf("\nWelcome on"); Rte_ppLsLmmTarget[1].eRampType = 3; Rte_ppLsLmmTarget[1].ucAnimation = 129; Rte_ppLsLmmTarget[1].ucPriority = 1; Rte_ppLsLmmTarget[1].unBrightness = 32800; Rte_ppLsLmmTarget[1].unRampTime = 128; for (int itr = 0; itr <= 134; itr++) { Mt_printf("\n%5dms ", itr*30); int mlcCount = 0; for (int switchCount = 6; switchCount < 12; switchCount++) { //Mt_printf("%5d , ", Rte_aucExtSwitchTarget0_aunDutyCycle[mlcCount][switchCount]);// / 328); } for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); } Mt_printf("\nWelcome off"); Rte_ppLsLmmTarget[1].eRampType = 0; Rte_ppLsLmmTarget[1].ucAnimation = 0; Rte_ppLsLmmTarget[1].ucPriority = 15; Rte_ppLsLmmTarget[1].unBrightness = 0; Rte_ppLsLmmTarget[1].unRampTime = 0; for (int itr = 0; itr <= 4; itr++) { Mt_printf("\n%5dms ", itr*10); int mlcCount = 0; for (int switchCount = 6; switchCount < 12; switchCount++) { //Mt_printf("%5d , ", Rte_aucExtSwitchTarget0_aunDutyCycle[mlcCount][switchCount]);// / 328); } for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); } Mt_printf("\nGood Bye On"); Rte_ppLsLmmTarget[1].eRampType = 3; Rte_ppLsLmmTarget[1].ucAnimation = 130; Rte_ppLsLmmTarget[1].ucPriority = 1; Rte_ppLsLmmTarget[1].unBrightness = 32800; Rte_ppLsLmmTarget[1].unRampTime = 128; for (int itr = 0; itr <= 134; itr++) { Mt_printf("\n%5dms ", itr*30); int mlcCount = 0; for (int switchCount = 6; switchCount < 12; switchCount++) { //Mt_printf("%5d , ", Rte_aucExtSwitchTarget0_aunDutyCycle[mlcCount][switchCount]);// / 328); } for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); } } } void Mt_LedR_Test_02d(void) { uint8* temp = applicationCodingDataptr->System.VariantSelection.HeadlightsVariant; temp = HEADLIGHTS_VARIANT_MID; Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_RIGHT; Rte_GaaCodDataStat = tieDataStatus_Valid; riLedRInit(); for (int itrMode = 0; itrMode < 4; itrMode++) { Mt_printf("\nMode %d on", itrMode + 1); Rte_ppLsLmmTarget[1].eRampType = 3; Rte_ppLsLmmTarget[1].ucAnimation = 133 + itrMode; Rte_ppLsLmmTarget[1].ucPriority = 1; Rte_ppLsLmmTarget[1].unBrightness = 32800; Rte_ppLsLmmTarget[1].unRampTime = 128; for (int itr = 0; itr <= 5; itr++) { Mt_printf("\n%5dms ", itr*10); for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); } Mt_printf("\nMode %d off", itrMode + 1); Rte_ppLsLmmTarget[1].eRampType = 0; Rte_ppLsLmmTarget[1].ucAnimation = 0; Rte_ppLsLmmTarget[1].ucPriority = 15; Rte_ppLsLmmTarget[1].unBrightness = 0; Rte_ppLsLmmTarget[1].unRampTime = 0; for (int itr = 0; itr <= 4; itr++) { Mt_printf("\n%5dms ", itr*10); for(int pixelNo = 0; pixelNo < 31; pixelNo++) { Mt_printf("%3d , ", CtrlLed_aunAnimaRamp[pixelNo]/328); } rpLedR10ms(); } } } //----------------------------------------------------------------------------- /// \Test Case : Mt_CtrlLed_Interpolation /// /// \Test Case Description /// - Test subject: /// To call CtrlLed_Interpolation function for coverage /// /// - Expected test results: /// - All conditions and assigned values mentioned for each test case/step shall be reached and passed /// //----------------------------------------------------------------------------- /*void Mt_CtrlLed_Interpolation(void) { int val; rpLedR50ms(); unInput = 32800u; val = CtrlLed_Interpolation(unInput, ucY_arr, ucX_arr, ucPointsNo); Mt_printf("input = %d, output = %d\n",unInput, val ); unInput = 32768u; val = CtrlLed_Interpolation(unInput, ucY_arr, ucX_arr, ucPointsNo); Mt_printf("input = %d, output = %d\n",unInput, val ); unInput = 7360u; val = CtrlLed_Interpolation(unInput, ucY_arr, ucX_arr, ucPointsNo); Mt_printf("input = %d, output = %d\n",unInput, val ); unInput = 3280u; val = CtrlLed_Interpolation(unInput, ucY_arr, ucX_arr, ucPointsNo); Mt_printf("input = %d, output = %d\n",unInput, val ); unInput = 32800u; val = CtrlLed_Interpolation(unInput, ucX_arr, ucY_arr, ucPointsNo); Mt_printf("input = %d, output = %d\n",unInput, val ); unInput = 32768u; val = CtrlLed_Interpolation(unInput, ucX_arr, ucY_arr, ucPointsNo); Mt_printf("input = %d, output = %d\n",unInput, val ); unInput =3280u; val = CtrlLed_Interpolation(unInput, ucX_arr, ucY_arr, ucPointsNo); Mt_printf("input = %d, output = %d\n",unInput, val ); unInput =7360u; val = CtrlLed_Interpolation(unInput, ucX_arr, ucY_arr, ucPointsNo); Mt_printf("input = %d, output = %d\n",unInput, val ); unInput = 165u; CtrlLed_Interpolation(unInput, ucX_arr, ucY_arr, ucPointsNo); }*/ //----------------------------------------------------------------------------- /// \Test Case : Mt_Test_03 /// /// \Test Case Description /// - Test subject: /// To call rpLedR10ms function for ERROR handling check /// /// - Expected test results: /// - All conditions and assigned values mentioned for each test case/step shall be reached and passed /// //----------------------------------------------------------------------------- void Mt_Test_03(void) { #define MATRIX_LMM 2 uint8* temp = applicationCodingDataptr->System.VariantSelection.HeadlightsVariant; temp = HEADLIGHTS_VARIANT_HIGH; //Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_RIGHT; riLedRInit(); for (uint8 ucIdx = 0; ucIdx < 12; ucIdx++) // Check all the segments for HB matrix { Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsOpen = ERR_YES; for (uint8 ucIdx2 = 0; ucIdx2 < 50; ucIdx2++) rpLedR10ms(); AL_UNITTEST_CHECK(Rte_ppCtrlLedMxSwitchStatusError0[ucIdx].eErr, ERR_YES, == ); } for (uint8 ucIdx = 0; ucIdx < 12; ucIdx++) // Check all the segments for HB matrix { Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsOpen = ERR_NO; Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsShort = ERR_NO; for (uint8 ucIdx2 = 0; ucIdx2 < 100; ucIdx2++) rpLedR10ms(); } for (uint8 ucIdx = 0; ucIdx < 12; ucIdx++) // Check all the segments for HB matrix { Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsShort = ERR_YES; for (uint8 ucIdx2 = 0; ucIdx2 < 50; ucIdx2++) rpLedR10ms(); AL_UNITTEST_CHECK(Rte_ppCtrlLedMxSwitchStatusError0[ucIdx].eErr, ERR_YES, == ); } for (uint8 ucIdx = 0; ucIdx < 12; ucIdx++) // Check all the segments for HB matrix { Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsOpen = ERR_NO; Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsShort = ERR_NO; Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eStatSupported = SUPPORT_YES; for (uint8 ucIdx2 = 0; ucIdx2 < 100; ucIdx2++) rpLedR10ms(); } for (uint8 ucIdx = 0; ucIdx < 12; ucIdx++) // Check all the segments for HB matrix { Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsShort = ERR_YES; for (uint8 ucIdx2 = 0; ucIdx2 < 49; ucIdx2++) rpLedR10ms(); //AL_UNITTEST_CHECK(Rte_ppCtrlLedMxSwitchStatusError0[ucIdx].eErr, ERR_NO, == ); } for (uint8 ucIdx = 0; ucIdx < 12; ucIdx++) // Check all the segments for HB matrix { Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsOpen = ERR_NO; Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsShort = ERR_NO; for (uint8 ucIdx2 = 0; ucIdx2 < 100; ucIdx2++) rpLedR10ms(); } for (uint8 ucIdx = 0; ucIdx < 12; ucIdx++) // Check all the segments for HB matrix { Rte_ppAllMlcSwitchStatus.asMlcStatusVal[MATRIX_LMM].asMxStatusFault[ucIdx].eFltLsShort = ERR_YES; for (uint8 ucIdx2 = 0; ucIdx2 < 49; ucIdx2++) rpLedR10ms(); //AL_UNITTEST_CHECK(Rte_ppCtrlLedMxSwitchStatusError0[ucIdx].eErr, ERR_NO, == ); } //Rte_ppCtrlLedMxSwitchStatusError0[14].eErr == ERR_YES; } //----------------------------------------------------------------------------- /// \Test Case : Mt_Test_04 /// /// \Test Case Description /// - Test subject: /// To call rpCtrlLed10ms function for PXA /// /// - Expected test results: /// - All conditions and assigned values mentioned for each test case/step shall be reached and passed /// //----------------------------------------------------------------------------- void Mt_Test_04(void) { uint8* temp = applicationCodingDataptr->System.VariantSelection.HeadlightsVariant; temp = HEADLIGHTS_VARIANT_MID; //Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_RIGHT; riLedRInit(); Rte_ucMountingSide = CTRLLED_MOUNTINSIDE_LEFT; temp = HEADLIGHTS_VARIANT_LOW_1; riLedRInit(); temp = HEADLIGHTS_VARIANT_LOW_2; riLedRInit(); Rte_ppMxSegTarget[0].ucPriority = 2; Rte_ppMxSegTarget[0].unBrightness = 32800; Rte_ppMxSegTarget[0].unRampTimeDown = 0; Rte_ppMxSegTarget[0].unRampTimeUp = 0; Rte_ppLsLmmTarget[0].eRampType = 0; Rte_ppLsLmmTarget[0].ucAnimation = 0; Rte_ppLsLmmTarget[0].ucPriority = 3; Rte_ppLsLmmTarget[0].unBrightness = 32800; Rte_ppLsLmmTarget[0].unRampTime = 0; rpLedR10ms(); AL_UNITTEST_CHECK(Rte_asLsTarget0_asSetting[0].unCurrent, (CtrlLed_tiu16Percent_1_328)32800u, == ); //AL_UNITTEST_CHECK(Rte_asLsTarget0_asSetting[0].unDutyCycle, (CtrlLed_tiu16Percent_1_328)32800u, == ); Rte_ppMxSegTarget[0].ucPriority = 3; Rte_ppLsLmmTarget[0].ucPriority = 2; rpLedR10ms(); rdLedRDeInit(); } void Mt_Test_05(void) { riLedRInit(); uint8 unIdx; for (unIdx = 0; unIdx < 12; unIdx++) { Rte_ppLsLmmTarget[unIdx].eRampType = 0; Rte_ppLsLmmTarget[unIdx].ucAnimation = 0; Rte_ppLsLmmTarget[unIdx].ucPriority = 15; Rte_ppLsLmmTarget[unIdx].unBrightness = 0; Rte_ppLsLmmTarget[unIdx].unRampTime = 0; } Rte_ppLsLmmTarget[1].eRampType = 0; Rte_ppLsLmmTarget[1].ucAnimation = 0; Rte_ppLsLmmTarget[1].ucPriority = 4; Rte_ppLsLmmTarget[1].unBrightness = 32800; Rte_ppLsLmmTarget[1].unRampTime = 0; rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); Rte_ppLsLmmTarget[1].eRampType = 0; Rte_ppLsLmmTarget[1].ucAnimation = 0; Rte_ppLsLmmTarget[1].ucPriority = 4; Rte_ppLsLmmTarget[1].unBrightness = 32800; Rte_ppLsLmmTarget[1].unRampTime = 0; rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); Rte_ppLsLmmTarget[1].eRampType = CTRLLED_RAMP_HART; Rte_ppLsLmmTarget[1].ucAnimation = 0; Rte_ppLsLmmTarget[1].ucPriority = 3; Rte_ppLsLmmTarget[1].unBrightness = 32800; Rte_ppLsLmmTarget[1].unRampTime = 50; rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); Rte_ppLsLmmTarget[3].eRampType = CTRLLED_RAMP_SK; Rte_ppLsLmmTarget[3].ucAnimation = 0; Rte_ppLsLmmTarget[3].ucPriority = 3; Rte_ppLsLmmTarget[3].unBrightness = 32800; Rte_ppLsLmmTarget[3].unRampTime = 100; rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); rpLedR10ms(); rpLedR50ms(); rdLedRDeInit(); } // ---------------------------------------------------------------------------- // Add Test Cases //----------------------------------------------------------------------------- void ALUnitTest_AddTests(void) { ALUnitTest_AddFunction("Mt_LedR_Test_02a", Mt_LedR_Test_02a); ALUnitTest_AddFunction("Mt_LedR_Test_02b", Mt_LedR_Test_02b); ALUnitTest_AddFunction("Mt_LedR_Test_02c", Mt_LedR_Test_02c); ALUnitTest_AddFunction("Mt_LedR_Test_02d", Mt_LedR_Test_02d); ALUnitTest_AddFunction("Mt_LedR_Test_02", Mt_LedR_Test_02); ALUnitTest_AddFunction("Mt_LedR_Test_01", Mt_LedR_Test_01); //ALUnitTest_AddFunction("Mt_CtrlLed_Interpolation", Mt_CtrlLed_Interpolation); ALUnitTest_AddFunction("Mt_Test_03", Mt_Test_03); ALUnitTest_AddFunction("Mt_Test_04", Mt_Test_04); ALUnitTest_AddFunction("Mt_Test_05", Mt_Test_05); }