58 #include "Mockbattery_system_cfg.h"
59 #include "Mockcontactor.h"
60 #include "Mockdatabase.h"
62 #include "Mockfassert.h"
64 #include "Mockinterlock.h"
68 #include "Mockplausibility.h"
80 TEST_INCLUDE_PATH(
"../../src/app/application/bal")
81 TEST_INCLUDE_PATH("../../src/app/application/bms")
82 TEST_INCLUDE_PATH("../../src/app/application/plausibility")
83 TEST_INCLUDE_PATH("../../src/app/application/soa")
84 TEST_INCLUDE_PATH("../../src/app/driver/afe/api")
85 TEST_INCLUDE_PATH("../../src/app/driver/config")
86 TEST_INCLUDE_PATH("../../src/app/driver/contactor")
87 TEST_INCLUDE_PATH("../../src/app/driver/foxmath")
88 TEST_INCLUDE_PATH("../../src/app/driver/imd")
89 TEST_INCLUDE_PATH("../../src/app/driver/interlock")
90 TEST_INCLUDE_PATH("../../src/app/driver/led")
91 TEST_INCLUDE_PATH("../../src/app/driver/meas")
92 TEST_INCLUDE_PATH("../../src/app/driver/sps")
93 TEST_INCLUDE_PATH("../../src/app/engine/
diag")
94 TEST_INCLUDE_PATH("../../src/app/task/config")
103 .numberOfFatalErrors = 0u,
144 #define NUM_PRECHARGE_TESTS 13
151 int32_t voltage_1 = 0;
152 int32_t voltage_2 = 0;
181 voltage_1 = INT32_MAX;
182 voltage_2 = INT32_MAX;
188 voltage_1 = INT32_MIN;
189 voltage_2 = INT32_MIN;
195 voltage_1 = INT32_MAX;
196 voltage_2 = INT32_MIN;
202 voltage_1 = INT32_MIN;
203 voltage_2 = INT32_MAX;
248 TEST_FAIL_MESSAGE(
"DATA_ReadBlock_Callback was called too often");
251 TEST_ASSERT_EQUAL_MESSAGE(12, (
NUM_PRECHARGE_TESTS - 1),
"Check code of stub. Something does not fit.");
254 TEST_FAIL_MESSAGE(
"This stub is fishy, prechargeExpectedResults is too short for the number of calls");
287 snprintf(buffer, 30,
"Loop iteration %d.", i);
291 TEST_ASSERT_EQUAL_MESSAGE(
307 #if (BS_POSITIVE_DISCHARGE_CURRENT == true)
345 #if (BS_POSITIVE_DISCHARGE_CURRENT == true)
352 #if (BS_POSITIVE_DISCHARGE_CURRENT == true)
#define BS_NR_OF_STRINGS
Number of parallel strings in the battery pack.
#define BS_REST_CURRENT_mA
current threshold for determining rest state of battery. If absolute current is below this limit valu...
BS_STRING_PRECHARGE_PRESENT_e
@ BS_STRING_WITH_PRECHARGE
#define BS_CS_THRESHOLD_NO_CURRENT_mA
current sensor threshold for 0 current in mA as the sensor has a jitter.
STD_RETURN_TYPE_e TEST_BMS_CheckPrecharge(uint8_t stringNumber, DATA_BLOCK_PACK_VALUES_s *pPackValues)
BMS_CURRENT_FLOW_STATE_e BMS_GetCurrentFlowDirection(int32_t current_mA)
Get current flow direction, current value as function parameter.
#define BMS_PRECHARGE_VOLTAGE_THRESHOLD_mV
#define BMS_PRECHARGE_CURRENT_THRESHOLD_mA
@ DATA_BLOCK_ID_PACK_VALUES
static DIAG_DIAGNOSIS_STATE_s diag
math library for often used math functions
Header for the configuration for the driver for the smart power switches.
DATA_BLOCK_HEADER_s header
uint8_t nrOfConfiguredDiagnosisEntries
#define TEST_ASSERT_PASS_ASSERT(_code_under_test)
assert whether assert macro has passed
#define TEST_ASSERT_FAIL_ASSERT(_code_under_test)
assert whether assert macro has failed
BS_STRING_PRECHARGE_PRESENT_e bs_stringsWithPrecharge[BS_NR_OF_STRINGS]
#define NUM_PRECHARGE_TESTS
STD_RETURN_TYPE_e prechargeExpectedResults[BS_NR_OF_STRINGS][NUM_PRECHARGE_TESTS]
void testBMS_CheckPrechargeInvalidStringNumber(void)
CONT_CONTACTOR_STATE_s cont_contactorStates[]
void testCheckPrechargeIterateStub(void)
Iterate over a callback that supplies various scenarios and check if they work as expected.
void testBMS_GetCurrentFlowDirectionWithTypicalValues(void)
STD_RETURN_TYPE_e MockDATA_ReadBlock_Callback(void *pDataToReceiver, int num_calls)
void testCheckCurrentValueDirectionWithCurrentZeroMaxAndMin(void)
DIAG_ID_CFG_s diag_diagnosisIdConfiguration[]