using SharedObjects.Misc;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Windows.Forms;
using SharedObjects.Api;
namespace CanAppTester
{
///
///This is a test class for UtilsTest and is intended
///to contain all UtilsTest Unit Tests
///
[TestClass()]
public class UtilsTest
{
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 Clone
///
public static void CloneTestHelper(T source)
{
T actual;
actual = Utils.Clone(source);
Assert.AreEqual(source, actual);
}
[TestMethod()]
public void CloneTest()
{
XmlClass.preference obj = new XmlClass.preference();
obj.name = "Test";
CloneTestHelper(obj);
}
///
///A test for addText
///
[TestMethod()]
public void addTextTest()
{
IPassThruMsg rxmsg1 = DeviceApi.PassThruMsg.getMaskedMsg(SharedObjects.Protocol.Protocols.ISO15765);
IPassThruMsg rxmsg1Expected = DeviceApi.PassThruMsg.getMaskedMsg(SharedObjects.Protocol.Protocols.ISO15765);
rxmsg1Expected.Data[0] = (byte)'A';
rxmsg1Expected.Data[1] = (byte)'B';
rxmsg1Expected.Data[2] = (byte)'C';
for (int i0 = 3; i0 < 16; i0++)
{
rxmsg1Expected.Data[i0] = (byte)' ';
}
int n = 0;
int nExpected = 16;
int i = 0;
int iExpected = 16;
string text = "ABC";
Utils.addText(ref rxmsg1, ref n, ref i, text);
Assert.AreEqual(rxmsg1Expected.GetHashCode(), rxmsg1.GetHashCode());
Assert.AreEqual(rxmsg1Expected, rxmsg1);
Assert.AreEqual(nExpected, n);
Assert.AreEqual(iExpected, i);
}
///
///A test for addrlist_sorter
///
[TestMethod()]
public void addrlist_sorterTest()
{
XmlClass.vehicle.addrlist gr1 = new XmlClass.vehicle.addrlist();
XmlClass.vehicle.addrlist gr2 = new XmlClass.vehicle.addrlist();
XmlClass.vehicle.addrlist gr3 = new XmlClass.vehicle.addrlist();
XmlClass.vehicle.addrlist gr4 = new XmlClass.vehicle.addrlist();
gr1.broadcast = true;
gr2.broadcast = true;
gr3.broadcast = true;
gr4.broadcast = false;
gr1.address = "0x7df";
gr2.address = "0x7df";
gr3.address = "0x68";
gr4.address = "0x7ef";
Assert.AreEqual(0, Utils.addrlist_sorter(gr1, gr2));
Assert.AreEqual(-1, Utils.addrlist_sorter(null, gr2));
Assert.AreEqual(1, Utils.addrlist_sorter(gr1, null));
Assert.AreEqual(1, Utils.addrlist_sorter(gr1, gr3));
Assert.AreEqual(-1, Utils.addrlist_sorter(gr1, gr4));
}
///
///A test for commspeed_sorter
///
[TestMethod()]
public void commspeed_sorterTest()
{
XmlClass.commspeed gr1 = new XmlClass.commspeed();
XmlClass.commspeed gr2 = new XmlClass.commspeed();
int expected = 0;
int actual;
actual = Utils.commspeed_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for eculist_sorter
///
[TestMethod()]
public void eculist_sorterTest()
{
XmlClass.vehicle.ecuData gr1 = new XmlClass.vehicle.ecuData();
XmlClass.vehicle.ecuData gr2 = new XmlClass.vehicle.ecuData();
int expected = 0;
int actual;
actual = Utils.eculist_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for extractData
///
[TestMethod()]
public void extractDataTest()
{
byte[] payload = new byte[] { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05 };
int headerSize = 5;
byte[] expected = new byte[] { 0x05 };
byte[] actual;
actual = Utils.extractData(payload, headerSize);
Assert.AreEqual(expected.Length, actual.Length);
Assert.AreEqual(expected[0], actual[0]);
}
///
///A test for filter_sorter
///
[TestMethod()]
public void filter_sorterTest()
{
XmlClass.filter gr1 = new XmlClass.filter();
XmlClass.filter gr2 = new XmlClass.filter();
int expected = 0;
int actual;
actual = Utils.filter_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for gaugeitem_sorter
///
[TestMethod()]
public void gaugeitem_sorterTest()
{
XmlClass.gaugeitem gr1 = null;
XmlClass.gaugeitem gr2 = null;
int expected = 0;
int actual;
actual = Utils.gaugeitem_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for getCapability
///
[TestMethod()]
public void getCapabilityTest()
{
int capByte = 0;
int bit = 0;
string expected = "0 Engine Speed";
string actual;
actual = Utils.getCapability(capByte, bit);
Assert.AreEqual(expected, actual);
}
///
///A test for getDouble
///
[TestMethod()]
public void getDoubleTest()
{
object val = "42.55";
double expected = 42.55;
double actual;
actual = Utils.getDouble(val);
Assert.AreEqual(expected, actual);
}
///
///A test for getDtc
///
[TestMethod()]
public void getDtcTest()
{
byte[] payload = new byte[] { 0x04, 0x20 };
int n = 0;
int nExpected = 2;
string expected = "P0420";
string actual;
actual = Utils.getDtc(payload, ref n);
Assert.AreEqual(nExpected, n);
Assert.AreEqual(expected, actual);
}
///
///A test for hexParse
///
[TestMethod()]
public void hexParseTest()
{
string value = "0x12";
uint expected = 18;
uint actual;
actual = Utils.hexParse(value);
Assert.AreEqual(expected, actual);
}
///
///A test for icon_sorter
///
[TestMethod()]
public void icon_sorterTest()
{
XmlClass.icon gr1 = null;
XmlClass.icon gr2 = null;
int expected = 0;
int actual;
actual = Utils.icon_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for modegroups_sorter
///
[TestMethod()]
public void modegroups_sorterTest()
{
XmlClass.modeitem gr1 = new XmlClass.modeitem();
XmlClass.modeitem gr2 = new XmlClass.modeitem();
int expected = 0;
int actual;
actual = Utils.modegroups_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for moveString
///
[TestMethod()]
public void moveStringTest()
{
IPassThruMsg rxmsg1 = DeviceApi.PassThruMsg.getMaskedMsg(SharedObjects.Protocol.Protocols.ISO15765);
IPassThruMsg rxmsg1Expected = DeviceApi.PassThruMsg.getMaskedMsg(SharedObjects.Protocol.Protocols.ISO15765);
rxmsg1Expected.Data[0] = (byte)'A';
rxmsg1Expected.Data[1] = (byte)'B';
rxmsg1Expected.Data[2] = (byte)'C';
string str = "ABC";
int n = 0;
int nExpected = 3;
int i = 0;
int iExpected = 3;
Utils.moveString(ref rxmsg1, str, ref n, ref i);
Assert.AreEqual(rxmsg1Expected, rxmsg1);
Assert.AreEqual(nExpected, n);
Assert.AreEqual(iExpected, i);
}
///
///A test for pad
///
[TestMethod()]
public void padTest()
{
IPassThruMsg rxmsg1 = DeviceApi.PassThruMsg.getMaskedMsg(SharedObjects.Protocol.Protocols.ISO15765);
IPassThruMsg rxmsg1Expected = DeviceApi.PassThruMsg.getMaskedMsg(SharedObjects.Protocol.Protocols.ISO15765);
rxmsg1Expected.Data[0] = (byte)' ';
rxmsg1Expected.Data[1] = (byte)' ';
rxmsg1Expected.Data[2] = (byte)' ';
int n = 0;
int nExpected = 3;
int i = 0;
int iExpected = 3;
int padValue = 3;
Utils.pad(ref rxmsg1, ref n, ref i, padValue);
Assert.AreEqual(rxmsg1Expected, rxmsg1);
Assert.AreEqual(nExpected, n);
Assert.AreEqual(iExpected, i);
}
///
///A test for parameterlist_sorter
///
[TestMethod()]
public void parameterlist_sorterTest()
{
XmlClass.parameteritem gr1 = null;
XmlClass.parameteritem gr2 = null;
int expected = 0;
int actual;
actual = Utils.parameterlist_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for parseDtcCode
///
[TestMethod()]
public void parseDtcCodeTest()
{
string code = "P0420";
int expected = 0x0420;
int actual;
actual = Utils.parseDtcCode(code);
Assert.AreEqual(expected, actual);
}
///
///A test for parseDtcCodeExtension
///
[TestMethod()]
public void parseDtcCodeExtensionTest()
{
string code = "P0420: Catalyst";
int expected = 0x0420;
int actual;
actual = Utils.parseDtcCodeExtension(code);
Assert.AreEqual(expected, actual);
}
///
///A test for pidgroups_sorter
///
[TestMethod()]
public void pidgroups_sorterTest()
{
XmlClass.vehicle.pidgroup gr1 = new XmlClass.vehicle.pidgroup();
XmlClass.vehicle.pidgroup gr2 = new XmlClass.vehicle.pidgroup();
int expected = 0;
int actual;
actual = Utils.pidgroups_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for pidgroups_sorter
///
[TestMethod()]
public void pidgroups_sorterTest1()
{
XmlClass.pidgroup gr1 = null;
XmlClass.pidgroup gr2 = null;
int expected = 0;
int actual;
actual = Utils.pidgroups_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for pidlist_sorter
///
[TestMethod()]
public void pidlist_sorterTest()
{
XmlClass.pidgroup.pidlist gr1 = null;
XmlClass.pidgroup.pidlist gr2 = null;
int expected = 0;
int actual;
actual = Utils.pidlist_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for sensordata_sorter
///
[TestMethod()]
public void sensordata_sorterTest()
{
XmlClass.pidgroup.pidlist.sensordata gr1 = null;
XmlClass.pidgroup.pidlist.sensordata gr2 = null;
int expected = 0;
int actual;
actual = Utils.sensordata_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for strlen
///
[TestMethod()]
public void strlenTest()
{
byte[] ba = new byte[] { 0x40, 0x40, 0x20, 0x00 };
int expected = 3;
int actual;
actual = Utils.strlen(ba);
Assert.AreEqual(expected, actual);
}
///
///A test for unitlist_sorter
///
[TestMethod()]
public void unitlist_sorterTest()
{
XmlClass.unititem gr1 = null;
XmlClass.unititem gr2 = null;
int expected = 0;
int actual;
actual = Utils.unitlist_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
///
///A test for vehicle_sorter
///
[TestMethod()]
public void vehicle_sorterTest()
{
XmlClass.vehicle gr1 = null;
XmlClass.vehicle gr2 = null;
int expected = 0;
int actual;
actual = Utils.vehicle_sorter(gr1, gr2);
Assert.AreEqual(expected, actual);
}
}
}