mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-12 04:47:14 +02:00
wip
This commit is contained in:
@ -519,36 +519,6 @@ TEST_CASE("cdsgain", "[.cmd]") {
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("currentsource", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
auto det_type = det.getDetectorType().squash();
|
||||
|
||||
if (det_type == defs::GOTTHARD2) {
|
||||
auto prev_val = det.getCurrentSource();
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"1"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "currentsource 1\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"0"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "currentsource 0\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "currentsource 0\n");
|
||||
}
|
||||
for (int i = 0; i != det.size(); ++i) {
|
||||
det.setCurrentSource(prev_val[i], {i});
|
||||
}
|
||||
} else {
|
||||
REQUIRE_THROWS(proxy.Call("currentsource", {}, -1, GET));
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("timingsource", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
|
@ -1423,6 +1423,134 @@ TEST_CASE("filterresistor", "[.cmd]") {
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("currentsource", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
auto det_type = det.getDetectorType().squash();
|
||||
|
||||
if (det_type == defs::GOTTHARD2 || detType == defs::Jungfrau) {
|
||||
auto prev_val = det.getCurrentSource();
|
||||
|
||||
if (det_type == defs::GOTTHARD2) {
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"1"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "currentsource 1\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"0"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "currentsource 0\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "currentsource 0\n");
|
||||
}
|
||||
REQUIRE_THROWS(
|
||||
proxy.Call("currentsource", {"1", "fix", "42"}, -1, PUT));
|
||||
REQUIRE_THROWS(proxy.Call("currentsource",
|
||||
{"1", "fix", "42", "normal"}, -1, PUT));
|
||||
}
|
||||
// jungfrau
|
||||
else {
|
||||
auto chipVersion = det.getChipVersion().tsquash(
|
||||
"inconsistent chip versions to test");
|
||||
if (chipVersion == 10) {
|
||||
REQUIRE_THROWS(proxy.Call("currentsource", {"1"}, -1, PUT));
|
||||
REQUIRE_THROWS(
|
||||
proxy.Call("currentsource", {"1", "fix"}, -1, PUT));
|
||||
REQUIRE_THROWS(
|
||||
proxy.Call("currentsource", {"1", "fix", 64}, -1, PUT));
|
||||
REQUIRE_THROWS(
|
||||
proxy.Call("currentsource", {"1", "dfg", 64}, -1, PUT));
|
||||
REQUIRE_THROWS(proxy.Call("currentsource",
|
||||
{"1", "fix", 63, "normal"}, -1, PUT));
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"1", "fix", "63"}, -1, PUT,
|
||||
oss);
|
||||
REQUIRE(oss.str() == "currentsource [1, fix, 63]\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"0"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "currentsource 0\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "currentsource [disabled]\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"1", "nofix", "63"}, -1, PUT,
|
||||
oss);
|
||||
REQUIRE(oss.str() == "currentsource [1, nofix, 63]\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() ==
|
||||
"currentsource [enabled, nofix, 63]\n");
|
||||
}
|
||||
}
|
||||
// chipv1.1
|
||||
else {
|
||||
REQUIRE_THROWS(proxy.Call("currentsource", {"1"}, -1, PUT));
|
||||
REQUIRE_THROWS(
|
||||
proxy.Call("currentsource", {"1", "fix"}, -1, PUT));
|
||||
REQUIRE_THROWS(proxy.Call("currentsource",
|
||||
{"1", "ffgdfgix", 65}, -1, PUT));
|
||||
REQUIRE_THROWS(proxy.Call(
|
||||
"currentsource", {"1", "fix", 65, "normaldgf"}, -1, PUT));
|
||||
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"1", "fix", "65", "normal"},
|
||||
-1, PUT, oss);
|
||||
REQUIRE(oss.str() ==
|
||||
"currentsource [1, fix, 65, normal]\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"0"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "currentsource 0\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "currentsource [disabled]\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"1", "nofix", "65", "normal"},
|
||||
-1, PUT, oss);
|
||||
REQUIRE(oss.str() ==
|
||||
"currentsource [1, nofix, 65, normal]\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() ==
|
||||
"currentsource [enabled, nofix, 65, normal]\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("currentsource", {"1", "nofix", "65", "low"}, -1,
|
||||
PUT, oss);
|
||||
REQUIRE(oss.str() == "currentsource [1, nofix, 65, low]\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
for (int i = 0; i != det.size(); ++i) {
|
||||
det.setCurrentSource(prev_val[i], {i});
|
||||
}
|
||||
} else {
|
||||
REQUIRE_THROWS(proxy.Call("currentsource", {}, -1, GET));
|
||||
}
|
||||
}
|
||||
|
||||
/** temperature */
|
||||
|
||||
TEST_CASE("templist", "[.cmd]") {
|
||||
|
Reference in New Issue
Block a user