public void Steel_Medium_Masterwork() { // Arrange var armor = new ChainShirt(SizeCategory.Medium, ChainShirtMaterial.Steel) { IsMasterwork = true }; // Assert Assert.IsTrue(armor.IsMasterwork); Assert.IsTrue(armor.MasterworkIsToggleable); Assert.AreEqual(1, armor.ArmorCheckPenalty()); Assert.AreEqual(250, armor.GetMarketPrice()); Assert.AreEqual("Masterwork Chain Shirt", armor.ToString()); }
public void Adamantine_Small_Default() { // Arrange var armor = new ChainShirt(SizeCategory.Small, ChainShirtMaterial.Adamantine); // Assert Assert.IsTrue(armor.IsMasterwork); Assert.IsFalse(armor.MasterworkIsToggleable); Assert.AreEqual(4, armor.GetArmorBonus()); Assert.AreEqual(1, armor.ArmorCheckPenalty()); Assert.AreEqual(4, armor.MaximumDexterityBonus()); Assert.AreEqual(5100, armor.GetMarketPrice()); Assert.AreEqual(12.5, armor.GetWeight()); Assert.AreEqual(0, armor.SpeedPenalty); Assert.AreEqual("Adamantine Chain Shirt", armor.ToString()); }
public void Mithral_Medium() { // Arrange var armor = new ChainShirt(SizeCategory.Medium, ChainShirtMaterial.Mithral); // Assert Assert.IsTrue(armor.IsMasterwork); Assert.IsFalse(armor.MasterworkIsToggleable); Assert.AreEqual(4, armor.GetArmorBonus()); Assert.AreEqual(0, armor.ArmorCheckPenalty()); Assert.AreEqual(6, armor.MaximumDexterityBonus()); Assert.AreEqual(1100, armor.GetMarketPrice()); Assert.AreEqual(12.5, armor.GetWeight()); Assert.AreEqual(0, armor.SpeedPenalty); Assert.AreEqual("Mithral Chain Shirt", armor.ToString()); }
public void Steel_Large() { // Arrange var armor = new ChainShirt(SizeCategory.Large, ChainShirtMaterial.Steel); // Assert Assert.IsFalse(armor.IsMasterwork); Assert.IsTrue(armor.MasterworkIsToggleable); Assert.AreEqual(4, armor.GetArmorBonus()); Assert.AreEqual(2, armor.ArmorCheckPenalty()); Assert.AreEqual(4, armor.MaximumDexterityBonus()); Assert.AreEqual(200, armor.GetMarketPrice()); Assert.AreEqual(50, armor.GetWeight()); Assert.AreEqual(0, armor.SpeedPenalty); Assert.AreEqual("Chain Shirt", armor.ToString()); }
public void Adamantine_ApplyTo_DamageReduction() { // Arrange var damageReductionTracker = Mock.Of <IDamageReductionTracker>(); var mockCharacter = new Mock <ICharacter>(); mockCharacter.Setup(c => c.DamageReduction) .Returns(damageReductionTracker); var armor = new ChainShirt(SizeCategory.Medium, ChainShirtMaterial.Adamantine); // Act armor.ApplyTo(mockCharacter.Object); // Assert Mock.Get(damageReductionTracker) .Verify(drt => drt.Add(It.Is <Func <byte> >(calc => 1 == calc()), It.Is <String>(bpb => "—" == bpb)), "Equipping an adamantine chain shirt should bestow DR 1/— on the character wearing it."); }