34 outStruct.float_0 = 0.0;
35 outStruct.float_1 = outStruct.float_0;
36 outStruct.double_0 = 0.0;
37 outStruct.double_1 = outStruct.double_0;
39 outStruct.ui64_0 = 0.0;
40 outStruct.ui64_1 = outStruct.ui64_0;
41 outStruct.i64_0 = 0.0;
42 outStruct.i64_1 = outStruct.i64_0;
44 outStruct.ui32_0 = 0.0;
45 outStruct.ui32_1 = outStruct.ui32_0;
46 outStruct.i32_0 = 0.0;
47 outStruct.i32_1 = outStruct.i32_0;
49 outStruct.ui16_0 = 0.0;
50 outStruct.ui16_1 = outStruct.ui16_0;
51 outStruct.i16_0 = 0.0;
52 outStruct.i16_1 = outStruct.i16_0;
54 outStruct.ui8_0 = 0.0;
55 outStruct.ui8_1 = outStruct.ui8_0;
57 outStruct.i8_1 = outStruct.i8_0;
59 outStruct.charsRead = 1u;
60 outStruct.chars2Write = 0u;
62 #ifdef __USINGCONSOLEMENU
65 outStruct.charbuff_In[i] = 0x00;
67 outStruct.charbuff_Out[i] = 0x00;
72 outStruct.TestState = 0x0000;
96 #ifdef __USINGCONSOLEMENU
120 UI_16 TestReturn = 0;
145 #ifdef __USINGCONSOLEMENU
159 #ifdef __USINGCONSOLEMENU
169 int linesPrinted = 0;
173 while (lines2Print > 0)
175 switch (linesPrinted)
181 PRINT_MENU_LN "\nStatus-ccNOos Tests:\t\t%s", StatusccNOosTests(
MODdataPTR(
Mn)) END_MENU_LN;
183 PRINT_MENU_LN "\nResults-Serialization Tests:\t%s", ResultsSerializationTests(
MODdataPTR(
Mn)) END_MENU_LN;
185 PRINT_MENU_LN "\nResults-Timed Execution Tests:\t%s", ResultsTimedExecutionTests(
MODdataPTR(
Mn)) END_MENU_LN;
189 PRINT_MENU_LN "\nType \"ccNOosTests:Var:Val;\" set Var to Val" END_MENU_LN;
191 PRINT_MENU_LN "\nInput>>" END_MENU_LN;
213 int j = 0, k = 0, l = 0;
219 #define thisC MODdataPTR(Mn)->charbuff_In[i]
224 if (thisC == ASCII_colon)
231 else if (thisC == ASCII_semicolon)
233 if (j == 0 || k == 0 || j >= k)
241 if (stringMatchCaseSensitive(&
MODdataPTR(
Mn)->charbuff_In[0],
"ccNOosTests"))
244 if (stringMatchCaseSensitive(&
MODdataPTR(
Mn)->charbuff_In[j + 1],
"Tx"))
248 else if (stringMatchCaseSensitive(&
MODdataPTR(
Mn)->charbuff_In[j + 1],
"Rx"))
252 else if (stringMatchCaseSensitive(&
MODdataPTR(
Mn)->charbuff_In[j + 1],
"Xx"))
290 return "Not Running";
294 return "Failed - :(";
303 return "Failed - Serialization";
305 return "Failed - Deserialization";
307 return "Failed - Comparison";
309 return "Status - Unknown";
313 int bytesWritten = 0;
314 UI_8 parseResults = 0;
316 #define DeserializeOnlyPattern(VAR, VAL, FORMAT, LEN, FUNC) stringInit(MODdataPTR(Mn)->charbuff_In, xstr(VAL));\
317 parseResults = FUNC(MODdataPTR(Mn)->charbuff_In, &MODdataPTR(Mn)->VAR##1 );\
318 if(parseResults != ui8TRUE)\
319 return RETURN_FAILED_DESERIALIZATION
321 #define SerializeTestPattern(VAR, VAL, FORMAT, LEN, FUNC) MODdataPTR(Mn)->VAR##0 = VAL;\
322 bytesWritten = SN_PrintF(MODdataPTR(Mn)->charbuff_Out,LEN,FORMAT,MODdataPTR(Mn)->VAR##0);\
323 if( bytesWritten != LEN || \
324 ui8TRUE!=stringMatchCaseSensitive(MODdataPTR(Mn)->charbuff_Out,xstr(VAL))\
326 return RETURN_FAILED_SERIALIZATION;}\
327 DeserializeOnlyPattern(VAR, VAL, FORMAT, LEN, FUNC);\
328 if(MODdataPTR(Mn)->VAR##0 != MODdataPTR(Mn)->VAR##1)\
329 return RETURN_FAILED_COMPARISON;
349 SerializeTestPattern(ui16_, 65535,
"%u", 5, ATO_U16);
350 SerializeTestPattern(i16_, -32767,
"%i", 6, ATO_I16);
352 SerializeTestPattern(ui8_, 255,
"%u", 3, ATO_U8);
353 SerializeTestPattern(i8_, 127,
"%i", 3, ATO_I8);
355 SerializeTestPattern(ui32_, 65535,
"%u", 5, ATO_U32);
356 SerializeTestPattern(i32_, -32767,
"%d", 6, ATO_I32);
358 SerializeTestPattern(ui64_, 65535,
"%u", 5, ATO_U64);
359 SerializeTestPattern(i64_, -32767,
"%d", 6, ATO_I64);
361 #ifdef __USINGFLOATPRINTF
362 SerializeTestPattern(double_, 3.1457,
"%6.4f", 6, ATO_D);
363 SerializeTestPattern(float_, -3.1457,
"%6.4f", 7,
ATO_F);
365 DeserializeOnlyPattern(double_, 3.1457,
"%6.4f", 6, ATO_D);
366 DeserializeOnlyPattern(float_, -3.1457,
"%6.4f", 7,
ATO_F);
371 #undef DeserializeOnlyPattern
372 #undef SerializeTestPattern
374 #endif // !__USINGCONSOLEMENU
378 #define uSNOW MODdataPTR(Mn)->ui32_0
379 #define uSTHEN MODdataPTR(Mn)->ui32_1
380 #define LOOPCYCLES MODdataPTR(Mn)->ui16_0