public void ShouldSaveItemsToSaver()
 {
     var itemRing = new ItemRing<string>(items);
     var saver = new MockSaver<IEnumerable<string>>();
     itemRing.Save(saver);
     Approvals.VerifyAll(saver.Saved.First(), "Saved");
 }
        public void ShouldIndicateSecondItemAsCurrentAfterIncrement()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.Increment();

            Assert.AreEqual(items[1], itemRing.Current);
        }
        public void ShouldIndicateThirdItemAsNextAfterIncrement()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.Increment();

            Assert.AreEqual(items[2], itemRing.Next);
        }
Example #4
0
        public void ShouldCorrectlyWrapOnOverFlowCausedByMovingUp()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.MoveUp(items.First());

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
Example #5
0
        public void ShouldSaveItemsToSaver()
        {
            var itemRing = new ItemRing <string>(items);
            var saver    = new MockSaver <IEnumerable <string> >();

            itemRing.Save(saver);
            Approvals.VerifyAll(saver.Saved.First(), "Saved");
        }
Example #6
0
        public void ShouldIncrementCurrentIfCurrentIsRemoved()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.Remove(items.First());

            Assert.AreEqual(items[1], itemRing.Current);
        }
Example #7
0
        public void ShouldIncrementCurrentIfCurrentIsRemovedByIndex()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.RemoveAt(0);

            Assert.AreEqual(items[1], itemRing.Current);
        }
Example #8
0
        public void ShouldChangeListIfFirstItemIsMovedDown()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.MoveDown(items.First());

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
Example #9
0
        public void ShouldAddNewItemToEndOfList()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.Add("four");

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
        public void ShouldIndicateFirstItemIsNextWhenCurrentIsLastItem()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.Increment();
            itemRing.Increment();

            Assert.AreEqual(items[0], itemRing.Next);
        }
Example #11
0
        public void ShouldChangeListIfLastItemIsMovedUp()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.MoveUp(items.Last());

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
Example #12
0
        public void ShouldNotChangeListAfterIncrement()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.Increment();

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
        public void ShouldNotChangeListAfterIncrement()
        {
            var itemRing = new ItemRing<string>(items);

            itemRing.Increment();

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
Example #14
0
        public void ShouldIndicateSecondItemAsCurrentAfterIncrement()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.Increment();

            Assert.AreEqual(items[1], itemRing.Current);
        }
Example #15
0
        public void ShouldIndicateThirdItemAsNextAfterIncrement()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.Increment();

            Assert.AreEqual(items[2], itemRing.Next);
        }
Example #16
0
        public void ShouldIndicateFirstItemIsNextWhenCurrentIsLastItem()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.Increment();
            itemRing.Increment();

            Assert.AreEqual(items[0], itemRing.Next);
        }
Example #17
0
        public void ShouldCorretlyPointToCurrentItemIfItemIsRemovedBeforeByIndex()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.Increment();

            itemRing.RemoveAt(0);

            Assert.AreEqual(items[1], itemRing.Current);
        }
Example #18
0
        public void ShouldRotateBackToFirstItemOnOverFlow()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.Increment();
            itemRing.Increment();
            itemRing.Increment();

            Assert.AreEqual(items.First(), itemRing.Current);
        }
Example #19
0
        public void ShouldCorrectlyIncrementCurrentIfCurrentIsLastAndRemovedByIndex()
        {
            var itemRing = new ItemRing <string>(items);

            itemRing.Increment();
            itemRing.Increment();

            itemRing.RemoveAt(2);

            Assert.AreEqual(items.First(), itemRing.Current);
        }
        public void TestListDisplayUpdatesWhenListUpdates()
        {
            var dateTimes = GetInitialDateTimes();
            dateTimes.Enqueue(touDate.AddMinutes(2));

            var timeControllerParts = CreateTimeControllerParts(dateTimes.Dequeue);
            var timeController = timeControllerParts.Item1;

            var itemRing = new ItemRing<string>(){"One", "Two", "Three"};
            var mainWindow = BuildMainWindow(timeController, itemRing);
            itemRing.RemoveAt(1);
            timeControllerParts.Item2[0](timeController, null);

            WpfApprovals.Verify(mainWindow);
        }
