Exemplo n.º 1
0
        public void SulfurasTestQuality()
        {
            var sulfurasItem = new Sulfuras();

            sulfurasItem.EndOfDayUpdate(4, 5);
            sulfurasItem.Quality.ShouldBe(5);
        }
Exemplo n.º 2
0
        private Item GetItem(string category)
        {
            Item item;

            switch (category)
            {
            case AGEDBRIE_NAME:
                item = new AgedBrie();
                break;

            case BACKSTAGEPASSES_CATEGORY:
                item = new BackstagePasses();
                break;

            case CONJURED_CATEGORY:
                item = new Conjured();
                break;

            case SULFURAS_CATEGORY:
                item = new Sulfuras();
                break;

            default:
                item = new Item();
                break;
            }
            item.Category = category;
            return(item);
        }
Exemplo n.º 3
0
        public static ItemObjects ItemObjects(Item item)
        {
            ItemObjects inheritedItem = null;

            switch (item.Name)
            {
            case "+5 Dexterity Vest":
                inheritedItem = new DexterityVest(item);
                break;

            case "Aged Brie":
                inheritedItem = new AgedBrie(item);
                break;

            case "Elixir of the Mongoose":
                inheritedItem = new ElixirOfTheMongoose(item);
                break;

            case "Sulfuras, Hand of Ragnaros":
                inheritedItem = new Sulfuras(item);
                break;

            case "Backstage passes to a TAFKAL80ETC concert":
                inheritedItem = new BackstagePasses(item);
                break;

            case "Conjured Mana Cake":
                inheritedItem = new Conjured(item);
                break;
            }
            return(inheritedItem);
        }
Exemplo n.º 4
0
    public static IList <Item> UpdateItensType(IList <Item> Items)
    {
        IList <Item> updatedItemListWithClasses = Items;

        for (var i = 0; i < Items.Count; i++)
        {
            if (Items[i].Name == "Backstage passes to a TAFKAL80ETC concert")
            {
                updatedItemListWithClasses[i] = new Backstage {
                    Name = Items[i].Name, SellIn = Items[i].SellIn, Quality = Items[i].Quality
                };
            }
            else if (Items[i].Name == "Aged Brie")
            {
                updatedItemListWithClasses[i] = new AgedBrie {
                    Name = Items[i].Name, SellIn = Items[i].SellIn, Quality = Items[i].Quality
                };;
            }
            else if (Items[i].Name == "Sulfuras, Hand of Ragnaros")
            {
                updatedItemListWithClasses[i] = new Sulfuras {
                    Name = Items[i].Name, SellIn = Items[i].SellIn, Quality = Items[i].Quality
                };;
            }
            else
            {
                updatedItemListWithClasses[i] = new Common {
                    Name = Items[i].Name, SellIn = Items[i].SellIn, Quality = Items[i].Quality
                };;
            }
        }

        return(updatedItemListWithClasses);
    }
        public void UpdateQualityTest()
        {
            var item = new Sulfuras("test", 1, 10);

            item.UpdateQuality();
            Assert.AreEqual(10, item.Quality);
        }
Exemplo n.º 6
0
        public void sulfurasSellInDoesNotDecreaseAfterADay()
        {
            Sulfuras   item = Sulfuras.Create(sellIn: 5, quality: 20);
            GildedRose app  = new GildedRose(item);

            app.UpdateItemsQualityAfterADay();

            Assert.AreEqual(5, item.SellIn);
        }
Exemplo n.º 7
0
        public void Age_WhenCalled_ShouldNotChangeSellIn(int sellIn)
        {
            // Arrange
            var item = new Sulfuras("", sellIn, 80);

            // Act
            item.Age();
            // Assert
            item.SellIn.ShouldBe(sellIn);
        }
        public void sulfurasShouldNeverDegrade()
        {
            Item sulfuras = new Sulfuras()
            {
                SellIn = 10
            };

            _rule.Apply(sulfuras);

            Assert.That(sulfuras.Quality, Is.EqualTo(80));
        }
