Esempio n. 1
0
        public void GildedTinCanCanGenerateCorrectDepreciation()
        {
            var twoYearsAgo             = DateTime.Now.AddYears(-2);
            var expiredBeforeThisReport = new TinnedFood(twoYearsAgo)
            {
                Name = "A", Price = 10
            };

            var oneYearAgo = DateTime.Now.AddYears(-1).AddTicks(-1);
            var expiredDuringThisReport = new TinnedFood(oneYearAgo)
            {
                Name = "A", Price = 15
            };

            var yesterday  = DateTime.Now.AddDays(-1);
            var notExpired = new TinnedFood(yesterday)
            {
                Name = "A", Price = 20
            };

            var stockItems = new List <TinnedFood>
            {
                expiredBeforeThisReport,
                expiredDuringThisReport,
                notExpired
            };

            var financialReport = GildedStockManagerFactory
                                  .GildedTinCan()
                                  .WithStock(stockItems)
                                  .FinancialReportAsAt(DateTime.Now);

            financialReport.ValueOfStock.Should().Be(20M);
            financialReport.Depreciation.Should().Be(15M);
        }
Esempio n. 2
0
        public void Tinned_food_will_not_have_quality_change()
        {
            var tinnedFood = new TinnedFood(10, 20);

            tinnedFood.UpdateItem();

            Assert.Equal(tinnedFood.Quality, 20);
        }
Esempio n. 3
0
        public void Tinned_food_does_not_reduce_sell_in()
        {
            var tinnedFood = new TinnedFood(10, 20);

            tinnedFood.UpdateItem();

            Assert.Equal(tinnedFood.SellIn, 10);
        }