public void DirectMigrationTest() { ConsoleLogger.LogLevel = 5; var orgService = ConnectionHelper.GetOrganizationalServiceSource(); var repo = new EntityRepository(orgService, new ServiceRetryExecutor()); List <string> fetchXMLQueries = new List <string> { "<fetch><entity name=\"contact\" ><attribute name=\"ownerid\" /><attribute name=\"firstname\" /></entity></fetch>" }; var readerConfig = new CrmStoreReaderConfig(fetchXMLQueries) { BatchSize = 2, PageSize = 2, TopCount = 2, }; var writerConfig = new CrmStoreWriterConfig { SaveBatchSize = 200, }; var reader = new DataCrmStoreReader(logger, repo, readerConfig); var writer = new DataCrmStoreWriter(logger, repo, writerConfig); var migrator = new GenericDataMigrator <Entity, EntityWrapper>(logger, reader, writer); var obfuscateProcessor = new ObfuscateFieldsProcessor(repo.GetEntityMetadataCache, GetImporterConfig().FieldsToObfuscate); migrator.AddProcessor(obfuscateProcessor); migrator.MigrateData(); }
public void DirectMigrationTest() { ConsoleLogger.LogLevel = 5; var orgService = ConnectionHelper.GetOrganizationSprintAutoTest(); var repo = new EntityRepository(orgService, new ServiceRetryExecutor()); List <string> fetchXMLQueries = new List <string> { "<fetch><entity name=\"contact\" ><attribute name=\"ownerid\" /><filter>" + $"<condition attribute=\"ownerid\" operator=\"eq\" value=\"{sourceUserId}\" />" + "</filter></entity></fetch>" }; var readerConfig = new CrmStoreReaderConfig(fetchXMLQueries) { BatchSize = 200, PageSize = 200, TopCount = 200 }; var writerConfig = new CrmStoreWriterConfig { SaveBatchSize = 200 }; Dictionary <Guid, Guid> contactMappings = new Dictionary <Guid, Guid>() { { sourceUserId, targetGuidId } }; MappingConfiguration mappingConfig = new MappingConfiguration(); mappingConfig.Mappings.Add("systemuser", contactMappings); var reader = new DataCrmStoreReader(logger, repo, readerConfig); var writer = new DataCrmStoreWriter(logger, repo, writerConfig); var migrator = new GenericDataMigrator <Entity, EntityWrapper>(logger, reader, writer); var mappingProcessor = new MapEntityProcessor(mappingConfig, logger, repo); migrator.AddProcessor(mappingProcessor); FluentActions.Invoking(() => migrator.MigrateData()) .Should() .NotThrow(); }