public void DivideFloatTest() { var leftSequence = new float[] { 1, 2, 3, 4, 5 }; var rightSequence = new float[] { 1, 2, 3, 4, 5 }; var expected = new float[] { 1, 1, 1, 1, 1 }; var actual = LinqTool.Divide(leftSequence, rightSequence); Assert.IsTrue(expected.SequenceEqual(actual)); //------------------------------// leftSequence = new float[] { 1, 2, 3, float.NaN, float.PositiveInfinity }; rightSequence = new float[] { 1, 2, 3, 4, 5 }; expected = new float[] { 1, 1, 1, float.NaN, float.PositiveInfinity }; actual = LinqTool.Divide(leftSequence, rightSequence); Assert.IsTrue(expected.SequenceEqual(actual)); //------------------------------// leftSequence = new float[] { 1, 2, 3, float.NaN, float.PositiveInfinity }; rightSequence = new float[] { 1, 0, 3, 4, 5 }; expected = new float[] { 1, float.PositiveInfinity, 1, float.NaN, float.PositiveInfinity }; actual = LinqTool.Divide(leftSequence, rightSequence); Assert.IsTrue(expected.SequenceEqual(actual)); }
public void DivideIntTest() { var leftSequence = new int[] { 1, 2, 3, 4, 5 }; var rightSequence = new int[] { 1, 2, 3, 4, 5 }; var expected = new int[] { 1, 1, 1, 1, 1 }; var actual = LinqTool.Divide(leftSequence, rightSequence); Assert.IsTrue(expected.SequenceEqual(actual)); //------------------------------// try { leftSequence = new int[] { 1, 2, 3, 4, 5 }; rightSequence = new int[] { 1, 0, 3, 4, 5 }; expected = new int[] { 1, 1, 1, 1, 1 }; actual = LinqTool.Divide(leftSequence, rightSequence); int x = actual.Count(); Assert.Fail(); } catch (DivideByZeroException) {} catch (Exception) { Assert.Fail(); } }
public void DivideNullableDoubleTest() { var leftSequence = new double?[] { 1, 2, 3, 4, 5 }; var rightSequence = new double?[] { 1, 2, 3, 4, 5 }; var expected = new double?[] { 1, 1, 1, 1, 1 }; IEnumerable <double?> actual = LinqTool.Divide(leftSequence, rightSequence); Assert.IsTrue(expected.SequenceEqual(actual)); //------------------------------// leftSequence = new double?[] { 1, 2, 3, double.NaN, double.PositiveInfinity }; rightSequence = new double?[] { 1, 2, 3, 4, 5 }; expected = new double?[] { 1, 1, 1, double.NaN, double.PositiveInfinity }; actual = LinqTool.Divide(leftSequence, rightSequence); Assert.IsTrue(expected.SequenceEqual(actual)); //------------------------------// leftSequence = new double?[] { 1, null, 3, double.NaN, double.PositiveInfinity }; rightSequence = new double?[] { 1, 2, 3, 4, 5 }; expected = new double?[] { 1, null, 1, double.NaN, double.PositiveInfinity }; actual = LinqTool.Divide(leftSequence, rightSequence); Assert.IsTrue(expected.SequenceEqual(actual)); //------------------------------// leftSequence = new double?[] { 1, 2, 3, double.NaN, double.PositiveInfinity }; rightSequence = new double?[] { 1, 0, 3, 4, 5 }; expected = new double?[] { 1, double.PositiveInfinity, 1, double.NaN, double.PositiveInfinity }; actual = LinqTool.Divide(leftSequence, rightSequence); Assert.IsTrue(expected.SequenceEqual(actual)); }