diff --git a/AiQ_GUI.cs b/AiQ_GUI.cs index 1b7e594..0ad199f 100644 --- a/AiQ_GUI.cs +++ b/AiQ_GUI.cs @@ -201,7 +201,7 @@ namespace AiQ_GUI } else if (CbBxCamType.Text == "Mobile") { - await PreTestPassed(); + await MobileTests.RunFinalTestAsync(); } } @@ -218,7 +218,7 @@ namespace AiQ_GUI } else if (CbBxCamType.Text == "Mobile") { - await MobilePreTest.RunPreTestAsync(); + await MobileTests.RunPreTestAsync(); await PreTestPassed(); } } @@ -1452,13 +1452,14 @@ namespace AiQ_GUI //StatsExcel excelExporter = new(); //excelExporter.ExportDatabaseToExcel(); - //await MobilePreTest.CheckFirmwareAsync(); - FlexiAPI.GetVersions(CamOnTest.IP).Wait(); + //await MobileTests.CheckFirmwareAsync(); + //FlexiAPI.GetVersions(CamOnTest.IP).Wait(); //VLC.Play(VidView); //await Task.Delay(5000); //VLC.TakeSnapshot(VidView); + SSH.MobiletxtCheck("100.118.196.113"); - // await MobileAPI.SetDayModeAsync(); + // await MobileAPI.SetDayModeAsync(); AddToActionsList("RunTime " + stopWatchTest.Elapsed.ToString(@"hh\:mm\:ss\.ff"), Level.LOG); } diff --git a/Camera/SSH.cs b/Camera/SSH.cs index f826a2c..50e12d9 100644 --- a/Camera/SSH.cs +++ b/Camera/SSH.cs @@ -9,7 +9,7 @@ namespace AiQ_GUI public const string SSHPassword = "mavPA$$"; public const string SSHPasswordNEW = "#!mavsoftMESA19"; // New password for SSH after last one got leaked - private static SshClient SshConnect(string IPAddress) + public static SshClient SshConnect(string IPAddress) { SshClient client = new(IPAddress, SSHUsername, SSHPasswordNEW); try @@ -378,6 +378,24 @@ namespace AiQ_GUI return false; } } + public static bool MobiletxtCheck(string IPAddress) + { + try + { + using (SshClient client = SshConnect(IPAddress)) + { + // test -f returns exit status 0 if file exists + SshCommand checkDevice = client.RunCommand("test -f /home/mav/Mobile-Setup-configuration-marker.txt" + ); + return checkDevice.ExitStatus == 0; + } + } + catch (Exception ex) + { + MainForm.Instance.AddToActionsList($"Can't check txt file: Error {ex}", Level.ERROR); + return false; + } + } public static void Sync(string IPAddress) { diff --git a/Mobile Tests/Mobile Tests.cs b/Mobile Tests/Mobile Tests.cs index 705bdc3..ab1b937 100644 --- a/Mobile Tests/Mobile Tests.cs +++ b/Mobile Tests/Mobile Tests.cs @@ -4,7 +4,7 @@ using System.Threading.Tasks; namespace AiQ_GUI.Mobile_Tests { - public static class MobilePreTest + public static class MobileTests { public static async Task RunPreTestAsync() { @@ -48,7 +48,17 @@ namespace AiQ_GUI.Mobile_Tests public static async Task RunFinalTestAsync() { // Placeholder for any final tests if needed in the future - + //RunPreTestAsync().Wait(); + //SSH.MobiletxtCheck(MainForm.Instance.CamOnTest.IP);// Verify mobile.txt presence + if (SSH.MobiletxtCheck(MainForm.Instance.CamOnTest.IP) == true) + { + MainForm.Instance.AddLabelToPanel("MobileSetup.sh = True", false); + } + else + { + MainForm.Instance.AddToActionsList("MobileSetup.sh test failed: mobile.txt not found on device.", Level.ERROR); + MainForm.Instance.AddLabelToPanel("MobileSetup.sh = False", true); + } } private static async Task TestDayNightMode()