public void RandomizeGuidsInFolder() { string folderPath = new FileInfo(Assembly.GetExecutingAssembly().Location).DirectoryName; string schemaFolderPath = Path.Combine(folderPath, "ImportSchemas\\CustomSolutionSchema"); string extractedDataPath = Path.Combine(schemaFolderPath, "ExtractedData"); string randomisedPath = Path.Combine(extractedDataPath, "..\\RandomGuids"); Directory.CreateDirectory(randomisedPath); foreach (var file in Directory.EnumerateFiles(randomisedPath)) { DeleteFileIfExits(file); } DataFileStoreReader dsfr = new DataFileStoreReader(new ConsoleLogger(), "ExportedData", extractedDataPath); List <EntityWrapper> data = null; FluentActions.Invoking(() => data = dsfr.ReadBatchDataFromStore()) .Should() .NotThrow(); while (data != null && data.Count > 0) { foreach (var record in data) { record.OriginalEntity.Id = Guid.NewGuid(); var attribs = data.SelectMany(d => d.OriginalEntity.Attributes).Where(a => a.Value is EntityReference || a.Value is Guid).ToList(); foreach (var a in attribs) { if (a.Value is EntityReference temp) { ((EntityReference)a.Value).Id = Guid.NewGuid(); } else if (a.Value is Guid) { record.OriginalEntity[a.Key] = Guid.NewGuid(); } } } new DataFileStoreWriter(new ConsoleLogger(), "ExportedData", randomisedPath).SaveBatchDataToStore(data); data = dsfr.ReadBatchDataFromStore(); FluentActions.Invoking(() => data = dsfr.ReadBatchDataFromStore()) .Should() .NotThrow(); } foreach (var file in Directory.EnumerateFiles(randomisedPath)) { var traget = Path.Combine(extractedDataPath, Path.GetFileName(file)); DeleteFileIfExits(traget); File.Move(file, traget); } }
public void ReadBatchDataFromStore() { DataFileStoreReader mgr = new DataFileStoreReader(new ConsoleLogger(), "testexport", @"TestData"); List <EntityWrapper> result = mgr.ReadBatchDataFromStore(); Assert.IsTrue(result.Count > 0); }
private Tuple <List <Entity>, List <Entity> > GetFirstEntities(string filePrefix) { string extractedPath = Path.Combine(TestBase.GetWorkiongFolderPath(), "TestData"); string extractFolder = Path.Combine(extractedPath, "ExtractedData"); string schemaFilePath = Path.Combine(extractedPath, "usersettingsschema.xml"); CrmSchemaConfiguration schemaConfig = CrmSchemaConfiguration.ReadFromFile(schemaFilePath); DataFileStoreReaderCsv store = new DataFileStoreReaderCsv(new ConsoleLogger(), filePrefix, extractFolder, schemaConfig); var batch = store.ReadBatchDataFromStore(); List <Entity> firstEnt = batch.Select(p => p.OriginalEntity).ToList(); DataFileStoreReader storeJson = new DataFileStoreReader(new ConsoleLogger(), filePrefix, extractFolder); var batchJson = storeJson.ReadBatchDataFromStore(); List <Entity> firstEntJson = batchJson.Select(p => p.OriginalEntity).ToList(); return(new Tuple <List <Entity>, List <Entity> >(firstEnt, firstEntJson)); }