Esempio n. 1
0
        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();
        }
Esempio n. 2
0
        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();
        }
Esempio n. 3
0
        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();
        }
Esempio n. 6
0
        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);
        }
Esempio n. 7
0
 public CrmFileDataExporter(ILogger logger, DataCrmStoreReader storeReader, DataFileStoreWriter storeWriter, CancellationToken cancellationToken)
     : base(logger, storeReader, storeWriter, cancellationToken)
 {
     SetConfiguration();
 }
Esempio n. 8
0
 public CrmFileDataExporter(ILogger logger, DataCrmStoreReader storeReader, DataFileStoreWriter storeWriter)
     : base(logger, storeReader, storeWriter)
 {
     SetConfiguration();
 }