public void QualityIncreasesBeforeEvent(int quality, int sellIn) { int expectedQuality = quality + TheGetMaturedQualityMethod.QUALITY_MATURES_BY; var updatedQuality = InventoryManagementRules.GetEventQuality(quality, sellIn); Assert.Equal(expectedQuality, updatedQuality); }
public void ReturnsZeroWhenSellInPassed(int quality, int sellIn) { const int SELLIN_PASSED_QUALITY = 0; int expectedQuality = SELLIN_PASSED_QUALITY; int updatedQuality = InventoryManagementRules.GetEventQuality(quality, sellIn); Assert.Equal(expectedQuality, updatedQuality); }
public void QualityIncreasesMostWhenEventImminent(int quality, int sellIn) { const int EVENT_IMMINENT_QUALITY_INCREASE = 3; int expectedQuality = quality + EVENT_IMMINENT_QUALITY_INCREASE; int updatedQuality = InventoryManagementRules.GetEventQuality(quality, sellIn); Assert.Equal(expectedQuality, updatedQuality); }
public void QualityIncreasesMoreWhenEventClose(int quality, int sellIn) { const int EVENT_CLOSE_QUALITY_INCREASE = 2; int expectedQuality = quality + EVENT_CLOSE_QUALITY_INCREASE; int updatedQuality = InventoryManagementRules.GetEventQuality(quality, sellIn); Assert.Equal(expectedQuality, updatedQuality); }
public void AppliesEventRule(int sellIn, int quality) { // We vigorously check the rule conditions in InventoryManagementRules - so here the goal is to make sure it's applied to the ruleset var backstagePass = new FinestGood(BACKSTAGE_PASSES_ITEM_NAME, sellIn, quality); int expectedQuality = InventoryManagementRules.GetEventQuality(quality, sellIn); new BackstagePassesItemUpdaterRuleset().ApplyUpdates(backstagePass); Assert.Equal(expectedQuality, backstagePass.Quality); }