Exemplo n.º 9
0
        public void Ctor_WhenCalled_ShouldSetUpPropertiesCorrectly(string name, int sellIn, int quality)
        {
            // Arrange, Act
            var item = new Sulfuras(name, sellIn, quality);

            // Assert
            item.Name.ShouldBe(name);
            item.SellIn.ShouldBe(sellIn);
            item.Quality.ShouldBe(quality);
            // Degradation rate does not matter
        }
        public void Initialize()
        {
            ItemManager.InitializeInventory();

            dexterityVest    = new DexterityVest("+5 Dexterity Vest", 10, 20);
            agedBri          = new AgedBrie("Aged Brie", 2, 0);
            elixirOfMongoose = new MongooseElixir("Elixir of the Mongoose", 5, 7);
            handOfRagnaros   = new Sulfuras("Sulfuras, Hand of Ragnaros", 0, 80);
            backstagePass    = new BackstagePass("Backstage passes to a TAFKAL80ETC concert", 15, 20);
            manaCake         = new ManaCake("Conjured Mana Cake", 3, 6);
        }
Exemplo n.º 11
0
        public void Sulfuras_Item_Update()
        {
            Sulfuras item = new Sulfuras()
            {
                Name    = "Sulfuras",
                Quality = 8,
                SellIn  = 8
            };

            item.Update();
            Assert.AreEqual(8, item.Quality);
            Assert.AreEqual(8, item.SellIn);
        }
Exemplo n.º 12
0
        public void SulfurasAfterDay()
        {
            Sulfuras item = new Sulfuras
            {
                SellIn  = 10,
                Quality = 10
            };

            item.AddDay();

            Assert.Equal(10, item.SellIn);
            Assert.Equal(10, item.Quality);
        }
        public void MoveForwardOneDay(int startingSellIn, int startingQuality, int resultSellIn, int resultQuality)
        {
            Sulfuras sulfuras = new Sulfuras()
            {
                SellIn = startingSellIn, Quality = startingQuality
            };

            sulfuras.MoveForwardOneDay();

            int expectedQuality = sulfuras.Quality;
            int sellin          = sulfuras.SellIn;

            Assert.That(sellin, Is.EqualTo(resultSellIn));
            Assert.That(expectedQuality, Is.EqualTo(resultQuality));
        }
        public void SingleRunOfUpdateQuantity()
        {
            ItemManager.UpdateQuality();

            dexterityVest    = new DexterityVest("+5 Dexterity Vest", 9, 19);
            agedBri          = new AgedBrie("Aged Brie", 1, 1);
            elixirOfMongoose = new MongooseElixir("Elixir of the Mongoose", 4, 6);
            handOfRagnaros   = new Sulfuras("Sulfuras, Hand of Ragnaros", 0, 80);
            backstagePass    = new BackstagePass("Backstage passes to a TAFKAL80ETC concert", 14, 21);
            manaCake         = new ManaCake("Conjured Mana Cake", 2, 5);

            Assert.AreEqual(6, ItemManager.Items.Count());
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(dexterityVest)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(agedBri)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(elixirOfMongoose)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(handOfRagnaros)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(backstagePass)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(manaCake)));
        }
        public void ThreeRunsOfUpdateQuantity()
        {
            ItemManager.InitializeInventory();
            updateQuantityNTimes(3);

            dexterityVest    = new DexterityVest("+5 Dexterity Vest", 7, 17);
            agedBri          = new AgedBrie("Aged Brie", -1, 4);
            elixirOfMongoose = new MongooseElixir("Elixir of the Mongoose", 2, 4);
            handOfRagnaros   = new Sulfuras("Sulfuras, Hand of Ragnaros", 0, 80);
            backstagePass    = new BackstagePass("Backstage passes to a TAFKAL80ETC concert", 12, 23);
            manaCake         = new ManaCake("Conjured Mana Cake", 0, 3);

            Assert.AreEqual(6, ItemManager.Items.Count());
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(dexterityVest)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(agedBri)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(elixirOfMongoose)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(handOfRagnaros)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(backstagePass)));
            Assert.IsNotNull(ItemManager.Items.FirstOrDefault(i => i.Equals(manaCake)));
        }
Exemplo n.º 16
0
        public void Sulfuras_Does_Not_Degrade()
        {
            AbstractItem item = new Sulfuras();

            item.ProcessDay();

            Assert.Equal(80, item.Quality);
            Assert.Equal(0, item.SellIn);

            item.ProcessDay();
            Assert.Equal(80, item.Quality);
            Assert.Equal(0, item.SellIn);
        }