From f2fc187f137ec29614c4438c344fb47f3d96a0f7 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Mon, 21 Oct 2019 15:10:31 +0200 Subject: [PATCH] better testing for eiger --- .../bin/eigerDetectorServer_developer | Bin 322201 -> 322719 bytes .../src/slsDetectorServer_funcs.c | 20 +++- slsDetectorSoftware/include/CmdProxy.h | 1 + .../tests/test-multiSlsDetectorClient.cpp | 106 ++++++++++-------- slsSupportLib/include/versionAPI.h | 2 +- 5 files changed, 77 insertions(+), 52 deletions(-) diff --git a/slsDetectorServers/eigerDetectorServer/bin/eigerDetectorServer_developer b/slsDetectorServers/eigerDetectorServer/bin/eigerDetectorServer_developer index 134c8198c5c5c1a192513a66f423cbd6891c42d7..b657ac0df07943e40563ce7c033d4daf0a476a2e 100755 GIT binary patch delta 77753 zcmb?^aa@%}*8lT77ZjB2N=SIc>y?lY(Jq8?F;FyguYxTay69?=VS!m;t1TABb<-A$ z3LR~57Y$o&@y&KEEpfxd(n3Y0($Yf3!qOHCH*K}h`}>}G=7Hye?YqCv=lw(PdCtr^ zbLPyMGiT1s^RVXVO)nq6sVqW!s&qx<>``$ciUt1^#a~hJzk>hqZ1vOsDN45uigrf= z@ZDv(hVoRDi+?NjjOa16#A?z1ZS_+h@zbiS*#iF;v}Dg#ziy*cEqUqIwC-P9iW8$1 zC5ReQtbWNJMY;7R2`^QYJ0zS`g7*99_@pvL(G0j;Q7i^rsVII1Tm`uecngFz;A+Tg zz_p4J&_^i-SF2xAouUL91r3VQ!+?(|N>2lBf}jR`R#AExaI2!+Xuy}jO~NC=xwioa zC`zyaTNULd0}ey`A;yD4QTiBgw4#I>uv1ZPHei>cgc)$EqVzRjx1!h#I8#yj8F03u zgd1>LfVU{hU<0mJlo$i9Mf*dHhdM=xHQ)wC8EU}C6lItJHz~?(27FdgoCe&gDDeh- zSy676@EwYxBp7gjq6{}+tD=n1;bOl#!W1RZC~zo>%YdU5CCPxDiZarGU5b)yz^RIo zV!&=i8D+qkiZa@OvlS)PfO8aOi~;8<%Gf>`5D`OgM}eZ;X%rMHN}7OI4fM7a1!%99 zsY(djtpvFJqE8gpX|HqPu0%{dVn~0PxQLLjq zRzI+aED298VYR*NQE}mSoQ!jfZnF9npJ>foGCH}m_+)6o9Vfls;^nQWsTE4>9p2

+zz&A?XekS~6Hzv#;SrBF_NCLrTiH|km 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 z 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%0A|^MlY}GD|0#QzS_Q4`n^Z%z*SanL02R70NzK zLBQeMc@Ks<;ZhYKzqF)7`!Xe_6u6weheo4|NTSl~9SXyCv=;Pe`lk7RC_*q6qjZ~0M`Uwd6UvuK91ON^a+gnq zVM;l_nqXMY|!w?^sN$IkJVF^rS?Z9Q147-jgE6YHyNt7S901c!DSnN=OC`B2z zoN03laG_3SxF6wks|SwR@GrT*3uXFiAkYR}4%1cj`2IR4pAzpl*9XBcFRQp*@EFoO!?~yD3KhN!>6Lc zN~F&g6%1d@)EA+oW*l+&Jxp0%3|vZNIOdM$!Ju8~lm%*_rKAJ0MZ;e}AQHIg0}g*3 zdq8K9UMce*XUe7dNS8V@97?y1B#Jczxn(7g_ z6JTy9@NCJzPHgj?r}gXwYxytWNbQ}11?Qz+RbpOs6v}8 zu$n1Xa)C=FOM@wX~-;YZ>hfI;YtX=l>@i246Y3oca23eMAQ zuu!UNq6^Y4G38aXK$i@Sgqxlni2SmJBZJX`Ob>i0cDtj1*9&?hXE3$zHI$z%aVX)V zu}E)__(RODd{qt+n-x5VFdS)dp3LwHQ_2g#P`Si^&D2mE2r`McGi4qsR81UVw{hrW z7lYkQ4aoy8B{qsG=LgE;7&X$4C{!cPWQC*91>ei z_*OU=^}we}{BfpUPs6T7;`LY;Q~@uR`2T>xE5M}$N7>)O^ad2N5(5_{zMpBg9Rgl0@i(wX1PPeCWTSt_)YD){ml7Kd zhh`knmn|NB9!d`SGQ4kBMt{%L>zdsa*rKpDL!XLS@Cwm-ou-h&FHL~I!M4XD7pWhXrd!R9l-WdqWa5HUH8 z@)R+#!*Zo#x*aza7o>>Nu}3rM2nxtylYS%9rXbygF9Aa&F*E-M;GBga^iO8QP(lbJs@=zi2%Pz@4a67ji_-dIx9u0s*Kp*mtQk0AWrmmtskuA=+ zjcM6CP#{|tSdTP*0LPI*A(%RxNRKIFCvXy}WH{q_rcP@_c{wUF(7?*8(3vPn?>JK( zMaX|muKzQBgXz?U3ucAT(#@$LAPviyK6E28(yt23I3|qwt(=ealjuWq;h1Qo@k1~; zW*Ad{jTW1M$1&H5Tj;T{;kT)c!SZ}rCzRS=AUGPcOqN$9f%_1(D#NujnT~k<%bCEN zB>oGuxDq(E7zSjFgQ*o@*tC>mPB3+UIVxz8`A;)taJWZ<(7Gq8zdRVo^jTPBPGWcs2P!-vD$KkAw^ZhWL26I{=*@&q(I}E# zl(~Q@xZfb()uPO$$gsyF!-K$UJ@BUxc)SK&c2OoNX`M&=JxU~($ySG_e>inFqt+kLz%Mt4rAU?ON3+aQOjaK$IpLl8KOJ>@HRF` ojc>lT1UgdxZ0YE0B>mMAXWaN#OPb?nf3>9Rj<&BXANKkG0QnfR=l}o! diff --git a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c index 7ef514ab7..d459615bf 100755 --- a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c +++ b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c @@ -1650,12 +1650,18 @@ int start_acquisition(int file_des) { // check for hardware mac and hardware ip if (udpDetails.srcmac != getDetectorMAC()) { ret = FAIL; - sprintf(mess, "Invalid udp source mac address for this detector. Must be same as hardware detector mac address \n"); + uint64_t sourcemac = getDetectorMAC(); + char src_mac[50]; + getMacAddressinString(src_mac, 50, sourcemac); + sprintf(mess, "Invalid udp source mac address for this detector. Must be same as hardware detector mac address %s\n", src_mac); FILE_LOG(logERROR,(mess)); } else if (!enableTenGigabitEthernet(-1) && (udpDetails.srcip != getDetectorIP())) { ret = FAIL; - sprintf(mess, "Invalid udp source ip address for this detector. Must be same as hardware detector ip address in 1G readout mode \n"); + uint32_t sourceip = getDetectorIP(); + char src_ip[INET_ADDRSTRLEN]; + getIpAddressinString(src_ip, sourceip); + sprintf(mess, "Invalid udp source ip address for this detector. Must be same as hardware detector ip address %s in 1G readout mode \n", src_ip); FILE_LOG(logERROR,(mess)); } else @@ -1758,12 +1764,18 @@ int start_and_read_all(int file_des) { // check for hardware mac and hardware ip if (udpDetails.srcmac != getDetectorMAC()) { ret = FAIL; - sprintf(mess, "Invalid udp source mac address for this detector. Must be same as hardware detector mac address \n"); + uint64_t sourcemac = getDetectorMAC(); + char src_mac[50]; + getMacAddressinString(src_mac, 50, sourcemac); + sprintf(mess, "Invalid udp source mac address for this detector. Must be same as hardware detector mac address %s\n", src_mac); FILE_LOG(logERROR,(mess)); } else if (!enableTenGigabitEthernet(-1) && (udpDetails.srcip != getDetectorIP())) { ret = FAIL; - sprintf(mess, "Invalid udp source ip address for this detector. Must be same as hardware detector ip address in 1G readout mode \n"); + uint32_t sourceip = getDetectorIP(); + char src_ip[INET_ADDRSTRLEN]; + getIpAddressinString(src_ip, sourceip); + sprintf(mess, "Invalid udp source ip address for this detector. Must be same as hardware detector ip address %s in 1G readout mode \n", src_ip); FILE_LOG(logERROR,(mess)); } else diff --git a/slsDetectorSoftware/include/CmdProxy.h b/slsDetectorSoftware/include/CmdProxy.h index fd734b6ea..f890cc63c 100644 --- a/slsDetectorSoftware/include/CmdProxy.h +++ b/slsDetectorSoftware/include/CmdProxy.h @@ -560,6 +560,7 @@ class CmdProxy { {"start", &CmdProxy::start}, {"stop", &CmdProxy::stop}, {"rx_status", &CmdProxy::rx_status}, + {"status", &CmdProxy::status}, {"rx_framescaught", &CmdProxy::rx_framescaught}, {"startingfnum", &CmdProxy::startingfnum}, {"trigger", &CmdProxy::trigger}, diff --git a/slsDetectorSoftware/tests/test-multiSlsDetectorClient.cpp b/slsDetectorSoftware/tests/test-multiSlsDetectorClient.cpp index fd8f2af77..f0c47b115 100644 --- a/slsDetectorSoftware/tests/test-multiSlsDetectorClient.cpp +++ b/slsDetectorSoftware/tests/test-multiSlsDetectorClient.cpp @@ -659,7 +659,8 @@ TEST_CASE("periodl", "[.cmd][.gotthard]") { REQUIRE(val < 1000); } REQUIRE_NOTHROW(multiSlsDetectorClient("stop", PUT)); - REQUIRE_NOTHROW(multiSlsDetectorClient("period 1 s", PUT)); + REQUIRE_NOTHROW(multiSlsDetectorClient("period 1 s", PUT)); + REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); } else { REQUIRE_THROWS(multiSlsDetectorClient("periodl", GET)); } @@ -908,6 +909,7 @@ TEST_CASE("partialreset", "[.cmd][.eiger]") { REQUIRE(oss.str() == "partialreset 0\n"); } REQUIRE_NOTHROW(multiSlsDetectorClient("partialreset 1", PUT)); + REQUIRE_NOTHROW(multiSlsDetectorClient("partialreset 0", PUT)); } else { REQUIRE_THROWS(multiSlsDetectorClient("partialreset", GET)); } @@ -987,6 +989,7 @@ TEST_CASE("measuredperiod", "[.cmd][.eiger]") { REQUIRE(val >= 1.0); REQUIRE(val < 2.0); } + REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); } else { REQUIRE_THROWS(multiSlsDetectorClient("measuredperiod", GET)); } @@ -1066,12 +1069,14 @@ TEST_CASE("ratecorr", "[.cmd][.eiger]") { TEST_CASE("trimen", "[.cmd][.eiger]") { if (test::type == slsDetectorDefs::EIGER) { + // require globals for trimen? REQUIRE_NOTHROW(multiSlsDetectorClient("trimen 4500 5400 6400", PUT)); { std::ostringstream oss; REQUIRE_NOTHROW(multiSlsDetectorClient("0:trimen", GET, nullptr, oss)); REQUIRE(oss.str() == "trimen [4500, 5400, 6400]\n"); } + REQUIRE_NOTHROW(multiSlsDetectorClient("threshold 4500 standard", PUT)); } else { REQUIRE_THROWS(multiSlsDetectorClient("trimen", GET)); } @@ -1411,18 +1416,18 @@ TEST_CASE("rx_hostname", "[.cmd]") { REQUIRE(oss.str() == s); } // save rx_hostame's ip somewhere (getent hosts [rx_hostname]) - { - REQUIRE_NOTHROW(multiSlsDetectorClient("rx_hostname 129.129.205.80", PUT)); - std::ostringstream oss; - REQUIRE_NOTHROW(multiSlsDetectorClient("0:rx_hostname", GET, nullptr, oss)); - REQUIRE(oss.str() == "rx_hostname 129.129.205.80\n"); - } { REQUIRE_NOTHROW(multiSlsDetectorClient("rx_hostname none", PUT)); std::ostringstream oss; REQUIRE_NOTHROW(multiSlsDetectorClient("0:rx_hostname", GET, nullptr, oss)); REQUIRE(oss.str() == "rx_hostname none\n"); } + { + REQUIRE_NOTHROW(multiSlsDetectorClient("rx_hostname 129.129.205.80", PUT)); + std::ostringstream oss; + REQUIRE_NOTHROW(multiSlsDetectorClient("0:rx_hostname", GET, nullptr, oss)); + REQUIRE(oss.str() == "rx_hostname 129.129.205.80\n"); + } } TEST_CASE("txndelay", "[.cmd][.eiger][.jungfrau]") { @@ -1530,12 +1535,12 @@ TEST_CASE("rx_printconfig", "[.cmd]") { } TEST_CASE("network", "[.cmd]") { - { - REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip 129.129.202.84", PUT)); + /* {TODO custom srcip in globals + REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip 129.129.205.203", PUT)); std::ostringstream oss; REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip", GET, nullptr, oss)); - REQUIRE(oss.str() == "udp_srcip 129.129.202.84\n"); - } + REQUIRE(oss.str() == "udp_srcip 129.129.205.203\n"); + }*/ std::string udp_dstip; { std::ostringstream oss; @@ -1548,12 +1553,12 @@ TEST_CASE("network", "[.cmd]") { REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstip", GET, nullptr, oss)); REQUIRE(oss.str() == udp_dstip); } - { + /* {TODO custom dstip in globals REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstmac 10:e7:c6:48:bd:3f", PUT)); std::ostringstream oss; REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstmac", GET, nullptr, oss)); REQUIRE(oss.str() == "udp_dstmac 10:e7:c6:48:bd:3f\n"); - } + } */ { REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstport 6200", PUT)); std::ostringstream oss; @@ -1593,12 +1598,12 @@ TEST_CASE("network", "[.cmd]") { REQUIRE_THROWS(multiSlsDetectorClient("udp_srcip 999.999.0.0.0.5", PUT)); if (test::type == slsDetectorDefs::JUNGFRAU) { - { - REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip2 129.129.202.84", PUT)); + /* {TODO custom srcip2 in globals + REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip2 129.129.205.203", PUT)); std::ostringstream oss; REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip2", GET, nullptr, oss)); - REQUIRE(oss.str() == "udp_srcip2 129.129.202.84\n"); - } + REQUIRE(oss.str() == "udp_srcip2 129.129.205.203\n"); + }*/ { std::ostringstream oss; REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstip2", GET, nullptr, oss)); @@ -1715,6 +1720,7 @@ TEST_CASE("timing", "[.cmd]") { REQUIRE_THROWS(multiSlsDetectorClient("timing gating", PUT)); REQUIRE_THROWS(multiSlsDetectorClient("timing burst_trigger", PUT)); } + REQUIRE_NOTHROW(multiSlsDetectorClient("timing auto", PUT)); } @@ -1821,17 +1827,6 @@ TEST_CASE("temp", "[.cmd][.eiger]") { TEST_CASE("vhighvoltage", "[.cmd]") { - int prev_val = 0; - { - std::ostringstream oss; - multiSlsDetectorClient("vhighvoltage", GET, nullptr, oss); - std::string s = (oss.str()).erase (0, strlen("vhighvoltage ")); - // std::stoi doesnt convert [0,-999] beccause of [ - if (s.find('[') != std::string::npos) { - s.erase(0, 1); - } - prev_val = std::stoi(s); - } if (test::type == slsDetectorDefs::GOTTHARD) { { REQUIRE_NOTHROW(multiSlsDetectorClient("vhighvoltage 90", PUT)); @@ -1846,27 +1841,31 @@ TEST_CASE("vhighvoltage", "[.cmd]") { REQUIRE(oss.str() == "vhighvoltage 0\n"); } REQUIRE_THROWS(multiSlsDetectorClient("vhighvoltage 50", PUT)); - } else { - if (test::type != slsDetectorDefs::EIGER) { - REQUIRE_NOTHROW(multiSlsDetectorClient("vhighvoltage 50", PUT)); - } else { - REQUIRE_THROWS(multiSlsDetectorClient("vhighvoltage 50", PUT)); - } + } else if (test::type == slsDetectorDefs::EIGER) { + REQUIRE_NOTHROW(multiSlsDetectorClient("vhighvoltage 50", PUT)); + REQUIRE_NOTHROW(multiSlsDetectorClient("vhighvoltage 120", PUT)); + sleep(2); + std::ostringstream oss; + REQUIRE_NOTHROW(multiSlsDetectorClient("0:vhighvoltage", GET, nullptr, oss)); + REQUIRE(oss.str() == "vhighvoltage 120\n"); { - REQUIRE_NOTHROW(multiSlsDetectorClient("vhighvoltage 120", PUT)); + REQUIRE_NOTHROW(multiSlsDetectorClient("vhighvoltage 0", PUT)); + sleep(2); std::ostringstream oss; - multiSlsDetectorClient("vhighvoltage", GET, nullptr, oss); - std::string s = (oss.str()).erase (0, strlen("vhighvoltage ")); - REQUIRE(s.find("120") != std::string::npos); // due to different values for highvoltage for eiger - } + multiSlsDetectorClient("0:vhighvoltage", GET, nullptr, oss); + REQUIRE(oss.str() == "vhighvoltage 0\n"); + } + } else { + REQUIRE_THROWS(multiSlsDetectorClient("vhighvoltage 50", PUT)); + std::ostringstream oss; + REQUIRE_NOTHROW(multiSlsDetectorClient("vhighvoltage", GET, nullptr, oss)); + REQUIRE(oss.str() == "vhighvoltage 120\n"); { REQUIRE_NOTHROW(multiSlsDetectorClient("vhighvoltage 0", PUT)); std::ostringstream oss; multiSlsDetectorClient("vhighvoltage", GET, nullptr, oss); - std::string s = (oss.str()).erase (0, strlen("vhighvoltage ")); - REQUIRE(s.find("0") != std::string::npos); // due to different values for highvoltage for eiger - } - REQUIRE_NOTHROW(multiSlsDetectorClient("vhighvoltage " + std::to_string(prev_val), PUT)); + REQUIRE(oss.str() == "vhighvoltage 0\n"); + } } } @@ -2055,6 +2054,7 @@ TEST_CASE("triggers", "[.cmd]") { multiSlsDetectorClient("triggers", GET, nullptr, oss); REQUIRE(oss.str() == "triggers 10\n"); } + REQUIRE_NOTHROW(multiSlsDetectorClient("triggers 1", PUT)); } TEST_CASE("settings", "[.cmd]") { @@ -2094,7 +2094,7 @@ TEST_CASE("threshold", "[.cmd]") { TEST_CASE("detsize", "[.cmd]") { - CHECK_NOTHROW(multiSlsDetectorClient("detize", GET)); + CHECK_NOTHROW(multiSlsDetectorClient("detsize", GET)); } TEST_CASE("type", "[.cmd]") { @@ -2133,6 +2133,7 @@ TEST_CASE("status", "[.cmd]") { multiSlsDetectorClient("status", GET, nullptr, oss); REQUIRE(oss.str() == "status idle\n"); } + multiSlsDetectorClient("frames 1", PUT); } TEST_CASE("trigger", "[.cmd][.eiger]") { @@ -2195,6 +2196,7 @@ TEST_CASE("framesl", "[.cmd][.jungfrau][gotthard][ctb]") { REQUIRE(framesl > 0); } multiSlsDetectorClient("stop", PUT); + REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); } } @@ -2214,6 +2216,8 @@ TEST_CASE("triggersl", "[.cmd][.jungfrau][gotthard][ctb]") { REQUIRE(triggersl == 10); } multiSlsDetectorClient("stop", PUT); + REQUIRE_NOTHROW(multiSlsDetectorClient("timing auto", PUT)); + REQUIRE_NOTHROW(multiSlsDetectorClient("triggers 1", PUT)); } } @@ -2232,6 +2236,9 @@ TEST_CASE("delayl", "[.cmd][.jungfrau][gotthard][ctb]") { REQUIRE(oss.str() == "delayl 1s\n"); } multiSlsDetectorClient("stop", PUT); + multiSlsDetectorClient("timing auto", PUT); + REQUIRE_NOTHROW(multiSlsDetectorClient("triggers 1", PUT)); + REQUIRE_NOTHROW(multiSlsDetectorClient("delay 0", PUT)); } } TEST_CASE("clk", "[.cmd]") { @@ -2281,7 +2288,13 @@ TEST_CASE("clk", "[.cmd]") { } TEST_CASE("rx_fifodepth", "[.cmd]") { - + int prev_val = 0; + { + std::ostringstream oss; + multiSlsDetectorClient("rx_fifodepth", GET, nullptr, oss); + std::string s = (oss.str()).erase (0, strlen("rx_fifodepth ")); + prev_val = std::stoi(s); + } { std::ostringstream oss; multiSlsDetectorClient("rx_fifodepth 10", PUT, nullptr, oss); @@ -2299,8 +2312,7 @@ TEST_CASE("rx_fifodepth", "[.cmd]") { multiSlsDetectorClient("rx_fifodepth", GET, nullptr, oss); REQUIRE(oss.str() == "rx_fifodepth 100\n"); } - REQUIRE_NOTHROW(multiSlsDetectorClient("rx_fifodepth 0", PUT)); - + REQUIRE_NOTHROW(multiSlsDetectorClient("rx_fifodepth " + std::to_string(prev_val), PUT)); } TEST_CASE("frames", "[.cmd]") { diff --git a/slsSupportLib/include/versionAPI.h b/slsSupportLib/include/versionAPI.h index a0fd69d0f..0db01cacf 100644 --- a/slsSupportLib/include/versionAPI.h +++ b/slsSupportLib/include/versionAPI.h @@ -8,5 +8,5 @@ #define APIGOTTHARD 0x191011 #define APIJUNGFRAU 0x191011 #define APIMYTHEN3 0x191011 -#define APIEIGER 0x191014 #define APIGOTTHARD2 0x191017 +#define APIEIGER 0x191021