public void Steel_Medium_Masterwork() { // Arrange var armor = new SplintMail(SizeCategory.Medium, SplintMailMaterial.Steel) { IsMasterwork = true }; // Assert Assert.IsTrue(armor.IsMasterwork); Assert.IsTrue(armor.MasterworkIsToggleable); Assert.AreEqual(6, armor.ArmorCheckPenalty()); Assert.AreEqual(350, armor.GetMarketPrice()); Assert.AreEqual("Masterwork Splint Mail", armor.ToString()); }
public void Adamantine_Small_Default() { // Arrange var armor = new SplintMail(SizeCategory.Small, SplintMailMaterial.Adamantine); // Assert Assert.IsTrue(armor.IsMasterwork); Assert.IsFalse(armor.MasterworkIsToggleable); Assert.AreEqual(7, armor.GetArmorBonus()); Assert.AreEqual(6, armor.ArmorCheckPenalty()); Assert.AreEqual(0, armor.MaximumDexterityBonus()); Assert.AreEqual(15_200, armor.GetMarketPrice()); Assert.AreEqual(22.5, armor.GetWeight()); Assert.AreEqual(0.25, armor.SpeedPenalty); Assert.AreEqual("Adamantine Splint Mail", armor.ToString()); }
public void Steel_Large() { // Arrange var armor = new SplintMail(SizeCategory.Large, SplintMailMaterial.Steel); // Assert Assert.IsFalse(armor.IsMasterwork); Assert.IsTrue(armor.MasterworkIsToggleable); Assert.AreEqual(7, armor.GetArmorBonus()); Assert.AreEqual(7, armor.ArmorCheckPenalty()); Assert.AreEqual(0, armor.MaximumDexterityBonus()); Assert.AreEqual(400, armor.GetMarketPrice()); Assert.AreEqual(90, armor.GetWeight()); Assert.AreEqual(.25, armor.SpeedPenalty); Assert.AreEqual("Splint Mail", armor.ToString()); }
public void Dragonhide_Large() { // Arrange var armor = new SplintMail(SizeCategory.Large, DragonhideColor.Red); // Assert Assert.IsTrue(armor.IsMasterwork); Assert.IsFalse(armor.MasterworkIsToggleable); Assert.AreEqual(6, armor.ArmorCheckPenalty()); Assert.AreEqual(0, armor.MaximumDexterityBonus()); Assert.AreEqual(.25, armor.SpeedPenalty); Assert.AreEqual(90, armor.GetWeight()); Assert.AreEqual(1100, armor.MundaneMarketPrice()); Assert.AreEqual(Dragonhide.Hardness, armor.Hardness.MaterialHardness); Assert.AreEqual("Red Dragonhide Splint Mail", armor.ToString()); }
public void Mithral_Medium() { // Arrange var armor = new SplintMail(SizeCategory.Medium, SplintMailMaterial.Mithral); // Assert Assert.IsTrue(armor.IsMasterwork); Assert.IsFalse(armor.MasterworkIsToggleable); Assert.AreEqual(7, armor.GetArmorBonus()); Assert.AreEqual(4, armor.ArmorCheckPenalty()); Assert.AreEqual(2, armor.MaximumDexterityBonus()); Assert.AreEqual(9_200, armor.GetMarketPrice()); Assert.AreEqual(22.5, armor.GetWeight()); Assert.AreEqual(0.25, armor.SpeedPenalty); Assert.AreEqual("Mithral Splint Mail", 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 SplintMail(SizeCategory.Medium, SplintMailMaterial.Adamantine); // Act armor.ApplyTo(mockCharacter.Object); // Assert Mock.Get(damageReductionTracker) .Verify(drt => drt.Add(It.Is <Func <byte> >(calc => 3 == calc()), It.Is <String>(bpb => "—" == bpb)), "Equipping an adamantine splint mail should bestow DR 3/— on the character wearing it."); }