public void CrmFileDataExporterTarget() { ConsoleLogger.LogLevel = 0; var orgService = ConnectionHelper.GetOrganizationalServiceTarget(); EntityRepository entityRepo = new EntityRepository(orgService, new ServiceRetryExecutor()); string folderPath = new FileInfo(Assembly.GetExecutingAssembly().Location).DirectoryName; string fetchXMLFolderPath = Path.Combine(folderPath, "TestData\\FetchXmlFolder"); CrmExporterConfig config = new CrmExporterConfig() { FetchXMLFolderPath = fetchXMLFolderPath, BatchSize = 1000, PageSize = 100, TopCount = 10000 }; DataCrmStoreReader storeReader = new DataCrmStoreReader(new ConsoleLogger(), entityRepo, config); DataFileStoreWriter storeWriter = new DataFileStoreWriter(new ConsoleLogger(), $"{DateTime.UtcNow.ToString("yyMMmmss", CultureInfo.InvariantCulture)}testexportTarget", @"TestData"); CrmFileDataExporter fileExporter = new CrmFileDataExporter(new ConsoleLogger(), storeReader, storeWriter); FluentActions.Invoking(() => fileExporter.MigrateData()) .Should() .NotThrow(); }
public void SaveBatchDataToStore() { DataFileStoreWriter mgr = new DataFileStoreWriter(new ConsoleLogger(), $"{DateTime.UtcNow.ToString("yyMMmmss", CultureInfo.InvariantCulture)}testexport", "TestData"); FluentActions.Invoking(() => mgr.SaveBatchDataToStore(EntityMockHelper.EntitiesToCreate.Select(p => new EntityWrapper(p)).ToList())) .Should() .NotThrow(); }
public void RemoveEntityReferenceNamePropertyValue() { // Arrange Guid accountId = Guid.NewGuid(); string accountName = "ABC Ltd"; Entity account = new Entity("account"); account.Id = accountId; account.Attributes.Add("name", "Fake Account"); EntityReference entityRef = account.ToEntityReference(); entityRef.Name = accountName; Entity entity = new Entity("contact"); entity.Attributes.Add("firstname", "Test"); entity.Attributes.Add("surname", "Tester"); entity.Attributes.Add("account", entityRef); EntityWrapper entityWrapper = new EntityWrapper(entity); List <FieldToBeObfuscated> fiedlsToBeObfuscated = new List <FieldToBeObfuscated>(); fiedlsToBeObfuscated.Add(new FieldToBeObfuscated() { FieldName = "firstname" }); var fieldToBeObfuscated = new List <EntityToBeObfuscated>(); fieldToBeObfuscated.Add(new EntityToBeObfuscated() { EntityName = "contact", FieldsToBeObfuscated = fiedlsToBeObfuscated }); List <EntityWrapper> entities = new List <EntityWrapper> { new EntityWrapper(entity) }; var entitiesToExport = entities.Select(e => new CrmEntityStore(e)).ToList(); var dataFileStoreWriter = new DataFileStoreWriter(MockLogger.Object, FilePrefix, TestResultFolder, null, true, fieldToBeObfuscated); string accountNameBefore = (string)((EntityReference)entity["account"]).Name; // Assert FluentActions.Invoking(() => dataFileStoreWriter.RemoveEntityReferenceNameProperty(entitiesToExport)) .Should() .NotThrow(); string accountNameAfter = (string)((EntityReference)entity["account"]).Name; accountNameBefore.Should().Be(accountName); accountNameAfter.Should().BeNull(); }
public void Setup() { InitializeProperties(); List <string> excludedFields = new List <string>(); bool seperateFilesPerEntity = true; systemUnderTest = new DataFileStoreWriter(MockLogger.Object, FilePrefix, TestResultFolder, excludedFields, seperateFilesPerEntity); }
public void DataFileStoreWriter() { MockFileStoreWriterConfig.SetupGet(a => a.SeperateFilesPerEntity).Returns(true); MockFileStoreWriterConfig.SetupGet(a => a.FilePrefix).Returns(FilePrefix); MockFileStoreWriterConfig.SetupGet(a => a.JsonFolderPath).Returns(TestResultFolder); FluentActions.Invoking(() => systemUnderTest = new DataFileStoreWriter(MockLogger.Object, MockFileStoreWriterConfig.Object)) .Should() .NotThrow(); MockFileStoreWriterConfig.VerifyAll(); }
public void Setup() { InitializeProperties(); var entities = new List <CrmEntity>() { new CrmEntity(), new CrmEntity() }; schemaConfig = new CrmSchemaConfiguration(); schemaConfig.Entities.AddRange(entities); dataCrmStoreReader = new DataCrmStoreReader(MockLogger.Object, MockEntityRepo.Object, 500, 500, 1000, true, new List <string>(), EmptyFieldsToObfuscate); string filePrefix = "Test"; string filesPath = "TestData"; bool seperateFilesPerEntity = true; List <string> excludedFields = new List <string>(); dataFileStoreWriter = new DataFileStoreWriter(MockLogger.Object, filePrefix, filesPath, excludedFields, seperateFilesPerEntity); }
public CrmFileDataExporter(ILogger logger, DataCrmStoreReader storeReader, DataFileStoreWriter storeWriter, CancellationToken cancellationToken) : base(logger, storeReader, storeWriter, cancellationToken) { SetConfiguration(); }
public CrmFileDataExporter(ILogger logger, DataCrmStoreReader storeReader, DataFileStoreWriter storeWriter) : base(logger, storeReader, storeWriter) { SetConfiguration(); }