diff --git a/Console/Program.cs b/Console/Program.cs index 56bb86061..a1ff4a4b7 100644 --- a/Console/Program.cs +++ b/Console/Program.cs @@ -86,6 +86,6 @@ public static double Divide(string x, string y) // Implement this method following a similar pattern as above public static double Power(string x, string y) { - return 0.0; + return Math.Pow(double.Parse(x),double.Parse(y)); } } diff --git a/Tests/UnitTests.cs b/Tests/UnitTests.cs index a2d3bd18e..f39ff7b04 100644 --- a/Tests/UnitTests.cs +++ b/Tests/UnitTests.cs @@ -1,3 +1,4 @@ +//vittoria namespace GithubActionsLab; [TestClass] @@ -27,3 +28,113 @@ public void Add_Null_Patino() Assert.ThrowsException(() => Program.Add(null, null)); } } +[TestClass] +public class Subtraction +{ + [TestMethod] + public void Subtract_Valid_Quaranta() + { + Assert.AreEqual(3, Program.Subtract("5", "2")); + Assert.AreEqual(5, Program.Subtract("7", "2")); + Assert.AreEqual(12, Program.Subtract("19", "7")); + } + + [TestMethod] + public void Subtract_Invalid_Quaranta() + { + Assert.ThrowsException(() => Program.Subtract("1", "a")); + Assert.ThrowsException(() => Program.Subtract("a", "1")); + Assert.ThrowsException(() => Program.Subtract("a", "a")); + } + + [TestMethod] + public void Subtract_Null_Quaranta() + { + Assert.ThrowsException(() => Program.Subtract("1", null)); + Assert.ThrowsException(() => Program.Subtract(null, "1")); + Assert.ThrowsException(() => Program.Subtract(null, null)); + } +} +[TestClass] +public class Division +{ + [TestMethod] + public void Division_Valid_Quaranta() + { + Assert.AreEqual(2, Program.Divide("2", "1")); + Assert.AreEqual(5, Program.Divide("10", "2")); + Assert.AreEqual(1, Program.Divide("5", "5")); + } + + [TestMethod] + public void Divide_Invalid_Quaranta() + { + Assert.ThrowsException(() => Program.Divide("1", "a")); + Assert.ThrowsException(() => Program.Divide("a", "1")); + Assert.ThrowsException(() => Program.Divide("a", "a")); + } + + [TestMethod] + public void Divide_Null_Quaranta() + { + Assert.ThrowsException(() => Program.Divide("1", null)); + Assert.ThrowsException(() => Program.Divide(null, "1")); + Assert.ThrowsException(() => Program.Divide(null, null)); + } +} +[TestClass] + +public class Multiplication +{ + [TestMethod] + public void Multiply_Valid_Quaranta() + { + Assert.AreEqual(2, Program.Multiply("1", "2")); + Assert.AreEqual(6, Program.Multiply("3", "2")); + Assert.AreEqual(35, Program.Multiply("5", "7")); + } + + [TestMethod] + public void Multiply_Invalid_Quaranta() + { + Assert.ThrowsException(() => Program.Multiply("1", "a")); + Assert.ThrowsException(() => Program.Multiply("a", "1")); + Assert.ThrowsException(() => Program.Multiply("a", "a")); + } + + [TestMethod] + public void Multiply_Null_Quaranta() + { + Assert.ThrowsException(() => Program.Multiply("1", null)); + Assert.ThrowsException(() => Program.Multiply(null, "1")); + Assert.ThrowsException(() => Program.Multiply(null, null)); + } +} +[TestClass] + +public class Power +{ + [TestMethod] + public void Power_Valid_Quaranta() + { + Assert.AreEqual(1, Program.Power("1", "2")); + Assert.AreEqual(9, Program.Power("3", "2")); + Assert.AreEqual(1, Program.Power("5", "0")); + } + + [TestMethod] + public void Power_Invalid_Quaranta() + { + Assert.ThrowsException(() => Program.Power("1", "a")); + Assert.ThrowsException(() => Program.Power("a", "1")); + Assert.ThrowsException(() => Program.Power("a", "a")); + } + + [TestMethod] + public void Power_Null_Quaranta() + { + Assert.ThrowsException(() => Program.Power("1", null)); + Assert.ThrowsException(() => Program.Power(null, "1")); + Assert.ThrowsException(() => Program.Power(null, null)); + } +}