示例#1
0
        public async Task Test___Method_Start___Status_Suspended_to_Suspended()
        {
            var value = new AnyVariable <bool>()
            {
                Value = false
            };

            var testee = new DelegateActivity()
            {
                Activity = new SuspendActivity()
                {
                    Until = new TrueCondition()
                    {
                        Value = value
                    }
                }
            };

            await testee.Start();

            Assert.AreEqual(ActivityStatus.Suspended, testee.Status);

            await testee.Start();

            Assert.AreEqual(ActivityStatus.Suspended, testee.Status);
        }
示例#2
0
        public async Task Test___Method_Stop___Status_Executing()
        {
            var testee = new DelegateActivity()
            {
                Activity = new DelayActivity()
                {
                    Duration = new AnyVariable <int>()
                    {
                        Value = 5000
                    }
                }
            };

            var task = testee.Start();

            Assert.AreEqual(ActivityStatus.Executing, testee.Status);

            Thread.Sleep(1000);

            testee.Stop();

            await task;

            Assert.AreEqual(ActivityStatus.Stopped, testee.Status);
        }
示例#3
0
        public async Task Test___Method_Start___Status_Created_to_Suspended()
        {
            var testee = new DelegateActivity()
            {
                Activity = new SuspendActivity()
                {
                    Until = new FalseCondition()
                }
            };

            await testee.Start();

            Assert.AreEqual(ActivityStatus.Suspended, testee.Status);
        }
示例#4
0
        public async Task Test___Method_Start___Status_Created_to_Completed()
        {
            var testee = new DelegateActivity()
            {
                Activity = new DelayActivity()
                {
                    Duration = new AnyVariable <int>()
                    {
                        Value = 1000
                    }
                }
            };

            await testee.Start();

            Assert.AreEqual(ActivityStatus.Completed, testee.Status);
        }