Esempio n. 1
0
        public void BackstagePassTestQualityWhereSellinLess0()
        {
            var backstagePass = new BackstagePasses();

            backstagePass.EndOfDayUpdate(-1, 5);
            backstagePass.Quality.ShouldBe(0);
        }
Esempio 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);
        }
Esempio n. 3
0
        public void BackstagePassTestQualityWhereSellinBetween5and10()
        {
            var backstagePass = new BackstagePasses();

            backstagePass.EndOfDayUpdate(9, 5);
            backstagePass.Quality.ShouldBe(7);
        }
Esempio n. 4
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);
        }
Esempio n. 5
0
        public void BackstagePassTestQualityWhereSellinGreaterThan10()
        {
            var backstagePass = new BackstagePasses();

            backstagePass.EndOfDayUpdate(12, 5);
            backstagePass.Quality.ShouldBe(6);
        }
Esempio n. 6
0
        public void QualityDropsTo0AfterSellInPassed()
        {
            var backstagePass = new BackstagePasses(0, 15);

            backstagePass.Update();

            backstagePass.Quality.Should().Be(0);
            backstagePass.SellIn.Should().Be(-1);
        }
Esempio n. 7
0
        public void QualityIncreaseByOneWhenThereAreMoreThan10DaysToSellIn()
        {
            var backstagePass = new BackstagePasses(11, 0);

            backstagePass.Update();

            backstagePass.Quality.Should().Be(1);
            backstagePass.SellIn.Should().Be(10);
        }
Esempio n. 8
0
        public void QualityIncreaseByTwoWhenThereAreBetween10And6DaysToSellIn()
        {
            var backstagePass = new BackstagePasses(10, 25);

            backstagePass.Update();

            backstagePass.Quality.Should().Be(27);
            backstagePass.SellIn.Should().Be(9);
        }
Esempio n. 9
0
        public void QualityIncreaseByThreeWhenThereAreBetween5And1DaysToSellIn()
        {
            var backstagePass = new BackstagePasses(4, 0);

            backstagePass.Update();

            backstagePass.Quality.Should().Be(3);
            backstagePass.SellIn.Should().Be(3);
        }
Esempio n. 10
0
        public void UpdateQuality_OneDayToSell_QualityIncreasesByThree()
        {
            // Arrange
            Item i = new BackstagePasses("Backstage Classes", 1, 10);

            // Act
            i.UpdateQuality();

            //Assert
            Assert.Equal(13, i.Quality);
        }
Esempio n. 11
0
        public void UpdateQuality_QualityStartsAboveMax_UpdatesToMax50Limit()
        {
            // Arrange
            Item i = new BackstagePasses("Backstage Classes", 10, 55);

            // Act
            i.UpdateQuality();

            //Assert
            Assert.Equal(50, i.Quality);
        }
Esempio n. 12
0
        public void UpdateQuality_Expired_QualityDropsToZero()
        {
            // Arrange
            Item i = new BackstagePasses("Backstage Classes", -1, 10);

            // Act
            i.UpdateQuality();

            //Assert
            Assert.Equal(0, i.Quality);
        }
Esempio n. 13
0
        public void UpdateQuality_TenDaysToSell_QualityIncreasesByOne()
        {
            // Arrange
            Item i = new BackstagePasses("Backstage Classes", 10, 10);

            // Act
            i.UpdateQuality();

            //Assert
            Assert.Equal(11, i.Quality);
        }
Esempio n. 14
0
        public void UpdateQuality_FiveDaysToSell_QualityIncreasesByTwo()
        {
            // Arrange
            Item i = new BackstagePasses("Backstage Classes", 5, 10);

            // Act
            i.UpdateQuality();

            //Assert
            Assert.Equal(12, i.Quality);
        }
        public void BackstagePassesAfterDayAfterSellIn()
        {
            BackstagePasses item = new BackstagePasses
            {
                SellIn  = 0,
                Quality = 10
            };

            item.AddDay();

            Assert.Equal(-1, item.SellIn);
            Assert.Equal(0, item.Quality);
        }
        public void BackstagePassesAfterDayLessThanSixDaysAway()
        {
            BackstagePasses item = new BackstagePasses
            {
                SellIn  = 5,
                Quality = 10
            };

            item.AddDay();

            Assert.Equal(4, item.SellIn);
            Assert.Equal(13, item.Quality);
        }
        public void BackstagePassesAfterDayOverFiveDaysAway()
        {
            BackstagePasses item = new BackstagePasses
            {
                SellIn  = 7,
                Quality = 10
            };

            item.AddDay();

            Assert.Equal(6, item.SellIn);
            Assert.Equal(12, item.Quality);
        }