Example #21
0
        public void TestListDisplayUpdatesWhenListUpdates()
        {
            var dateTimes = GetInitialDateTimes();

            dateTimes.Enqueue(touDate.AddMinutes(2));

            var timeControllerParts = CreateTimeControllerParts(dateTimes.Dequeue);
            var timeController      = timeControllerParts.Item1;

            var itemRing = new ItemRing <string>()
            {
                "One", "Two", "Three"
            };
            var mainWindow = BuildMainWindow(timeController, itemRing);

            itemRing.RemoveAt(1);
            timeControllerParts.Item2[0](timeController, null);

            WpfApprovals.Verify(mainWindow);
        }
        public MainWindow(ITimeController timeController, Func<string, MessageBoxResult> queryUserBeforeResetTimer, Func<bool> isTopMost, ItemRing<string> itemRing)
        {
            this.queryUserBeforeResetTimer = queryUserBeforeResetTimer;
            this.isTopMost = isTopMost;
            this.timeController = timeController;

            nameRing = itemRing;
            // After all initializations
            InitializeComponent();
            sOpacitySlider.Value = 1;
            InitializeTimer();

            endTime = this.timeController.Now;

            txtMinutes.Text = timeController.DelaySpan.Minutes.ToString();
            txtSeconds.Text = timeController.DelaySpan.Seconds.ToString();

            MinimizeWindow();

            nameRing.ItemsChanged += (o, e) => UpdateUxNames();
        }
        public void ShouldCorretlyPointToCurrentItemIfItemIsRemovedBeforeByIndex()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.Increment();

            itemRing.RemoveAt(0);

            Assert.AreEqual(items[1], itemRing.Current);
        }
Example #24
0
        private static MainWindow BuildMainWindow(ITimeController timeController, ItemRing <string> itemRing)
        {
            var mainWindow = new MainWindow(timeController, IgnoreQueryUserBeforeResetTimer(), () => false, itemRing);

            return(mainWindow);
        }
        public void ShouldChangeListIfFirstItemIsMovedDown()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.MoveDown(items.First());

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
 private static MainWindow BuildMainWindow(ITimeController timeController, ItemRing<string> itemRing)
 {
     var mainWindow = new MainWindow(timeController, IgnoreQueryUserBeforeResetTimer(), () => false, itemRing);
     return mainWindow;
 }
        public void ShouldCorrectlyWrapOnOverFlowCausedByMovingUp()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.MoveUp(items.First());

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
        public void ShouldChangeListIfLastItemIsMovedUp()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.MoveUp(items.Last());

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
        public void ShouldStartOffIndicatingTopOfListAsCurrent()
        {
            var itemRing = new ItemRing<string>(items);

            Assert.AreEqual(items[0], itemRing.Current);
        }
        public void ShouldAddNewItemToEndOfList()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.Add("four");

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
Example #31
0
        public void ShouldStartOffIndicatingTopOfListAsCurrent()
        {
            var itemRing = new ItemRing <string>(items);

            Assert.AreEqual(items[0], itemRing.Current);
        }
Example #32
0
        public void ShouldStartOffIndicatingTheSecondItemIsNext()
        {
            var itemRing = new ItemRing <string>(items);

            Assert.AreEqual(items[1], itemRing.Next);
        }
Example #33
0
        public void ShouldTellWhatsInTheRing()
        {
            var itemRing = new ItemRing <string>(items);

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
        public void ShouldStartOffIndicatingTheSecondItemIsNext()
        {
            var itemRing = new ItemRing<string>(items);

            Assert.AreEqual(items[1], itemRing.Next);
        }
        public void ShouldRotateBackToFirstItemOnOverFlow()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.Increment();
            itemRing.Increment();
            itemRing.Increment();

            Assert.AreEqual(items.First(), itemRing.Current);
        }
        public void ShouldCorrectlyIncrementCurrentIfCurrentIsLastAndRemovedByIndex()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.Increment();
            itemRing.Increment();

            itemRing.RemoveAt(2);

            Assert.AreEqual(items.First(), itemRing.Current);
        }
        public void ShouldTellWhatsInTheRing()
        {
            var itemRing = new ItemRing<string>(items);

            Approvals.VerifyAll(itemRing.Items, "Items");
        }
        public void ShouldIncrementCurrentIfCurrentIsRemovedByIndex()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.RemoveAt(0);

            Assert.AreEqual(items[1], itemRing.Current);
        }
        public void ShouldIncrementCurrentIfCurrentIsRemoved()
        {
            var itemRing = new ItemRing<string>(items);
            itemRing.Remove(items.First());

            Assert.AreEqual(items[1], itemRing.Current);
        }