public static void StartSession(string file = null, string profilePath = null, string args = null) { Session = new AutoTestClientSession(); Session.StartApplication(file: file, args: args, environment: new Dictionary <string, string> { { "MONODEVELOP_PROFILE", profilePath ?? Util.CreateTmpDir("profile") } }); Session.SetGlobalValue("MonoDevelop.Core.Instrumentation.InstrumentationService.Enabled", true); Session.GlobalInvoke("MonoDevelop.Ide.IdeApp.Workbench.GrabDesktopFocus"); }
public static void StartSession(string monoDevelopBinPath = null, string profilePath = null) { Session = new AutoTestClientSession(); //TODO: support for testing the installed app Session.StartApplication(file: monoDevelopBinPath, environment: new Dictionary <string, string> { { "MONODEVELOP_TEST_PROFILE", profilePath ?? Util.CreateTmpDir("profile") } }); Session.SetGlobalValue("MonoDevelop.Core.Instrumentation.InstrumentationService.Enabled", true); Session.GlobalInvoke("MonoDevelop.Ide.IdeApp.Workbench.GrabDesktopFocus"); }
public static void StartSession() { Console.WriteLine("Starting application"); Session = new AutoTestClientSession(); //TODO: support for testing the installed app Session.StartApplication(environment: new Dictionary <string, string> { { "MONODEVELOP_TEST_PROFILE", Util.CreateTmpDir("profile") } }); Session.GlobalInvoke("MonoDevelop.Ide.IdeApp.Workbench.GrabDesktopFocus"); }
public static void StartSession(string file = null, string profilePath = null, string logFile = null, string args = null, bool useNewEditor = true) { Session = new AutoTestClientSession(); profilePath = profilePath ?? Util.CreateTmpDir("profile"); var env = new Dictionary <string, string> { { "MONODEVELOP_PROFILE", profilePath }, { "VISUALSTUDIO_PROFILE", profilePath }, { "MONODEVELOP_LOG_FILE", logFile }, { "MONODEVELOP_FILE_LOG_LEVEL", "UpToInfo" }, }; if (!useNewEditor) { Console.WriteLine("Using legacy editor"); env.Add("MD_FEATURES_ENABLED", "AlwaysUseLegacyEditor"); } Session.StartApplication(file: file, args: args, environment: env); Session.SetGlobalValue("MonoDevelop.Core.Instrumentation.InstrumentationService.Enabled", true); Session.GlobalInvoke("MonoDevelop.Ide.IdeApp.Workbench.GrabDesktopFocus"); }
public static int Main(string[] args) { int pa = 0; bool attach = false; if (args [pa] == "-a") { attach = true; pa++; } if (pa >= args.Length) { Console.WriteLine("Test name not provided"); return(1); } string testName = args[pa]; Type testType = typeof(MainClass).Assembly.GetTypes().FirstOrDefault(t => t.FullName == testName); if (testType == null) { testType = typeof(MainClass).Assembly.GetTypes().FirstOrDefault(t => t.Name == testName); } if (testType == null) { Console.WriteLine("Test not found: " + args[0]); return(1); } StressTest test = (StressTest)Activator.CreateInstance(testType); TestPlan plan = new TestPlan(); plan.Repeat = 1; pa++; if (pa < args.Length) { int rep; if (int.TryParse(args[pa], out rep)) { plan.Repeat = rep; pa++; } } while (pa < args.Length) { string arg = args [pa]; int i = arg.IndexOf('*'); string tname = arg.Substring(0, i); string it = arg.Substring(i + 1); int nit; if (!int.TryParse(it, out nit)) { Console.WriteLine("Invalid number of iterations: " + it); return(1); } if (tname.Length == 0) { plan.Iterations = nit; } else { if (!test.HasTest(tname)) { Console.Write("Unknown test: " + tname); return(1); } plan.SetIterationsForTest(tname, nit); } pa++; } AutoTestClientSession session = new AutoTestClientSession(); Console.CancelKeyPress += delegate { Console.WriteLine("Test session cancelled"); session.Stop(); }; try { if (attach) { session.AttachApplication(); } else { string app = typeof(AutoTestClientSession).Assembly.Location; app = Path.Combine(Path.GetDirectoryName(app), "MonoDevelop.exe"); session.StartApplication(app, ""); Console.WriteLine("Connected"); session.WaitForEvent("MonoDevelop.Ide.IdeInitialized"); } Console.WriteLine("Initialized"); TestService.Session = session; test.Run(plan); } finally { if (!attach) { Console.WriteLine("Press Enter to stop the test process"); Console.ReadLine(); } session.Stop(); } return(0); }