public GildedRoseClass(IList <Item> Items, AgedBrieService agedBrieService, BackstageService backstageService, NormalItemService normalItemService, ConjuredItemService conjuredItemService)
 {
     _items               = Items;
     _agedBrieService     = agedBrieService;
     _backstageService    = backstageService;
     _normalItemService   = normalItemService;
     _conjuredItemService = conjuredItemService;
 }
        public void TestBackStageService(int sellInShouldBe, int qualityShouldBe, int currentSellIn, int currentQuality)
        {
            //Arrange
            var  itemService      = new ItemService();
            var  backstageService = new BackstageService(itemService);
            Item item             = new Item {
                Name = "Backstage passes to a TAFKAL80ETC concert", SellIn = currentSellIn, Quality = currentQuality
            };

            //Act
            backstageService.UpdateQuality(item);
            //Assert
            item.SellIn.Should().Be(sellInShouldBe);
            item.Quality.Should().Be(qualityShouldBe);
        }
Esempio n. 3
0
        static void Main(string[] args)
        {
            //Initialize required services
            var printService        = new ConsolePrinter();
            var itemService         = new ItemService();
            var dayService          = new DayService(printService);
            var agedBrieService     = new AgedBrieService(itemService);
            var backstageService    = new BackstageService(itemService);
            var normalItemService   = new NormalItemService(itemService);
            var conjuredItemService = new ConjuredItemService(itemService);
            //Get all items
            var items = itemService.CreateItems();
            //Create app with all business logic
            var app = new GildedRoseClass(items, agedBrieService, backstageService, normalItemService, conjuredItemService);
            //Print all 30 days results
            var thirtyDaysService = new ThirtyDaysService(printService, dayService, app);

            thirtyDaysService.PrintThirtyDaysItemsResults(items);
        }
        public void TestSulfurasItem(int sellInShouldBe, int qualityShouldBe, int currentSellIn, int currentQuality)
        {
            //Arrange
            var          itemService         = new ItemService();
            var          agedBrieService     = new AgedBrieService(itemService);
            var          backstageService    = new BackstageService(itemService);
            var          normalItemService   = new NormalItemService(itemService);
            var          conjuredItemService = new ConjuredItemService(itemService);
            IList <Item> Items = new List <Item> {
                new Item {
                    Name = "Sulfuras, Hand of Ragnaros", SellIn = currentSellIn, Quality = currentQuality
                },
            };
            var app = new GildedRoseClass(Items, agedBrieService, backstageService, normalItemService, conjuredItemService);

            //Act
            app.UpdateQuality();
            //Assert
            Items[0].SellIn.Should().Be(sellInShouldBe);
            Items[0].Quality.Should().Be(qualityShouldBe);
        }