Dev/include file (#1306)
All checks were successful
Build on local RHEL9 / build (push) Successful in 1m25s
Build on local RHEL8 / build (push) Successful in 3m32s
Build on RHEL9 / build (push) Successful in 4m17s
Build on RHEL8 / build (push) Successful in 4m35s

* create a include command calling the same function as parameters (cmd generation and autocompletion), testing parameters and include

* added include in command line and python and its supposed to do the same as parameters command. both are tested

* added colorama

* moved test_free and test_command python tests to tests/scripts folder from python/tests due to CI issues with dependencies

* generated commands

* formatting

---------

Co-authored-by: Erik Fröjdh <erik.frojdh@gmail.com>
This commit is contained in:
2026-01-07 10:45:26 +01:00
committed by GitHub
parent 874ff353e5
commit 045d9440de
12 changed files with 287 additions and 23 deletions

View File

@@ -46,32 +46,46 @@ TEST_CASE("config", "[.cmdcall]") {
// free: not testing
TEST_CASE("parameters", "[.cmdcall]") {
void test_include_file(const std::string &cmd) {
Detector det;
Caller caller(&det);
// put only
REQUIRE_THROWS(caller.call("parameters", {}, -1, GET));
/*
auto prev_val = det.getNumberOfFrames().tsquash("Number of frames has to
be same to test");
{
system("echo 'frames 2' > /tmp/tempsetup.det ");
std::ostringstream oss;
caller.call("parameters", {"/tmp/tempsetup.det"}, -1, PUT, oss);
REQUIRE(oss.str() == "parameters /tmp/tempsetup.det\n");
REQUIRE(det.getNumberOfFrames().tsquash("failed") == 2);
}
{
system("echo '0:frames 1' > /tmp/tempsetup.det ");
std::ostringstream oss;
caller.call("parameters", {"/tmp/tempsetup.det"}, -1, PUT, oss);
REQUIRE(oss.str() == "parameters /tmp/tempsetup.det\n");
REQUIRE(det.getNumberOfFrames({0}).tsquash("failed") == 1);
}
det.setNumberOfFrames(prev_val);
*/
REQUIRE_THROWS(caller.call(cmd, {}, -1, GET));
auto prev_frames = det.getNumberOfFrames().tsquash(
"Number of frames has to be same to test");
auto prev_fwrite =
det.getFileWrite().tsquash("File write enable has to be same to test");
{
system("echo -e 'frames 2\nfwrite 1' > /tmp/tempsetup.det ");
std::ostringstream oss;
caller.call(cmd, {"/tmp/tempsetup.det"}, -1, PUT, oss);
REQUIRE(oss.str() == cmd + " /tmp/tempsetup.det\n");
REQUIRE(det.getNumberOfFrames().tsquash(
"frames inconsistent and failed") == 2);
REQUIRE(det.getFileWrite().tsquash("fwrite inconsistent and failed") ==
1);
}
{
system("echo -e 'frames 3\nfwrite 0' > /tmp/tempsetup.det ");
std::ostringstream oss;
caller.call(cmd, {"/tmp/tempsetup.det"}, -1, PUT, oss);
REQUIRE(oss.str() == cmd + " /tmp/tempsetup.det\n");
REQUIRE(det.getNumberOfFrames().tsquash(
"frames inconsistent and failed") == 3);
REQUIRE(det.getFileWrite().tsquash("fwrite inconsistent and failed") ==
0);
}
det.setNumberOfFrames(prev_frames);
det.setFileWrite(prev_fwrite);
}
TEST_CASE("parameters", "[.cmdcall]") { test_include_file("parameters"); }
TEST_CASE("include", "[.cmdcall]") { test_include_file("include"); }
TEST_CASE("hostname", "[.cmdcall]") {
Detector det;
Caller caller(&det);