public void OeExecutionRun_Test_Full_client_log()
        {
            if (!GetEnvExecution(out UoeExecutionEnv env))
            {
                return;
            }

            File.WriteAllText(Path.Combine(TestFolder, "test_run_full_client_log.p"), @"QUIT.");

            using (var exec = new UoeExecutionRun(env, Path.Combine(TestFolder, "test_run_full_client_log.p"))) {
                Utils.CreateDirectoryIfNeeded(Path.Combine(TestFolder, "log"));
                exec.RunSilently       = true;
                exec.WorkingDirectory  = Path.Combine(TestFolder, "log");
                exec.FullClientLogPath = "mylog.log";
                exec.ExecuteNoWait();
                exec.WaitForExit();
                Assert.IsFalse(exec.ExecutionHandledExceptions, "no exceptions");
                Assert.IsTrue(File.Exists(Path.Combine(TestFolder, "log", "mylog.log")));
            }

            using (var exec = new UoeExecutionRun(env, Path.Combine(TestFolder, "test_run_full_client_log.p"))) {
                exec.RunSilently       = true;
                exec.FullClientLogPath = Path.Combine(TestFolder, "nice.log");
                exec.ExecuteNoWait();
                exec.WaitForExit();
                Assert.IsFalse(exec.ExecutionHandledExceptions, "no exceptions");
                Assert.IsTrue(File.Exists(Path.Combine(TestFolder, "nice.log")));
            }
            env.Dispose();
        }
 public void OeExecutionRun_Test_Expect_exception()
 {
     if (!GetEnvExecution(out UoeExecutionEnv env))
     {
         return;
     }
     using (var exec = new UoeExecutionRun(env, "")) {
         Assert.ThrowsException <UoeExecutionParametersException>(() => exec.ExecuteNoWait(), "nothing to run");
     }
     env.Dispose();
 }
        public void OeExecutionRun_Test_LogEntryTypes()
        {
            if (!GetEnvExecution(out UoeExecutionEnv env))
            {
                return;
            }

            File.WriteAllText(Path.Combine(TestFolder, "test_run_full_client_log_error.p"), @"return error LOG-MANAGER:LOG-ENTRY-TYPES.");

            using (var exec = new UoeExecutionRun(env, Path.Combine(TestFolder, "test_run_full_client_log_error.p"))) {
                exec.RunSilently       = true;
                exec.LogEntryTypes     = "4GLMessages";
                exec.FullClientLogPath = Path.Combine(TestFolder, "error.log");
                exec.ExecuteNoWait();
                exec.WaitForExit();
                Assert.IsTrue(exec.ExecutionHandledExceptions, "has exception");
                Assert.AreEqual("4GLMessages", ((UoeExecutionOpenedgeException)exec.HandledExceptions[0]).ErrorMessage);
                Assert.IsTrue(File.Exists(Path.Combine(TestFolder, "error.log")));
            }
            env.Dispose();
        }