//****************************************************************************************************** // SpeedTest.cs - Gbtc // // Copyright © 2012, Grid Protection Alliance. All Rights Reserved. // // Licensed to the Grid Protection Alliance (GPA) under one or more contributor license agreements. See // the NOTICE file distributed with this work for additional information regarding copyright ownership. // The GPA licenses this file to you under the MIT License (MIT), the "License"; you may // not use this file except in compliance with the License. You may obtain a copy of the License at: // // http://www.opensource.org/licenses/MIT // // Unless agreed to in writing, the subject software distributed under the License is distributed on an // "AS-IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. Refer to the // License for the specific language governing permissions and limitations. // // Code Modification History: // ---------------------------------------------------------------------------------------------------- // 02/01/2011 - Denis Kholine // 12/13/2012 - Starlynn Danyelle Gilliam // Modified Header. // //****************************************************************************************************** #region [ University of Illinois/NCSA Open Source License ] /* Copyright © <2012> All rights reserved. Developed by: Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal with the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimers. • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimers in the documentation and/or other materials provided with the distribution. • Neither the names of , nor the names of its contributors may be used to endorse or promote products derived from this Software without specific prior written permission. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE SOFTWARE. */ #endregion using System; using System.Collections.Generic; using System.Globalization; using GSF.Units; using Microsoft.VisualStudio.TestTools.UnitTesting; namespace GSF.Core.Tests { /// ///This is a test class for SpeedTest and is intended ///to contain all SpeedTest Unit Tests /// [TestClass] public class SpeedTest { private TestContext testContextInstance; /// ///Gets or sets the test context which provides ///information about and functionality for the current test run. /// public TestContext TestContext { get { return testContextInstance; } set { testContextInstance = value; } } #region Additional test attributes // //You can use the following additional attributes as you write your tests: // //Use ClassInitialize to run code before running the first test in the class //[ClassInitialize()] //public static void MyClassInitialize(TestContext testContext) //{ //} // //Use ClassCleanup to run code after all tests in a class have run //[ClassCleanup()] //public static void MyClassCleanup() //{ //} // //Use TestInitialize to run code before running each test //[TestInitialize()] //public void MyTestInitialize() //{ //} // //Use TestCleanup to run code after each test has run //[TestCleanup()] //public void MyTestCleanup() //{ //} // #endregion /// /// A test for Speed Constructor /// Creates a new . /// /// New speed value in meters per second. [TestMethod] public void SpeedConstructorTest() { List values = new List(); //Initialization values.Add(0); foreach (Double value in values) { Speed target = new Speed(value); Assert.IsInstanceOfType(target, typeof(Speed)); Assert.IsNotNull(target); } values.Clear(); } /// /// A test for CompareTo /// Compares this instance to a specified and returns an indication of their /// relative values. /// /// A to compare. /// /// A signed number indicating the relative values of this instance and value. Returns less than zero /// if this instance is less than value, zero if this instance is equal to value, or greater than zero /// if this instance is greater than value. /// [TestMethod] public void CompareToSpeenTest() { Speed target = new Speed(10F); Speed value = new Speed(10F); int expected = 0; int actual; actual = target.CompareTo(value); Assert.AreEqual(expected, actual); } /// /// A test for CompareTo /// Compares this instance to a specified object and returns an indication of their relative values. /// /// An object to compare, or null. /// /// A signed number indicating the relative values of this instance and value. Returns less than zero /// if this instance is less than value, zero if this instance is equal to value, or greater than zero /// if this instance is greater than value. /// /// value is not a or . [TestMethod] public void CompareToObjectTest() { Speed target = new Speed(10F); object value = new Speed(10F); int expected = 0; int actual; actual = target.CompareTo(value); Assert.AreEqual(expected, actual); } /// /// A test for CompareTo /// Compares this instance to a specified and returns an indication of their /// relative values. /// /// A to compare. /// /// A signed number indicating the relative values of this instance and value. Returns less than zero /// if this instance is less than value, zero if this instance is equal to value, or greater than zero /// if this instance is greater than value. /// [TestMethod] public void CompareToDoubleTest() { Speed target = new Speed(10F); double value = 10F; int expected = 0; int actual; actual = target.CompareTo(value); Assert.AreEqual(expected, actual); } /// /// A test for Equals /// Returns a value indicating whether this instance is equal to a specified value. /// /// A value to compare to this instance. /// /// True if obj has the same value as this instance; otherwise, False. /// [TestMethod] public void EqualsDoubleTest() { Speed target = new Speed(10F); double obj = 10F; bool expected = true; bool actual; actual = target.Equals(obj); Assert.AreEqual(expected, actual); } /// /// A test for Equals /// Returns a value indicating whether this instance is equal to a specified object. /// /// An object to compare, or null. /// /// True if obj is an instance of or and equals the value of this instance; /// otherwise, False. /// [TestMethod] public void EqualsObjectTest() { Speed target = new Speed(10F); object obj = new Speed(10F); bool expected = true; bool actual; actual = target.Equals(obj); Assert.AreEqual(expected, actual); } /// /// A test for Equals /// Returns a value indicating whether this instance is equal to a specified value. /// /// A value to compare to this instance. /// /// True if obj has the same value as this instance; otherwise, False. /// [TestMethod] public void EqualsSpeedTest() { Speed target = new Speed(10F); Speed obj = new Speed(10F); bool expected = true; bool actual; actual = target.Equals(obj); Assert.AreEqual(expected, actual); } ///// ///// A test for FromFeetPerMinute ///// Creates a new value from the specified in feet per minute. ///// ///// New value in feet per minute. ///// New object from the specified in feet per minute. //[TestMethod] //public void FromFeetPerMinuteTest() //{ // double value = 10F; // Speed expected = new Speed(0.0508); // Speed actual; // actual = Speed.FromFeetPerMinute(value); // Assert.AreEqual(expected, actual); //} /// /// A test for FromInchesPerSecond /// Creates a new value from the specified in inches per second. /// /// New value in inches per second. /// New object from the specified in inches per second. [TestMethod] public void FromInchesPerSecondTest() { double value = 10F; Speed expected = new Speed(0.254); Speed actual; actual = Speed.FromInchesPerSecond(value); Assert.AreEqual(expected, actual); } /// /// A test for FromKilometersPerHour /// Creates a new value from the specified in kilometers per hour. /// /// New value in kilometers per hour. /// New object from the specified in kilometers per hour. [TestMethod] public void FromKilometersPerHourTest() { double value = 10F; Speed expected = new Speed(2.777778); Speed actual; actual = Speed.FromKilometersPerHour(value); Assert.AreEqual(expected, actual); } /// /// A test for FromKnots /// Creates a new value from the specified in knots (International). /// /// New value in knots. /// New object from the specified in knots. [TestMethod] public void FromKnotsTest() { double value = 10F; Speed expected = new Speed(5.14444); Speed actual; actual = Speed.FromKnots(value); Assert.AreEqual(expected, actual); } ///// ///// A test for FromMach ///// Creates a new value from the specified in mach. ///// ///// New value in mach. ///// New object from the specified in mach. //[TestMethod] //public void FromMachTest() //{ // double value = 10F; // Speed expected = new Speed(3310); // Speed actual; // actual = Speed.FromMach(value); // Assert.AreEqual(expected, actual); //} /// /// A test for FromMilesPerHour /// Creates a new value from the specified in miles per hour. /// /// New value in miles per hour. /// New object from the specified in miles per hour. [TestMethod] public void FromMilesPerHourTest() { double value = 10F; Speed expected = new Speed(4.4704); Speed actual; actual = Speed.FromMilesPerHour(value); Assert.AreEqual(expected, actual); } /// /// A test for GetHashCode /// Returns the hash code for this instance. /// /// /// A 32-bit signed integer hash code. /// [TestMethod] public void GetHashCodeTest() { Speed target = new Speed(10F); int expected = 1076101120; int actual; actual = target.GetHashCode(); Assert.AreEqual(expected, actual); } /// /// A test for GetTypeCode /// Returns the for value type . /// /// The enumerated constant, . [TestMethod] public void GetTypeCodeTest() { Speed target = new Speed(10F); TypeCode expected = new TypeCode(); expected = Type.GetTypeCode(typeof(Double)); TypeCode actual; actual = target.GetTypeCode(); Assert.AreEqual(expected, actual); } /// /// A test for Parse /// Converts the string representation of a number in a specified style to its equivalent. /// /// A string containing a number to convert. /// /// A bitwise combination of System.Globalization.NumberStyles values that indicates the permitted format of s. /// /// /// A equivalent to the number contained in s. /// /// /// style is not a System.Globalization.NumberStyles value. -or- style is not a combination of /// System.Globalization.NumberStyles.AllowHexSpecifier and System.Globalization.NumberStyles.HexNumber values. /// /// s is null. /// /// s represents a number less than or greater than . /// /// s is not in a format compliant with style. [TestMethod] public void ParseStyleTest() { double value = 10F; string s = value.ToString(); NumberStyles style = new NumberStyles(); Speed expected = new Speed(value); Speed actual; actual = Speed.Parse(s, style); Assert.AreEqual(expected, actual); } /// /// A test for Parse /// Converts the string representation of a number in a specified style and culture-specific format to its equivalent. /// /// A string containing a number to convert. /// /// A bitwise combination of System.Globalization.NumberStyles values that indicates the permitted format of s. /// /// /// A that supplies culture-specific formatting information about s. /// /// /// A equivalent to the number contained in s. /// /// /// style is not a System.Globalization.NumberStyles value. -or- style is not a combination of /// System.Globalization.NumberStyles.AllowHexSpecifier and System.Globalization.NumberStyles.HexNumber values. /// /// s is null. /// /// s represents a number less than or greater than . /// /// s is not in a format compliant with style. [TestMethod] public void ParseStyleProviderTest() { double value = 10F; string s = value.ToString(); NumberStyles style = new NumberStyles(); IFormatProvider provider = null; Speed expected = new Speed(value); Speed actual; actual = Speed.Parse(s, style, provider); Assert.AreEqual(expected, actual); } /// /// A test for Parse /// Converts the string representation of a number in a specified culture-specific format to its equivalent. /// /// A string containing a number to convert. /// /// A that supplies culture-specific formatting information about s. /// /// /// A equivalent to the number contained in s. /// /// s is null. /// /// s represents a number less than or greater than . /// /// s is not in the correct format. [TestMethod] public void ParseProviderTest() { double value = 10F; string s = value.ToString(); IFormatProvider provider = null; Speed expected = new Speed(value); Speed actual; actual = Speed.Parse(s, provider); Assert.AreEqual(expected, actual); } /// /// A test for Parse /// Converts the string representation of a number to its equivalent. /// /// A string containing a number to convert. /// /// A equivalent to the number contained in s. /// /// s is null. /// /// s represents a number less than or greater than . /// /// s is not in the correct format. [TestMethod] public void ParseStringTest() { double value = 10F; string s = value.ToString(); Speed expected = new Speed(10F); Speed actual; actual = Speed.Parse(s); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToBoolean /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToBooleanTest() { IConvertible target = new Speed(10F); IFormatProvider provider = null; bool expected = true; bool actual; actual = target.ToBoolean(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToByte /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToByteTest() { IConvertible target = new Speed(10F); IFormatProvider provider = null; byte expected = 10; byte actual; actual = target.ToByte(provider); Assert.AreEqual(expected, actual); } ///// /////A test for System.IConvertible.ToChar ///// //[TestMethod] //[DeploymentItem("GSF.Core.dll")] //public void ToCharTest() //{ // Assert.Inconclusive("Can't cast 'Double' to 'Char'."); //} ///// /////A test for System.IConvertible.ToDateTime ///// //[TestMethod] //[DeploymentItem("GSF.Core.dll")] //public void ToDateTimeTest() //{ // Assert.Inconclusive("Can't cast 'Double' to 'DateTime'."); //} /// ///A test for System.IConvertible.ToDecimal /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToDecimalTest() { IConvertible target = new Speed(10F); IFormatProvider provider = null; Decimal expected = new Decimal(10F); Decimal actual; actual = target.ToDecimal(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToDouble /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToDoubleTest() { IConvertible target = new Speed(10F); IFormatProvider provider = null; double expected = 10F; double actual; actual = target.ToDouble(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToInt16 /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToInt16Test() { IConvertible target = new Speed(10F); IFormatProvider provider = null; short expected = 10; short actual; actual = target.ToInt16(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToInt32 /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToInt32Test() { IConvertible target = new Speed(10F); IFormatProvider provider = null; int expected = 10; int actual; actual = target.ToInt32(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToInt64 /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToInt64Test() { IConvertible target = new Speed(10F); IFormatProvider provider = null; long expected = 10; long actual; actual = target.ToInt64(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToSByte /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToSByteTest() { IConvertible target = new Speed(10F); IFormatProvider provider = null; sbyte expected = 10; sbyte actual; actual = target.ToSByte(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToSingle /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToSingleTest() { IConvertible target = new Speed(10F); IFormatProvider provider = null; float expected = 10F; float actual; actual = target.ToSingle(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToType /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToTypeTest() { IConvertible target = new Speed(10F); Type conversionType = typeof(Double); IFormatProvider provider = null; object expected = new Speed(10F); object actual; actual = target.ToType(conversionType, provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToUInt16 /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToUInt16Test() { IConvertible target = new Speed(10F); IFormatProvider provider = null; ushort expected = 10; ushort actual; actual = target.ToUInt16(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToUInt32 /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToUInt32Test() { IConvertible target = new Speed(10F); IFormatProvider provider = null; uint expected = 10; uint actual; actual = target.ToUInt32(provider); Assert.AreEqual(expected, actual); } /// ///A test for System.IConvertible.ToUInt64 /// [TestMethod] [DeploymentItem("GSF.Core.dll")] public void ToUInt64Test() { IConvertible target = new Speed(10F); IFormatProvider provider = null; ulong expected = 10; ulong actual; actual = target.ToUInt64(provider); Assert.AreEqual(expected, actual); } /// /// A test for ToFeetPerMinute /// Gets the value in feet per minute. /// /// Value of in feet per minute. [TestMethod] public void ToFeetPerMinuteTest() { Speed target = new Speed(10F); double expected = 1968.5039370078739; double actual; actual = target.ToFeetPerMinute(); Assert.AreEqual(expected, actual); } /// /// A test for ToInchesPerSecond /// Gets the value in inches per second. /// /// Value of in inches per second. [TestMethod] public void ToInchesPerSecondTest() { Speed target = new Speed(10F); double expected = 393.70078740157481; double actual; actual = target.ToInchesPerSecond(); Assert.AreEqual(expected, actual); } /// /// A test for ToKilometersPerHour /// Gets the value in kilometers per hour. /// /// Value of in kilometers per hour. [TestMethod] public void ToKilometersPerHourTest() { Speed target = new Speed(10F); double expected = 35.999997120000231; double actual; actual = target.ToKilometersPerHour(); Assert.AreEqual(expected, actual); } /// /// A test for ToKnots /// Gets the value in knots (International). /// /// Value of in knots. [TestMethod] public void ToKnotsTest() { Speed target = new Speed(10F); double expected = 19.438461717893492; double actual; actual = target.ToKnots(); Assert.AreEqual(expected, actual); } ///// ///// A test for ToMach ///// Gets the value in mach. ///// ///// Value of in mach. //[TestMethod] //public void ToMachTest() //{ // Speed target = new Speed(10F); // double expected = 0.030211480362537766; // double actual; // actual = target.ToMach(); // Assert.AreEqual(expected, actual); //} /// /// A test for ToMilesPerHour /// Gets the value in miles per hour. /// /// Value of in miles per hour. [TestMethod] public void ToMilesPerHourTest() { Speed target = new Speed(10F); double expected = 22.369362920544024; double actual; actual = target.ToMilesPerHour(); Assert.AreEqual(expected, actual); } /// /// A test for ToString /// Converts the numeric value of this instance to its equivalent string representation using the /// specified culture-specific format information. /// /// /// A that supplies culture-specific formatting information. /// /// /// The string representation of the value of this instance as specified by provider. /// [TestMethod] public void ToStringProviderTest() { double value = 10F; Speed target = new Speed(value); IFormatProvider provider = null; string expected = value.ToString(); string actual; actual = target.ToString(provider); Assert.AreEqual(expected, actual); } /// /// A test for ToString /// Converts the numeric value of this instance to its equivalent string representation using the /// specified format and culture-specific format information. /// /// A format specification. /// /// A that supplies culture-specific formatting information. /// /// /// The string representation of the value of this instance as specified by format and provider. /// [TestMethod] public void ToStringFormatProviderTest() { double value = 10F; Speed target = new Speed(value); string format = string.Empty; IFormatProvider provider = null; string expected = value.ToString(); string actual; actual = target.ToString(format, provider); Assert.AreEqual(expected, actual); } /// /// A test for ToString /// Converts the numeric value of this instance to its equivalent string representation, using /// the specified format. /// /// A format string. /// /// The string representation of the value of this instance as specified by format. /// [TestMethod] public void ToStringFormatTest() { double value = 10F; Speed target = new Speed(value); string format = string.Empty; string expected = value.ToString(); string actual; actual = target.ToString(format); Assert.AreEqual(expected, actual); } /// /// A test for ToString /// Converts the numeric value of this instance to its equivalent string representation. /// /// /// The string representation of the value of this instance, consisting of a minus sign if /// the value is negative, and a sequence of digits ranging from 0 to 9 with no leading zeroes. /// [TestMethod] public void ToStringTest() { double value = 10F; Speed target = new Speed(value); string expected = value.ToString(); string actual; actual = target.ToString(); Assert.AreEqual(expected, actual); } /// /// A test for TryParse /// Converts the string representation of a number in a specified style and culture-specific format to its /// equivalent. A return value indicates whether the conversion succeeded or failed. /// /// A string containing a number to convert. /// /// A bitwise combination of System.Globalization.NumberStyles values that indicates the permitted format of s. /// /// /// When this method returns, contains the value equivalent to the number contained in s, /// if the conversion succeeded, or zero if the conversion failed. The conversion fails if the s parameter per second is null, /// is not in a format compliant with style, or represents a number less than or /// greater than . This parameter per second is passed uninitialized. /// /// /// A object that supplies culture-specific formatting information about s. /// /// true if s was converted successfully; otherwise, false. /// /// style is not a System.Globalization.NumberStyles value. -or- style is not a combination of /// System.Globalization.NumberStyles.AllowHexSpecifier and System.Globalization.NumberStyles.HexNumber values. /// [TestMethod] public void TryParseStyleProviderResultTest() { double value = 10F; string s = value.ToString(); NumberStyles style = new NumberStyles(); IFormatProvider provider = null; Speed result = new Speed(value); Speed resultExpected = new Speed(value); bool expected = true; bool actual; actual = Speed.TryParse(s, style, provider, out result); Assert.AreEqual(resultExpected, result); Assert.AreEqual(expected, actual); } /// /// A test for TryParse /// Converts the string representation of a number to its equivalent. A return value /// indicates whether the conversion succeeded or failed. /// /// A string containing a number to convert. /// /// When this method returns, contains the value equivalent to the number contained in s, /// if the conversion succeeded, or zero if the conversion failed. The conversion fails if the s parameter per second is null, /// is not of the correct format, or represents a number less than or greater than . /// This parameter per second is passed uninitialized. /// /// true if s was converted successfully; otherwise, false. [TestMethod] public void TryParseResultTest() { double value = 10F; string s = value.ToString(); Speed result = new Speed(value); Speed resultExpected = new Speed(value); bool expected = true; bool actual; actual = Speed.TryParse(s, out result); Assert.AreEqual(resultExpected, result); Assert.AreEqual(expected, actual); } /// ///A test for op_Addition /// [TestMethod] public void op_AdditionTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(10F); Speed expected = new Speed(20F); Speed actual; actual = (value1 + value2); Assert.AreEqual(expected, actual); } /// ///A test for op_Division /// [TestMethod] public void op_DivisionTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(10F); Speed expected = new Speed(1F); Speed actual; actual = (value1 / value2); Assert.AreEqual(expected, actual); } /// ///A test for op_Equality /// [TestMethod] public void op_EqualityTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(10F); bool expected = true; bool actual; actual = (value1 == value2); Assert.AreEqual(expected, actual); } /// ///A test for op_Exponent /// [TestMethod] public void op_ExponentTest() { Speed value1 = new Speed(2F); Speed value2 = new Speed(3F); double expected = 8F; double actual; actual = Speed.op_Exponent(value1, value2); Assert.AreEqual(expected, actual); } /// ///A test for op_GreaterThan /// [TestMethod] public void op_GreaterThanTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(9F); bool expected = true; bool actual; actual = (value1 > value2); Assert.AreEqual(expected, actual); } /// ///A test for op_GreaterThanOrEqual /// [TestMethod] public void op_GreaterThanOrEqualTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(10F); bool expected = true; bool actual; actual = (value1 >= value2); Assert.AreEqual(expected, actual); } /// ///A test for op_Implicit /// [TestMethod] public void op_ImplicitSpeedTest() { double value = 10F; Speed expected = new Speed(10F); Speed actual; actual = value; Assert.AreEqual(expected, actual); } /// ///A test for op_Implicit /// [TestMethod] public void op_ImplicitDoubleTest() { Speed value = new Speed(10F); double expected = 10F; double actual; actual = value; Assert.AreEqual(expected, actual); } /// ///A test for op_Inequality /// [TestMethod] public void op_InequalityTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(9F); bool expected = true; bool actual; actual = (value1 != value2); Assert.AreEqual(expected, actual); } /// ///A test for op_LessThan /// [TestMethod] public void op_LessThanTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(11F); bool expected = true; bool actual; actual = (value1 < value2); Assert.AreEqual(expected, actual); } /// ///A test for op_LessThanOrEqual /// [TestMethod] public void op_LessThanOrEqualTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(10F); bool expected = true; bool actual; actual = (value1 <= value2); Assert.AreEqual(expected, actual); } /// ///A test for op_Modulus /// [TestMethod] public void op_ModulusTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(10F); Speed expected = new Speed(0F); Speed actual; actual = (value1 % value2); Assert.AreEqual(expected, actual); } /// ///A test for op_Multiply /// [TestMethod] public void op_MultiplyTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(10F); Speed expected = new Speed(100F); Speed actual; actual = (value1 * value2); Assert.AreEqual(expected, actual); } /// ///A test for op_Subtraction /// [TestMethod] public void op_SubtractionTest() { Speed value1 = new Speed(10F); Speed value2 = new Speed(10F); Speed expected = new Speed(0F); Speed actual; actual = (value1 - value2); Assert.AreEqual(expected, actual); } } }