public void ReadLastAbortedProcess() { //Arrange StartLoadProcessTask.Start("Test process 10"); Task.Delay(10).Wait(); //Sql Server datetime is not that exact EndLoadProcessTask.End(); Task.Delay(10).Wait(); StartLoadProcessTask.Start("Test process 11"); Task.Delay(10).Wait(); //Sql Server datetime is not that exact AbortLoadProcessTask.Abort(); StartLoadProcessTask.Start("Test process 12"); Task.Delay(10).Wait(); //Sql Server datetime is not that exact EndLoadProcessTask.End(); //Act var lp = ReadLoadProcessTableTask.ReadWithOption(ReadOptions.ReadLastAborted); //Assert Assert.True(lp.IsFinished); Assert.True(lp.WasAborted); Assert.False(lp.WasSuccessful); Assert.Equal("Test process 11", lp.ProcessName); Assert.Equal(3, new RowCountTask("etl.LoadProcess", "IsFinished=1") { DisableLogging = true }.Count().Rows); Assert.Equal(2, new RowCountTask("etl.LoadProcess", "WasSuccessful=1") { DisableLogging = true }.Count().Rows); Assert.Equal(1, new RowCountTask("etl.LoadProcess", "WasAborted=1") { DisableLogging = true }.Count().Rows); }
public void TestReadLastAbortedProcess() { StartLoadProcessTask.Start("Test process 10"); Task.Delay(10).Wait(); //Sql Server datetime is not that exact EndLoadProcessTask.End(); Task.Delay(10).Wait(); StartLoadProcessTask.Start("Test process 11"); Task.Delay(10).Wait(); //Sql Server datetime is not that exact AbortLoadProcessTask.Abort(); StartLoadProcessTask.Start("Test process 12"); Task.Delay(10).Wait(); //Sql Server datetime is not that exact EndLoadProcessTask.End(); var lp = ReadLoadProcessTableTask.ReadWithOption(ReadOptions.ReadLastAborted); Assert.IsTrue(lp.IsFinished); Assert.IsTrue(lp.WasAborted); Assert.IsFalse(lp.WasSuccessful); Assert.AreEqual("Test process 11", lp.ProcessName); Assert.AreEqual(3, new SqlTask("Check if finished processes exists", $"select count(*) from etl.LoadProcess where IsFinished=1") { DisableLogging = true }.ExecuteScalar <int>()); Assert.AreEqual(2, new SqlTask("Check if successful processes exists", $"select count(*) from etl.LoadProcess where WasSuccessful=1") { DisableLogging = true }.ExecuteScalar <int>()); Assert.AreEqual(1, new SqlTask("Check if aborted processes exists", $"select count(*) from etl.LoadProcess where WasAborted=1") { DisableLogging = true }.ExecuteScalar <int>()); }
public void ReadLastAbortedProcess() { //Arrange ControlFlow.DefaultDbConnection = SqlConnection; CreateLoadProcessTableTask.Create("test_lpkey_lastabort"); StartLoadProcessTask.Start("Test process 10"); Task.Delay(10).Wait(); //Sql Server datetime is not that exact EndLoadProcessTask.End(); Task.Delay(10).Wait(); StartLoadProcessTask.Start("Test process 11"); Task.Delay(10).Wait(); //Sql Server datetime is not that exact AbortLoadProcessTask.Abort(); StartLoadProcessTask.Start("Test process 12"); Task.Delay(10).Wait(); //Sql Server datetime is not that exact EndLoadProcessTask.End(); //Act var lp = ReadLoadProcessTableTask.ReadWithOption(ReadOptions.ReadLastAborted); //Assert Assert.True(lp.IsFinished); Assert.True(lp.WasAborted); Assert.False(lp.WasSuccessful); Assert.Equal("Test process 11", lp.ProcessName); //Cleanup DropTableTask.Drop(SqlConnection, "test_lpkey_lastabort"); }
public override void Execute() { new SqlTask(this, Sql).ExecuteNonQuery(); var rlp = new ReadLoadProcessTableTask(LoadProcessKey) { TaskType = this.TaskType, TaskHash = this.TaskHash, DisableLogging = true }; rlp.Execute(); ControlFlow.CurrentLoadProcess = rlp.LoadProcess; }