output with value for CU_ASSERT_EQUAL_OUTPUT

This commit is contained in:
2018-09-07 05:50:58 +00:00
parent c90f479de9
commit 47e79f04dc

View File

@@ -57,6 +57,26 @@ STATIC bool isDatatypeStandard(char *aDataType)
return false;
}
STATIC void addPrintfFormat(FILE *aFile, const char* aType)
{
if (NULL != strstr(aType, "double"))
{
fprintf(aFile, ("\"%%e\""));
}
else if (NULL != strstr(aType, "int32_t"))
{
fprintf(aFile, ("\"%%d\""));
}
else if (NULL != strstr(aType, "32") || NULL != strstr(aType, "long"))
{
fprintf(aFile, ("\"%%ld\""));
}
else
{
fprintf(aFile, ("\"%%d\""));
}
}
STATIC void createVariableSpecificInit(const char* aVariableTemplate, FILE *aFile, cfile_variable_t *aVariable)
{
char *tempChar = NULL;
@@ -150,7 +170,9 @@ STATIC void createVariableSpecificCheck(FILE *aFile, cfile_variable_t *aVariable
}
else if (isDatatypeStandard(aVariable->dataType))
{
fprintf(aFile, "\tCU_ASSERT_EQUAL(%s, "STUBVARIABLE_EXPECTED_S1");"NEWLINES, aVariable->name, aVariable->name);
fprintf(aFile, "\tCU_ASSERT_EQUAL_OUTPUT(%s, "STUBVARIABLE_EXPECTED_S1", ", aVariable->name, aVariable->name);
addPrintfFormat(aFile, aVariable->dataType);
fprintf(aFile, ");" NEWLINES);
}
else
{
@@ -231,9 +253,10 @@ STATIC void createParameterSpecificCheck(FILE *aFile, cfunction_t *aFunction, cf
}
else if (isDatatypeStandard(aParameter->dataType))
{
fprintf(aFile, "\tCU_ASSERT_EQUAL(");
fprintf(aFile, STUBINIT_PARAM_PARAMETER_S1", "STUBPARAMETER_STRUCT_S1"["STUBINSTANCE_S1"]."STUBPARAMETER_PARAM_S1, aParameterIndex, aFunction->name,
fprintf(aFile, "\tCU_ASSERT_EQUAL_OUTPUT(");
fprintf(aFile, STUBINIT_PARAM_PARAMETER_S1", "STUBPARAMETER_STRUCT_S1"["STUBINSTANCE_S1"]."STUBPARAMETER_PARAM_S1", ", aParameterIndex, aFunction->name,
aFunction->name, aParameterIndex);
addPrintfFormat(aFile, aParameter->dataType);
fprintf(aFile, ");"NEWLINES);
fprintf(aFile, "\t"STUBPARAMETER_STRUCT_S1"["STUBINSTANCE_S1"]."STUBPARAMETER_PARAM_S1" = (%s) "STUBDEFAULT_VALUE_VARIABLE_S";" NEWLINES, aFunction->name,
aFunction->name, aParameterIndex, aParameter->dataType);