示例#1
0
        public void RemoveDoesNothingToOrderWhenLastStepIsRemoved()
        {
            // Arrange
            var x = new Flow();
            var step1 = new Step("name1", "action");
            var step2 = new Step("name2", "action");
            var step3 = new Step("name3", "action");

            // Act
            x.Add(step1);
            x.Add(step2);
            x.Add(step3);
            int before1 = step1.Order;
            int before2 = step2.Order;
            int before3 = step3.Order;
            x.Remove(step3);
            int after1 = step1.Order;
            int after2 = step2.Order;

            // Assert
            Assert.AreEqual(1, before1);
            Assert.AreEqual(2, before2);
            Assert.AreEqual(3, before3);
            Assert.AreEqual(1, after1);
            Assert.AreEqual(2, after2);
        }
示例#2
0
        public void StepRemovedAndReinsertedHasNewOrder()
        {
            // Arrange
            var x = new Flow();
            var step1 = new Step("name1", "action");
            var step2 = new Step("name2", "action");
            var step3 = new Step("name3", "action");

            // Act
            x.Add(step1);
            x.Add(step2);
            x.Add(step3);
            x.Remove(step1);
            x.Add(step1);

            // Assert
            Assert.AreEqual(3, step1.Order);
        }
示例#3
0
        public void RemoveDecrementsOrderOfRemainingStepsWhenTheMiddleOneIsRemoved()
        {
            // Arrange
            var x = new Flow();
            var step1 = new Step("name1", "action");
            var step2 = new Step("name2", "action");
            var step3 = new Step("name3", "action");

            // Act
            x.Add(step1);
            x.Add(step2);
            x.Add(step3);
            int before1 = step1.Order;
            int before2 = step2.Order;
            int before3 = step3.Order;
            x.Remove(step2);
            int after1 = step1.Order;
            int after3 = step3.Order;

            // Assert
            Assert.AreEqual(1, before1);
            Assert.AreEqual(2, before2);
            Assert.AreEqual(3, before3);
            Assert.AreEqual(1, after1);
            Assert.AreEqual(2, after3);
        }