diff --git a/radio/src/tests/conversions.cpp b/radio/src/tests/conversions.cpp index be5c3d96e..85c4343d6 100644 --- a/radio/src/tests/conversions.cpp +++ b/radio/src/tests/conversions.cpp @@ -71,6 +71,54 @@ TEST(Conversions, ConversionX9DPFrom22) } #endif +#if defined(PCBXLITE) +TEST(Conversions, ConversionXLiteFrom22) +{ + loadEEPROMFile(TESTS_PATH "/eeprom_22_xlite.bin"); + + eepromOpen(); + eeLoadGeneralSettingsData(); + convertRadioData_218_to_219(g_eeGeneral); + eeConvertModel(0, 218); + eeLoadModel(0); + + EXPECT_EQ(-30, g_eeGeneral.vBatMin); + EXPECT_EQ(8, g_eeGeneral.speakerVolume); + EXPECT_EQ('e', g_eeGeneral.ttsLanguage[0]); + EXPECT_EQ('n', g_eeGeneral.ttsLanguage[1]); + + EXPECT_EQ(SWSRC_TELEMETRY_STREAMING, g_eeGeneral.customFn[0].swtch); + EXPECT_EQ(FUNC_LOGS, g_eeGeneral.customFn[0].func); + EXPECT_EQ(20, g_eeGeneral.customFn[0].all.val); + + EXPECT_ZSTREQ("Tes", g_eeGeneral.switchNames[0]); + EXPECT_EQ(SWITCH_3POS, SWITCH_CONFIG(0)); + + EXPECT_ZSTREQ("Test", g_model.header.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_EQ(80, g_model.mixData[0].weight); + EXPECT_EQ(80, g_model.expoData[0].weight); + EXPECT_EQ(MIXSRC_FIRST_TRAINER, g_model.mixData[4].srcRaw); + EXPECT_EQ(SWSRC_TELEMETRY_STREAMING, g_model.mixData[4].swtch); + EXPECT_EQ(SWASH_TYPE_120X, g_model.swashR.type); + EXPECT_ZSTREQ("Thr", g_model.inputNames[0]); + + EXPECT_ZSTREQ("Tes", g_model.telemetrySensors[0].label); + EXPECT_EQ(10, g_model.telemetrySensors[0].id); + EXPECT_EQ(8, g_model.telemetrySensors[0].frskyInstance.physID); + EXPECT_EQ(-100, g_model.limitData[0].max); // 90.0 + + EXPECT_EQ(LS_FUNC_VPOS, g_model.logicalSw[0].func); + EXPECT_EQ(MIXSRC_FIRST_TRAINER, g_model.logicalSw[0].v1); + EXPECT_EQ(0, g_model.logicalSw[0].v2); + + EXPECT_EQ(TELEMETRY_SCREEN_TYPE_VALUES, g_model.screensType & 0x03); + EXPECT_EQ(MIXSRC_FIRST_TRAINER, g_model.screens[0].lines[0].sources[0]); + EXPECT_EQ(MIXSRC_TIMER3, g_model.screens[0].lines[0].sources[1]); +} +#endif + #if defined(PCBX7) TEST(Conversions, ConversionX7From22) { diff --git a/radio/src/tests/eeprom_22_xlite.bin b/radio/src/tests/eeprom_22_xlite.bin new file mode 100644 index 000000000..54affdd23 Binary files /dev/null and b/radio/src/tests/eeprom_22_xlite.bin differ