public void CachingDataLoader_Recreate() { CsvDataLoader wrapped = new CsvDataLoader("C:\\path"); // Create a caching data loader CachingDataLoader original = new CachingDataLoader(wrapped); // Clone the caching data loader CachingDataLoader recreated = new CachingDataLoader(); ((IDataLoader)recreated).Argument = ((IDataLoader)original).Argument; // It should be exactly the same as the original Assert.AreEqual( original.WrappedDataLoader.GetType(), recreated.WrappedDataLoader.GetType()); recreated.WrappedDataLoader.Should().BeOfType <CsvDataLoader>(); // The wrapped data loader should be restored completely too CsvDataLoader recreatedWrapped = recreated.WrappedDataLoader as CsvDataLoader; Assert.IsNotNull(recreatedWrapped); Assert.AreEqual(wrapped.ContainerFolderPath, recreatedWrapped.ContainerFolderPath); }
protected static DbConnection CreateConnection(string path = null) { var dataLoader = new CsvDataLoader(path ?? DefaultTestDataUri); var cachingLoader = new CachingDataLoader(dataLoader); return(DbConnectionFactory.CreateTransient(cachingLoader)); }
public static TestDB Create() { if (cachingDataLoader == null) { var csvDataLoader = new CsvDataLoader("res://WMIT.DataServices.Tests/Fixtures/Data/"); cachingDataLoader = new CachingDataLoader(csvDataLoader); } var connection = DbConnectionFactory.CreateTransient(cachingDataLoader); var db = new TestDB(connection); return(db); }