Fixed templating bug and update test cases
This commit is contained in:
parent
71e67ca3f1
commit
a8773a7ba1
@ -39,7 +39,7 @@ build_flags =
|
|||||||
-DUSE_LITTLEFS=true
|
-DUSE_LITTLEFS=true
|
||||||
-DUSER_SSID=\""\"" # =\""myssid\""
|
-DUSER_SSID=\""\"" # =\""myssid\""
|
||||||
-DUSER_SSID_PWD=\""\"" # =\""mypwd\""
|
-DUSER_SSID_PWD=\""\"" # =\""mypwd\""
|
||||||
-DCFG_APPVER="\"1.2.0\""
|
-DCFG_APPVER="\"1.2.1\""
|
||||||
#-DCFG_GITREV=\""beta-3\""
|
#-DCFG_GITREV=\""beta-3\""
|
||||||
!python script/git_rev.py
|
!python script/git_rev.py
|
||||||
lib_deps =
|
lib_deps =
|
||||||
@ -120,9 +120,10 @@ lib_deps =
|
|||||||
https://github.com/bxparks/AUnit#v1.6.1
|
https://github.com/bxparks/AUnit#v1.6.1
|
||||||
${common_env_data.lib_deps}
|
${common_env_data.lib_deps}
|
||||||
board = ${common_env_data.board}
|
board = ${common_env_data.board}
|
||||||
build_type = release
|
build_type = debug
|
||||||
board_build.filesystem = littlefs
|
board_build.filesystem = littlefs
|
||||||
build_src_filter = +<*> -<main.cpp> +<../test/tests*.cpp>
|
build_src_filter = +<*> -<main.cpp> +<../test/tests*.cpp>
|
||||||
|
monitor_filters = esp8266_exception_decoder
|
||||||
|
|
||||||
[env:gravity32-release]
|
[env:gravity32-release]
|
||||||
framework = ${common_env_data.framework}
|
framework = ${common_env_data.framework}
|
||||||
|
@ -194,4 +194,17 @@ const char* TemplatingEngine::create(TemplatingEngine::Templates idx,
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// added to support more unit test scenarios.
|
||||||
|
const char* TemplatingEngine::create(const char* formatTemplate) {
|
||||||
|
_baseTemplate = String(formatTemplate);
|
||||||
|
|
||||||
|
// Insert data into template.
|
||||||
|
transform();
|
||||||
|
_baseTemplate.clear();
|
||||||
|
|
||||||
|
if (_output) return _output;
|
||||||
|
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
// EOF
|
// EOF
|
||||||
|
@ -160,7 +160,8 @@ class TemplatingEngine {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
strncat(_output, format + k, size - k);
|
// strncat(_output, format + k, size - k);
|
||||||
|
strncat(_output, format + k, strlen(format + k));
|
||||||
Log.notice(F("TPL : Transformed template %d chars to %d chars" CR),
|
Log.notice(F("TPL : Transformed template %d chars to %d chars" CR),
|
||||||
strlen(format), strlen(_output));
|
strlen(format), strlen(_output));
|
||||||
|
|
||||||
@ -202,6 +203,7 @@ class TemplatingEngine {
|
|||||||
float tempC, float runTime);
|
float tempC, float runTime);
|
||||||
const char *create(TemplatingEngine::Templates idx,
|
const char *create(TemplatingEngine::Templates idx,
|
||||||
bool useDefaultTemplate = false);
|
bool useDefaultTemplate = false);
|
||||||
|
const char *create(const char *formatTemplate);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // SRC_TEMPLATING_HPP_
|
#endif // SRC_TEMPLATING_HPP_
|
||||||
|
@ -125,4 +125,26 @@ test(template_applyTemplate5) {
|
|||||||
assertEqual(s, v);
|
assertEqual(s, v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
test(template_applyTemplate6) {
|
||||||
|
TemplatingEngine e;
|
||||||
|
char buffer[20];
|
||||||
|
myConfig.setMDNS("gravitymon");
|
||||||
|
|
||||||
|
const char* tpl =
|
||||||
|
"<prtg><result><channel>Densite</channel><float>1</float><value>${gravity}</value></result>"
|
||||||
|
"<result><channel>Batterie</channel><float>1</float><value>${battery}</value></result>"
|
||||||
|
"<result><channel>Temperature</channel><float>1</float><value>${temp}</value></result></prtg>";
|
||||||
|
|
||||||
|
e.initialize(45.0, 1.123, 1.223, 21.2, 2.98);
|
||||||
|
String s = e.create(tpl);
|
||||||
|
String batt =
|
||||||
|
convertFloatToString(myBatteryVoltage.getVoltage(), &buffer[0], 2);
|
||||||
|
batt.trim();
|
||||||
|
|
||||||
|
String v = "<prtg><result><channel>Densite</channel><float>1</float><value>1.1230</value></result>"
|
||||||
|
"<result><channel>Batterie</channel><float>1</float><value>" + batt + "</value></result>"
|
||||||
|
"<result><channel>Temperature</channel><float>1</float><value>21.2</value></result></prtg>";
|
||||||
|
assertEqual(s, v);
|
||||||
|
}
|
||||||
|
|
||||||
// EOF
|
// EOF
|
||||||
|
Loading…
Reference in New Issue
Block a user