Beispiel #1
0
        private static INamedServiceFactory <IClassifierRepository> CreateClassifierRepositoryFactory(IDbContextFactory dbContextFactory)
        {
            var classifierTypeRepository = new DbClassifierTypeRepository(dbContextFactory);
            var classifierTypeService    = new DbClassifierTypeService(dbContextFactory, classifierTypeRepository);

            var fieldProviderRegistry = new DefaultFieldProviderRegistry();

            fieldProviderRegistry.AddFieldType(typeof(TextField));
            var dbFieldDataRepository = new DbFieldDataRepository(dbContextFactory, fieldProviderRegistry);

            var metadataServiceMock = new Mock <IClassifierTypeMetadataService>();

            var classifierRepository = new DbClassifierRepository <Classifier>(dbContextFactory,
                                                                               classifierTypeService, null, metadataServiceMock.Object, dbFieldDataRepository, null);

            var numeratorRepository = new DbNumeratorRepository(dbContextFactory,
                                                                classifierTypeService, null, metadataServiceMock.Object, dbFieldDataRepository, null);

            var classifierRepositoryFactoryMock = new Mock <INamedServiceFactory <IClassifierRepository> >();

            classifierRepositoryFactoryMock
            .Setup(x => x.GetNamedOrDefaultService(It.Is <string>(name => name == ClassifierTypeCode.Numerator)))
            .Returns(() => numeratorRepository);
            classifierRepositoryFactoryMock
            .Setup(x => x.GetNamedOrDefaultService(It.Is <string>(name => name != ClassifierTypeCode.Numerator)))
            .Returns(() => classifierRepository);

            return(classifierRepositoryFactoryMock.Object);
        }
Beispiel #2
0
        private static INamedServiceFactory <IClassifierRepository> CreateClassifierRepositoryFactory(IDbContextFactory dbContextFactory)
        {
            var classifierTypeRepository = new DbClassifierTypeRepository(dbContextFactory);
            var classifierTypeService    = new DbClassifierTypeService(dbContextFactory, classifierTypeRepository);

            var fieldProviderRegistry = new DefaultFieldProviderRegistry();

            fieldProviderRegistry.AddFieldType(typeof(TextField));
            var dbFieldDataRepository = new DbFieldDataRepository(dbContextFactory, fieldProviderRegistry);

            var metadataServiceMock = new Mock <IClassifierTypeMetadataService>();

            metadataServiceMock
            .Setup(x => x.GetMetadata(It.IsAny <ClassifierType>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(() => new FieldMetadata[]
            {
                new TextField {
                    Key = "test1", Active = true, System = false
                },
                new TextField {
                    Key = "test2", Active = true, System = false
                },
                new TextField {
                    Key = "test3", Active = true, System = false
                }
            });

            var classifierRepository = new DbClassifierRepository <Classifier>(dbContextFactory,
                                                                               classifierTypeService, null, metadataServiceMock.Object, dbFieldDataRepository, null);

            var numeratorRepository = new DbNumeratorRepository(dbContextFactory,
                                                                classifierTypeService, null, metadataServiceMock.Object, dbFieldDataRepository, null);

            var classifierRepositoryFactoryMock = new Mock <INamedServiceFactory <IClassifierRepository> >();

            classifierRepositoryFactoryMock
            .Setup(x => x.GetNamedOrDefaultService(It.Is <string>(name => name == NumeratorTypeCode)))
            .Returns(() => numeratorRepository);
            classifierRepositoryFactoryMock
            .Setup(x => x.GetNamedOrDefaultService(It.Is <string>(name => name != NumeratorTypeCode)))
            .Returns(() => classifierRepository);

            return(classifierRepositoryFactoryMock.Object);
        }