From 8eed123716c0dbf07bd0756cac87d7c2ce6575e2 Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Tue, 26 Oct 2021 23:57:17 +0200 Subject: [PATCH] Even more unit tests --- radio/src/tests/CMakeLists.txt | 2 +- radio/src/tests/conversions.cpp | 88 ++++++++++++++---------------- radio/src/tests/model_22_x10.otx | Bin 795 -> 0 bytes radio/src/tests/model_22_x12s.otx | Bin 913 -> 0 bytes radio/src/tests/model_23_x10.otx | Bin 0 -> 804 bytes radio/src/tests/model_23_x12s.otx | Bin 0 -> 761 bytes 6 files changed, 41 insertions(+), 49 deletions(-) delete mode 100644 radio/src/tests/model_22_x10.otx delete mode 100644 radio/src/tests/model_22_x12s.otx create mode 100644 radio/src/tests/model_23_x10.otx create mode 100644 radio/src/tests/model_23_x12s.otx diff --git a/radio/src/tests/CMakeLists.txt b/radio/src/tests/CMakeLists.txt index 4c1859ea8..099d96150 100644 --- a/radio/src/tests/CMakeLists.txt +++ b/radio/src/tests/CMakeLists.txt @@ -15,7 +15,7 @@ if(GTEST_INCDIR AND GTEST_SRCDIR AND Qt5Widgets_FOUND) if(PCB STREQUAL X12S OR PCB STREQUAL X10) - set(EXTRACT_MODEL_FILES model_22_x12s model_22_x10) + set(EXTRACT_MODEL_FILES model_23_x12s model_23_x10) foreach(model_file ${EXTRACT_MODEL_FILES}) add_custom_command( diff --git a/radio/src/tests/conversions.cpp b/radio/src/tests/conversions.cpp index e83b3640e..265b289e3 100644 --- a/radio/src/tests/conversions.cpp +++ b/radio/src/tests/conversions.cpp @@ -258,15 +258,20 @@ TEST(Conversions, ConversionX7From23) } #endif -#if 0 //TODO defined(PCBX10) && !defined(RADIO_FAMILY_T16) -TEST(Conversions, ConversionX10From22) +#if defined(PCBX10) && !defined(RADIO_FAMILY_T16) +TEST(Conversions, ConversionX10From23) { - simuFatfsSetPaths(TESTS_BUILD_PATH "/model_22_x10/", TESTS_BUILD_PATH "/model_22_x10/"); + simuFatfsSetPaths(TESTS_BUILD_PATH "/model_23_x10/", TESTS_BUILD_PATH "/model_23_x10/"); - loadRadioSettings("/RADIO/radio.bin"); - loadModel("model1.bin"); + convertRadioData_219_to_220("/RADIO/radio.bin"); + convertRadioData_220_to_221("/RADIO/radio.bin"); + EXPECT_EQ(nullptr, loadRadioSettingsYaml()); - EXPECT_EQ(219, g_eeGeneral.version); + char modelname[] = "model1.bin"; + convertBinModelData(modelname, 219); + loadModel(modelname); + + EXPECT_EQ(220, g_eeGeneral.version); // TODO: 221? EXPECT_EQ(100, g_eeGeneral.calib[9].spanNeg); EXPECT_EQ(500, g_eeGeneral.calib[9].mid); @@ -279,7 +284,7 @@ TEST(Conversions, ConversionX10From22) EXPECT_EQ(-23, g_eeGeneral.vBatMin); EXPECT_EQ(8, g_eeGeneral.speakerVolume); EXPECT_STRNEQ("en", g_eeGeneral.ttsLanguage); - EXPECT_STRNEQ("model1.bin", g_eeGeneral.currModelFilename); + EXPECT_STRNEQ("model1.yml", g_eeGeneral.currModelFilename); EXPECT_EQ(SWSRC_TELEMETRY_STREAMING, g_eeGeneral.customFn[0].swtch); EXPECT_EQ(FUNC_LOGS, g_eeGeneral.customFn[0].func); @@ -289,16 +294,13 @@ TEST(Conversions, ConversionX10From22) EXPECT_EQ(FUNC_VOLUME, g_eeGeneral.customFn[1].func); EXPECT_EQ(MIXSRC_RS, g_eeGeneral.customFn[1].all.val); - EXPECT_ZSTREQ("Tes", g_eeGeneral.switchNames[0]); + EXPECT_STRNEQ("Tes", g_eeGeneral.switchNames[0]); EXPECT_EQ(SWITCH_3POS, SWITCH_CONFIG(0)); - EXPECT_ZSTREQ("BT_X10", g_eeGeneral.bluetoothName); - EXPECT_STREQ("Default", g_eeGeneral.themeName); + EXPECT_STRNEQ("BT_X10", g_eeGeneral.bluetoothName); + EXPECT_STREQ("EdgeTX", g_eeGeneral.themeName); - EXPECT_EQ(WHITE, g_eeGeneral.themeData.options[0].value.unsignedValue); - EXPECT_EQ(RED, g_eeGeneral.themeData.options[1].value.unsignedValue); - - EXPECT_ZSTREQ("Test", g_model.header.name); + EXPECT_STRNEQ("Test", g_model.header.name); EXPECT_EQ(0, g_model.noGlobalFunctions); EXPECT_EQ(0, g_model.beepANACenter); EXPECT_EQ(80, g_model.mixData[0].weight); @@ -315,38 +317,37 @@ TEST(Conversions, ConversionX10From22) EXPECT_EQ(20, g_model.logicalSw[1].v2); EXPECT_EQ(SWSRC_FIRST_LOGICAL_SWITCH, g_model.logicalSw[1].andsw); EXPECT_EQ(SWASH_TYPE_120X, g_model.swashR.type); - EXPECT_ZSTREQ("Tes", g_model.flightModeData[0].name); + EXPECT_STRNEQ("Tes", g_model.flightModeData[0].name); EXPECT_EQ(10, g_model.flightModeData[0].gvars[0]); - EXPECT_ZSTREQ("Tes", g_model.gvars[0].name); + EXPECT_STRNEQ("Tes", g_model.gvars[0].name); EXPECT_EQ(MODULE_TYPE_R9M_PXX1, g_model.moduleData[EXTERNAL_MODULE].type); EXPECT_EQ(MODULE_SUBTYPE_R9M_EU, g_model.moduleData[EXTERNAL_MODULE].subType); - EXPECT_ZSTREQ("Rud", g_model.inputNames[0]); - EXPECT_ZSTREQ("Tes", g_model.telemetrySensors[0].label); + EXPECT_STRNEQ("Rud", g_model.inputNames[0]); + EXPECT_STRNEQ("Tes", g_model.telemetrySensors[0].label); EXPECT_EQ(10, g_model.telemetrySensors[0].id); EXPECT_EQ(9, g_model.telemetrySensors[0].frskyInstance.physID); EXPECT_EQ((NUM_POTS + NUM_SLIDERS + 3), g_model.thrTraceSrc); // CH3 - - EXPECT_STREQ("Layout2P1", g_model.screenData[0].LayoutId); - EXPECT_STREQ("ModelBmp", g_model.screenData[0].layoutData.zones[0].widgetName); - EXPECT_STREQ("Value", g_model.topbarData.zones[0].widgetName); - EXPECT_EQ(MIXSRC_FIRST_TELEM, g_model.topbarData.zones[0].widgetData.options[0].value.unsignedValue); - EXPECT_EQ(MIXSRC_RS, g_model.screenData[0].layoutData.zones[2].widgetData.options[0].value.unsignedValue); } #endif -#if 0 //TODO defined(PCBX12S) -TEST(Conversions, ConversionX12SFrom22) +#if defined(PCBX12S) +TEST(Conversions, ConversionX12SFrom23) { - simuFatfsSetPaths(TESTS_BUILD_PATH "/model_22_x12s/", TESTS_BUILD_PATH "/model_22_x12s/"); + simuFatfsSetPaths(TESTS_BUILD_PATH "/model_23_x12s/", TESTS_BUILD_PATH "/model_23_x12s/"); - loadRadioSettings("/RADIO/radio.bin"); - loadModel("model1.bin"); + convertRadioData_219_to_220("/RADIO/radio.bin"); + convertRadioData_220_to_221("/RADIO/radio.bin"); + EXPECT_EQ(nullptr, loadRadioSettingsYaml()); - EXPECT_EQ(219, g_eeGeneral.version); + char modelname[] = "model1.bin"; + convertBinModelData(modelname, 219); + loadModel(modelname); + + EXPECT_EQ(220, g_eeGeneral.version); // TODO: 221? EXPECT_EQ(-30, g_eeGeneral.vBatMin); EXPECT_EQ(8, g_eeGeneral.speakerVolume); EXPECT_STRNEQ("en", g_eeGeneral.ttsLanguage); - EXPECT_STRNEQ("model1.bin", g_eeGeneral.currModelFilename); + EXPECT_STRNEQ("model1.yml", g_eeGeneral.currModelFilename); EXPECT_EQ(SWSRC_TELEMETRY_STREAMING, g_eeGeneral.customFn[0].swtch); EXPECT_EQ(FUNC_LOGS, g_eeGeneral.customFn[0].func); @@ -356,16 +357,13 @@ TEST(Conversions, ConversionX12SFrom22) EXPECT_EQ(FUNC_VOLUME, g_eeGeneral.customFn[1].func); EXPECT_EQ(MIXSRC_RS, g_eeGeneral.customFn[1].all.val); - EXPECT_ZSTREQ("Tes", g_eeGeneral.switchNames[0]); + EXPECT_STRNEQ("Tes", g_eeGeneral.switchNames[0]); EXPECT_EQ(SWITCH_3POS, SWITCH_CONFIG(0)); - EXPECT_ZSTREQ("BT", g_eeGeneral.bluetoothName); - EXPECT_STREQ("Default", g_eeGeneral.themeName); + EXPECT_STRNEQ("BT", g_eeGeneral.bluetoothName); + EXPECT_STREQ("EdgeTX", g_eeGeneral.themeName); - EXPECT_EQ(WHITE, g_eeGeneral.themeData.options[0].unsignedValue); - EXPECT_EQ(RED, g_eeGeneral.themeData.options[1].unsignedValue); - - EXPECT_ZSTREQ("Test", g_model.header.name); + EXPECT_STRNEQ("Test", g_model.header.name); EXPECT_EQ(0, g_model.noGlobalFunctions); EXPECT_EQ(0, g_model.beepANACenter); EXPECT_EQ(80, g_model.mixData[0].weight); @@ -382,22 +380,16 @@ TEST(Conversions, ConversionX12SFrom22) EXPECT_EQ(20, g_model.logicalSw[1].v2); EXPECT_EQ(SWSRC_FIRST_LOGICAL_SWITCH, g_model.logicalSw[1].andsw); EXPECT_EQ(SWASH_TYPE_120X, g_model.swashR.type); - EXPECT_ZSTREQ("Test", g_model.flightModeData[0].name); + EXPECT_STRNEQ("Test", g_model.flightModeData[0].name); EXPECT_EQ(10, g_model.flightModeData[0].gvars[0]); - EXPECT_ZSTREQ("Tes", g_model.gvars[0].name); + EXPECT_STRNEQ("Tes", g_model.gvars[0].name); EXPECT_EQ(MODULE_TYPE_R9M_PXX1, g_model.moduleData[EXTERNAL_MODULE].type); EXPECT_EQ(MODULE_SUBTYPE_R9M_EU, g_model.moduleData[EXTERNAL_MODULE].subType); - EXPECT_ZSTREQ("Rud", g_model.inputNames[0]); - EXPECT_ZSTREQ("Tes", g_model.telemetrySensors[0].label); + EXPECT_STRNEQ("Rud", g_model.inputNames[0]); + EXPECT_STRNEQ("Tes", g_model.telemetrySensors[0].label); EXPECT_EQ(10, g_model.telemetrySensors[0].id); EXPECT_EQ(9, g_model.telemetrySensors[0].frskyInstance.physID); EXPECT_EQ((NUM_POTS + NUM_SLIDERS + 3), g_model.thrTraceSrc); // CH3 - - EXPECT_STREQ("Layout2P1", g_model.screenData[0].LayoutId); - EXPECT_STREQ("ModelBmp", g_model.screenData[0].layoutData.zones[0].widgetName); - EXPECT_STREQ("Value", g_model.topbarData.zones[0].widgetName); - EXPECT_EQ(MIXSRC_FIRST_TELEM, g_model.topbarData.zones[0].widgetData.options[0].unsignedValue); - EXPECT_EQ(MIXSRC_RS, g_model.screenData[0].layoutData.zones[2].widgetData.options[0].unsignedValue); } #endif diff --git a/radio/src/tests/model_22_x10.otx b/radio/src/tests/model_22_x10.otx deleted file mode 100644 index c796f181e5fe32796dc73c5a68197e8aab5beec5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 795 zcmWIWW@Zs#U|`^25Oz`VcfQ>HW)YAV&dk8T52S+}T|E8uixN{Z^YxN4^WOIE<~rmc z;F`awx5Kr|RYW(ZC8TNU-Wy$O=W1+j64>nPa?owD{DbtLyc;)(i0~}g91$M=w&ttl z(KC(J?Gq2K5!`C6b4XrAEb*+_HL=*=wW~S5U18PLTq2rzmg$*V@eRjUZy64)f6;m2 z=`y>sU*Fw!@;Y^X&Q%$WPp4mIU+(PJKYzS);zpH+SF@WZ{`ZKP9nSsql5cd+j;~6Re+`pOTtm2=>qo+w4OQGHf57 z_e>Sg5S7kwXK!D3_R>=4mtiX=tju@r7BKgg5xKQ?{=&_R=O4Uz{^65%rxlvKSb7B> z`Zzc)R{Qkl!4G-<>56v_%GU4xRDAu^_2ONZUn|+DxhQPD;-auRHu7NU%k%6ewKq$R zcIe$^__s+xscXtNTa8^Jd-P8AitN!{r{m0ZZ(;5agZ=Zl_m^!=nz8-F?XZnse#9P|w^zjL>LT<1pI+s#b#ZK5C?qH- z7-)0i{kzU^|3`Oi*-?W|oc+jiVPKGf(uM#$C4fV&Sg)j_r2E@hf6ud;eNRuZUTmxK zoLL#e5a7+o1kr#!F#%0M0%%DKT{C*rA#|PxGBF|&T|2t-5!$(cZiLv4@JxU=D;r1! OGZ5|q(%wKd3=9BTq#&69 diff --git a/radio/src/tests/model_22_x12s.otx b/radio/src/tests/model_22_x12s.otx deleted file mode 100644 index ac403366218bbc03cbd34223244f1aa633cebf0c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 913 zcmWIWW@Zs#U|`^2Fw0l=f7)l-FUZKiuttS}L6AX)!Pno#)hAd#H$Npc$51aRGcPoR zlY!YhG%t2rcV2911vdjD%U7U!uo0*AR~qbmy4%I|$@kmlJU1A%`3h?k8X5(iby}M_ zgMAcOgME}3gMAdGf_;*unVp-NB-cr^E=~~XVUlWMH)DR=6xhISVBFHI!K*P{P(y%m z)ux^aEJ~6y0$3L{NO%I(H3b@QxgFG4V4iS~Em^`)%%GcRMKn-Af>oJ2q3?--!2&+T z!ifn|%G_2mq29Zq^v-)~E$}$7w!PxOkpqsb!8araiPR-dx0boXq%x77>*@UY#TsO&G!e&o3@Fr-1D zEdUJLAV(KZe@M_4>y=cLfP?mtO>~%c~-OU=_%HWZB?E#D`Suhw*p37 z{EWvl%Yg=mGcz#o!woM=Ov%iLN1Fq_XnTFWrn~Xfga7{v*wQ4HD=sx$s=3sX^~95; zgaoGULYrS_1J0Z{u;9RfDYKRb&QDyYpwt6&dHfOU~G=XkeSn;d4&aRClAva+VpZ6lClF+&|lA4mr|x_J8Q7bT`-=IbS8=DqD+&wa>2 z=IH&mT|5U{6}#BFH>k{ble9Hj-Q018^dXjmMgKI+n(L?hKdicVLE?rqi}Q2E9Cv)J zJ@no7UiE#8Nd6-go~&I7g@-!#NhVrc5Z;-P^!GM{^M(9#H>bV5F;6plb?Cg%Jf@97 z>>P{wc3D)fna!EQy=qzSJ}3Tou;lyvCG*m5=_HA@{JmEqS1WbCXm@Yf z>sF3_osz*%vR;&`lWm1CjX-s-wO)ArwTZ# zHo0{aNcAWLF1E4X@u&Z}p1076kK2n{msbVtz5KR}`=F76&CHcpd=jEf$`$|7M%-t;aYY@kUX}5*nDa5C=V_nxxc{4PZ0HYBn_u>Pf1Yf=qoQJ1 zh!POo;{UX>`o*i^Q>my(^IS$ z+p0WgR>lAgU}S=5z@DmrrXT^dG={DjJ@ODbuK}4DQHib{-T4UZ!az4d>_&Jdz?+o~ Qq=Fd;cLC`Tpc)1S0Q~wT&;S4c literal 0 HcmV?d00001 diff --git a/radio/src/tests/model_23_x12s.otx b/radio/src/tests/model_23_x12s.otx new file mode 100644 index 0000000000000000000000000000000000000000..a223143a98c8a1ed9ef2a98fedd61bdf4b3ee25e GIT binary patch literal 761 zcmWIWW@Zs#U|`^22-y`C>>8)R&;#UEGBYsn1L+_~7f*lvqQsQUe7&U1yth5J+)V)@ zZTG9+3khB+*e>S2T;YZK7Bh3{=WLCd6CDK(hKm1RJo()}ruNrI`(rO$Ot+9fUul{6 z#rEm+=_d@$V~o%K>e4>)!1U;p0I#x`+aa&RQhT@eT0YP!D7%)j?#-kBz1PdyT3bKP zkl%1T?3$?BXCBX=#}B_1{Br1N(T=%S@BaQF*z>Y1u;=$ph5!_YUk^W&!obMDAfU#; zAP980ufL0{Pq2P&eoAVNA=v3RY_ktJ$gq8QKFRB{PmocG&Qg)9IXp zcEr(ff7|?H{SV(gdUsl7g+@jTN9Xb%O~*RU>#O`fUA+CNLjAdQrb2g@d`msk&iqFF z;L9L^ptQ`cIj*{v)!L_SRy&?c%6}zA2VFCIbRl%^1Trxq4_!OD^AXx# c0Mh`(ZiHt7yjj^mDwu(A7m(Hj`h$T100gWVDgXcg literal 0 HcmV?d00001