public void Given_2_Aggregators_GetLatest_Called_Once_For_Each_Aggregator()
        {
            var fakeAggregator1 = new Mock<IItemAggregator>(MockBehavior.Loose);
            var fakeAggregator2 = new Mock<IItemAggregator>(MockBehavior.Loose);

            var streamAggregator = new StreamAggregator(fakeAggregator1.Object, fakeAggregator2.Object);

            var items = streamAggregator.GetLatest(DateTime.MinValue);

            fakeAggregator1.Verify(a => a.GetLatest(DateTime.MinValue), Times.Once());
            fakeAggregator2.Verify(a => a.GetLatest(DateTime.MinValue), Times.Once());
        }
Example #2
0
        public void Given_2_Aggregators_GetLatest_Called_Once_For_Each_Aggregator()
        {
            var fakeAggregator1 = new Mock <IItemAggregator>(MockBehavior.Loose);
            var fakeAggregator2 = new Mock <IItemAggregator>(MockBehavior.Loose);

            var streamAggregator = new StreamAggregator(fakeAggregator1.Object, fakeAggregator2.Object);

            var items = streamAggregator.GetLatest(DateTime.MinValue);

            fakeAggregator1.Verify(a => a.GetLatest(DateTime.MinValue), Times.Once());
            fakeAggregator2.Verify(a => a.GetLatest(DateTime.MinValue), Times.Once());
        }
        public void Given_2_Aggregators_GetLatest_Returns_2_Sorted_Items_Ascending_By_Date()
        {
            var yesterday = DateTime.UtcNow.AddDays(-1);
            var beforeYesterday = DateTime.UtcNow.AddDays(-2);

            var fakeAggregator1 = new Mock<IItemAggregator>();
            fakeAggregator1.Setup(a => a.GetLatest(It.IsAny<DateTime>())).Returns(this.BuildItems(yesterday));
            var fakeAggregator2 = new Mock<IItemAggregator>();
            fakeAggregator2.Setup(a => a.GetLatest(It.IsAny<DateTime>())).Returns(this.BuildItems(beforeYesterday));

            var streamAggregator = new StreamAggregator(fakeAggregator1.Object, fakeAggregator2.Object);

            var items = streamAggregator.GetLatest(DateTime.MinValue).ToList();

            Assert.AreEqual(items.Count, 2);
            Assert.AreEqual(items[0].Published, beforeYesterday);
            Assert.AreEqual(items[1].Published, yesterday);
        }
Example #4
0
        public void Given_2_Aggregators_GetLatest_Returns_2_Sorted_Items_Ascending_By_Date()
        {
            var yesterday       = DateTime.UtcNow.AddDays(-1);
            var beforeYesterday = DateTime.UtcNow.AddDays(-2);

            var fakeAggregator1 = new Mock <IItemAggregator>();

            fakeAggregator1.Setup(a => a.GetLatest(It.IsAny <DateTime>())).Returns(this.BuildItems(yesterday));
            var fakeAggregator2 = new Mock <IItemAggregator>();

            fakeAggregator2.Setup(a => a.GetLatest(It.IsAny <DateTime>())).Returns(this.BuildItems(beforeYesterday));

            var streamAggregator = new StreamAggregator(fakeAggregator1.Object, fakeAggregator2.Object);

            var items = streamAggregator.GetLatest(DateTime.MinValue).ToList();

            Assert.AreEqual(items.Count, 2);
            Assert.AreEqual(items[0].Published, beforeYesterday);
            Assert.AreEqual(items[1].Published, yesterday);
        }