Esempio n. 1
0
        public void Run_WithArgs()
        {
            int i  = 0;
            var em = ExecutionManager.CreateWithArgs <string>(async(x) => { i++; Assert.AreEqual("XXX", x.Value); await Task.CompletedTask; }, "XXX").Run();

            Assert.AreEqual(1, i);
            Assert.AreEqual(1, em.ExecutorCount);
            Assert.AreEqual(ExecutionManagerStopReason.TriggerStop, em.StopReason);
        }
Esempio n. 2
0
        public void Run_WithArgs_Fast()
        {
            int i  = 0;
            var tt = new TestTrigger();
            var em = ExecutionManager.CreateWithArgs <string>(async(x) => { i++; TestContext.WriteLine($"i: {i}"); Assert.AreEqual("XXX", x.Value); await Task.CompletedTask; }, tt).Run();

            Assert.AreEqual(iterations, i);
            Assert.AreEqual(iterations, tt.Count);
            Assert.AreEqual(iterations, em.ExecutorCount);
            Assert.AreEqual(ExecutionManagerStopReason.TriggerStop, em.StopReason);
        }
Esempio n. 3
0
        public void Run_WithArgs_Slow()
        {
            int i  = 0;
            var tt = new TestTrigger();
            var sw = Stopwatch.StartNew();
            var em = ExecutionManager.CreateWithArgs <string>(async(x) => { i++; TestContext.WriteLine($"i: {i}"); Assert.AreEqual("XXX", x.Value); await Task.Delay(200); }, tt).Run();

            sw.Stop();
            Assert.IsTrue(sw.ElapsedMilliseconds > 2000, sw.ElapsedMilliseconds.ToString());
            Assert.AreEqual(iterations, i);
            Assert.AreEqual(iterations, tt.Count);
            Assert.AreEqual(iterations, em.ExecutorCount);
            Assert.AreEqual(ExecutionManagerStopReason.TriggerStop, em.StopReason);
        }