mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-23 18:17:59 +02:00
merge conflict
This commit is contained in:
@ -15,6 +15,93 @@ using sls::Detector;
|
||||
using test::GET;
|
||||
using test::PUT;
|
||||
|
||||
// time specific measurements for gotthard2
|
||||
TEST_CASE("timegotthard2", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
auto det_type = det.getDetectorType().squash();
|
||||
if (det_type == defs::GOTTHARD2) {
|
||||
// exptime
|
||||
auto prev_val = det.getExptime();
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("exptime", {"220ns"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "exptime 220ns\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("exptime", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "exptime 222ns\n");
|
||||
}
|
||||
for (int i = 0; i != det.size(); ++i) {
|
||||
det.setExptime(prev_val[i], {i});
|
||||
}
|
||||
// burst period
|
||||
prev_val = det.getBurstPeriod();
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("burstperiod", {"220ns"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "burstperiod 220ns\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("burstperiod", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "burstperiod 222ns\n");
|
||||
}
|
||||
for (int i = 0; i != det.size(); ++i) {
|
||||
det.setBurstPeriod(prev_val[i], {i});
|
||||
}
|
||||
// delay after trigger
|
||||
prev_val = det.getDelayAfterTrigger();
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("delay", {"220ns"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "delay 220ns\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("delay", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "delay 222ns\n");
|
||||
}
|
||||
for (int i = 0; i != det.size(); ++i) {
|
||||
det.setDelayAfterTrigger(prev_val[i], {i});
|
||||
}
|
||||
// period in burst mode
|
||||
auto burst_prev_val = det.getBurstMode();
|
||||
det.setBurstMode(defs::BURST_INTERNAL, {});
|
||||
prev_val = det.getPeriod();
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("period", {"220ns"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "period 220ns\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("period", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "period 222ns\n");
|
||||
}
|
||||
for (int i = 0; i != det.size(); ++i) {
|
||||
det.setPeriod(prev_val[i], {i});
|
||||
}
|
||||
// period in continuous mode
|
||||
det.setBurstMode(defs::CONTINUOUS_INTERNAL, {});
|
||||
prev_val = det.getPeriod();
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("period", {"220ns"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "period 220ns\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("period", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "period 222ns\n");
|
||||
}
|
||||
for (int i = 0; i != det.size(); ++i) {
|
||||
det.setPeriod(prev_val[i], {i});
|
||||
det.setBurstMode(burst_prev_val[i], {i});
|
||||
}
|
||||
}
|
||||
}
|
||||
/* dacs */
|
||||
|
||||
TEST_CASE("Setting and reading back GOTTHARD2 dacs", "[.cmd][.dacs]") {
|
||||
@ -552,6 +639,53 @@ TEST_CASE("veto", "[.cmd]") {
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("vetostream", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
auto det_type = det.getDetectorType().squash();
|
||||
if (det_type == defs::GOTTHARD2) {
|
||||
auto prev_val = det.getVetoStream();
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("vetostream", {"none"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "vetostream none\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("vetostream", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "vetostream none\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("vetostream", {"3gbe"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "vetostream 3gbe\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("vetostream", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "vetostream 3gbe\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("vetostream", {"3gbe", "10gbe"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "vetostream 3gbe, 10gbe\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("vetostream", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "vetostream 3gbe, 10gbe\n");
|
||||
}
|
||||
REQUIRE_THROWS(proxy.Call("vetostream", {"3gbe", "none"}, -1, PUT));
|
||||
for (int i = 0; i != det.size(); ++i) {
|
||||
det.setVetoStream(prev_val[i], {i});
|
||||
}
|
||||
} else {
|
||||
REQUIRE_THROWS(proxy.Call("vetostream", {}, -1, GET));
|
||||
REQUIRE_THROWS(proxy.Call("vetostream", {"none"}, -1, PUT));
|
||||
}
|
||||
REQUIRE_THROWS(proxy.Call("vetostream", {"dfgd"}, -1, GET));
|
||||
}
|
||||
|
||||
TEST_CASE("confadc", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
|
@ -96,6 +96,39 @@ TEST_CASE("Setting and reading back Jungfrau dacs", "[.cmd][.dacs]") {
|
||||
|
||||
/* Network Configuration (Detector<->Receiver) */
|
||||
|
||||
TEST_CASE("numinterfaces", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
auto det_type = det.getDetectorType().squash();
|
||||
if (det_type == defs::JUNGFRAU) {
|
||||
auto prev_val = det.getNumberofUDPInterfaces().tsquash(
|
||||
"inconsistent numinterfaces to test");
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("numinterfaces", {"2"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "numinterfaces 2\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("numinterfaces", {"1"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "numinterfaces 1\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("numinterfaces", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "numinterfaces 1\n");
|
||||
}
|
||||
det.setNumberofUDPInterfaces(prev_val);
|
||||
} else {
|
||||
std::ostringstream oss;
|
||||
proxy.Call("numinterfaces", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "numinterfaces 1\n");
|
||||
REQUIRE_THROWS(proxy.Call("numinterfaces", {"1"}, -1, PUT));
|
||||
}
|
||||
REQUIRE_THROWS(proxy.Call("numinterfaces", {"3"}, -1, PUT));
|
||||
REQUIRE_THROWS(proxy.Call("numinterfaces", {"0"}, -1, PUT));
|
||||
}
|
||||
|
||||
TEST_CASE("selinterface", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
|
@ -1790,39 +1790,6 @@ TEST_CASE("scanerrmsg", "[.cmd]") {
|
||||
|
||||
/* Network Configuration (Detector<->Receiver) */
|
||||
|
||||
TEST_CASE("numinterfaces", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
auto det_type = det.getDetectorType().squash();
|
||||
if (det_type == defs::JUNGFRAU || det_type == defs::GOTTHARD2) {
|
||||
auto prev_val = det.getNumberofUDPInterfaces().tsquash(
|
||||
"inconsistent numinterfaces to test");
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("numinterfaces", {"2"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "numinterfaces 2\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("numinterfaces", {"1"}, -1, PUT, oss);
|
||||
REQUIRE(oss.str() == "numinterfaces 1\n");
|
||||
}
|
||||
{
|
||||
std::ostringstream oss;
|
||||
proxy.Call("numinterfaces", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "numinterfaces 1\n");
|
||||
}
|
||||
det.setNumberofUDPInterfaces(prev_val);
|
||||
} else {
|
||||
std::ostringstream oss;
|
||||
proxy.Call("numinterfaces", {}, -1, GET, oss);
|
||||
REQUIRE(oss.str() == "numinterfaces 1\n");
|
||||
REQUIRE_THROWS(proxy.Call("numinterfaces", {"1"}, -1, PUT));
|
||||
}
|
||||
REQUIRE_THROWS(proxy.Call("numinterfaces", {"3"}, -1, PUT));
|
||||
REQUIRE_THROWS(proxy.Call("numinterfaces", {"0"}, -1, PUT));
|
||||
}
|
||||
|
||||
TEST_CASE("udp_srcip", "[.cmd]") {
|
||||
Detector det;
|
||||
CmdProxy proxy(&det);
|
||||
|
Reference in New Issue
Block a user