I have written a project by ASP.NET and C# which uses dataset for connecting to database.
I want to test my code by when I create a unit test for my classes which use dataset I get following error:
Test method Test.CommodityRepositoryTest.GetCommoditiesTest threw exception:
System.NullReferenceException: Object reference not set to an instance of an object.
at Terminal.Database.TransportCo.TransportCoTableAdapters.ConfigurationTableAdapter.InitConnection() in TransportCoDataSet.Designer.cs: line 12259
at Terminal.Database.TransportCo.TransportCoTableAdapters.ConfigurationTableAdapter.get_Connection() in TransportCoDataSet.Designer.cs: line 12144
at Terminal.Database.TransportCo.TransportCoTableAdapters.ConfigurationTableAdapter.InitAdapter() in TransportCoDataSet.Designer.cs: line 12227
at Terminal.Database.TransportCo.TransportCoTableAdapters.ConfigurationTableAdapter.get_Adapter() in TransportCoDataSet.Designer.cs: line 12133
at Terminal.Database.TransportCo.TransportCoTableAdapters.ConfigurationTableAdapter.GetData() in TransportCoDataSet.Designer.cs: line 12290
I have to mention that I use singleton repository but it does not change anything in the error.
does anyone has any idea?
these are my code and its test:
public List<Commodity> GetCommodities()
{
var commoditySet=new CommodityTableAdapter();
var commoditys = commoditySet.GetCommdity().ToList();
if (commoditys.Count() == 0)
throw new UserInterfaceException("هیچ کالایی در سیستم ثبت نشده است");
var commoditiesName = new List<Commodity>();
for (int i = 0; i < commoditys.Count(); i++)
commoditiesName.Add(ConvertcommodityRowTocommodity(commoditys[i]));
return commoditiesName;
}
[TestMethod()]
public void GetCommoditiesTest()
{
var target = CommodityRepository.GetInstance(); // TODO: Initialize to an appropriate value
var expected = new List<Commodity> {new Commodity() {HSCode = "323423", ID = 19}}; // TODO: Initialize to an appropriate value
List<Commodity> actual = target.GetCommodities();
Assert.AreEqual(expected[0].ID, actual[0].ID);
//Assert.Inconclusive("Verify the correctness of this test method.");
}
Your typing is ambiguous
use insteand explicit types
then you will receive appropriate debugging errors.