public GildedRoseClass(IList <Item> Items, AgedBrieService agedBrieService, BackstageService backstageService, NormalItemService normalItemService, ConjuredItemService conjuredItemService)
 {
     _items               = Items;
     _agedBrieService     = agedBrieService;
     _backstageService    = backstageService;
     _normalItemService   = normalItemService;
     _conjuredItemService = conjuredItemService;
 }
Exemple #2
0
 public ConjuredItemServiceUnitTest() : base()
 {
     //Arrange
     ItemService = new ConjuredItemService()
     {
         Item = new Item
         {
             Name    = Constants.CONJURED_ITEM,
             SellIn  = 10,
             Quality = 20
         }
     };
 }
        public void TestConjuredItemService(int sellInShouldBe, int qualityShouldBe, int currentSellIn, int currentQuality)
        {
            //Arrange
            var  itemService         = new ItemService();
            var  conjuredItemService = new ConjuredItemService(itemService);
            Item item = new Item()
            {
                Name = "Conjured Mana Cake", SellIn = currentSellIn, Quality = currentQuality
            };

            //Act
            conjuredItemService.UpdateQuality(item);
            //Assert
            item.SellIn.Should().Be(sellInShouldBe);
            item.Quality.Should().Be(qualityShouldBe);
        }
Exemple #4
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);
        }