public void GetStartingPassNumberWithPassZeroEntities()
        {
            DataCrmStoreWriter dsw = new DataCrmStoreWriter(MockLogger.Object, MockEntityRepo.Object, 200, null);
            Mock <IDataStoreReader <Entity, EntityWrapper> > storeReader = new Mock <IDataStoreReader <Entity, EntityWrapper> >();
            Mock <ICrmGenericImporterConfig> config = new Mock <ICrmGenericImporterConfig>();

            // setup pass zero entities
            config.SetupGet(c => c.PassOneReferences).Returns(new List <string> {
                "businessunit", "uom", "uomschedule", "queue"
            });

            // execute test
            TestCrmGenericImporter importer = new TestCrmGenericImporter(MockLogger.Object, storeReader.Object, dsw, config.Object);
            var actual = importer.GetStartingPassNumber();

            Assert.AreEqual((int)PassType.CreateRequiredEntity, actual, "Ivalid starting pass number");
        }
        public void GetStartingPassNumberNoPassZeroEntities()
        {
            Mock <ILogger>           logger     = new Mock <ILogger>();
            Mock <IEntityRepository> entityrepo = new Mock <IEntityRepository>();
            DataCrmStoreWriter       dsw        = new DataCrmStoreWriter(logger.Object, entityrepo.Object, 200, null);
            Mock <IDataStoreReader <Entity, EntityWrapper> > storeReader = new Mock <IDataStoreReader <Entity, EntityWrapper> >();
            Mock <ICrmGenericImporterConfig> config = new Mock <ICrmGenericImporterConfig>();

            // setup pass zero entities
            config.SetupGet(c => c.PassOneReferences).Returns(new List <string> {
            });

            // execute test
            TestCrmGenericImporter importer = new TestCrmGenericImporter(logger.Object, storeReader.Object, dsw, config.Object);
            var actual = importer.GetStartingPassNumber();

            Assert.AreEqual((int)PassType.CreateEntity, actual, "Ivalid starting pass number");
        }