public override void SetUp()
        {
            base.SetUp();

            var rdbmsPersistenceModelProvider  = new RdbmsPersistenceModelProvider();
            var storageTypeInformationProvider = new SqlStorageTypeInformationProvider();
            var dataContainerValidator         = new CompoundDataContainerValidator(Enumerable.Empty <IDataContainerValidator>());

            var storageNameProvider = new ReflectionBasedStorageNameProvider();
            var infrastructureStoragePropertyDefinitionProvider =
                new InfrastructureStoragePropertyDefinitionProvider(storageTypeInformationProvider, storageNameProvider);
            var storageProviderDefinitionFinder      = new StorageGroupBasedStorageProviderDefinitionFinder(DomainObjectsConfiguration.Current.Storage);
            var dataStoragePropertyDefinitionFactory = new DataStoragePropertyDefinitionFactory(
                new ValueStoragePropertyDefinitionFactory(storageTypeInformationProvider, storageNameProvider),
                new RelationStoragePropertyDefinitionFactory(
                    TestDomainStorageProviderDefinition, false, storageNameProvider, storageTypeInformationProvider, storageProviderDefinitionFinder));

            _factory = new RdbmsProviderCommandFactory(
                TestDomainStorageProviderDefinition,
                new SqlDbCommandBuilderFactory(new SqlDialect()),
                rdbmsPersistenceModelProvider,
                new ObjectReaderFactory(
                    rdbmsPersistenceModelProvider, infrastructureStoragePropertyDefinitionProvider, storageTypeInformationProvider, dataContainerValidator),
                new TableDefinitionFinder(rdbmsPersistenceModelProvider),
                dataStoragePropertyDefinitionFactory);

            _objectID1 = DomainObjectIDs.Order1;
            _objectID2 = DomainObjectIDs.Order3;
            _objectID3 = DomainObjectIDs.Order4;
        }
Beispiel #2
0
        public override void SetUp()
        {
            base.SetUp();

            _valuePropertyFactoryMock    = MockRepository.GenerateStrictMock <IValueStoragePropertyDefinitionFactory> ();
            _relationPropertyFactoryMock = MockRepository.GenerateStrictMock <IRelationStoragePropertyDefinitionFactory> ();

            _factory = new DataStoragePropertyDefinitionFactory(_valuePropertyFactoryMock, _relationPropertyFactoryMock);

            _fakeStoragePropertyDefinition = MockRepository.GenerateStub <IRdbmsStoragePropertyDefinition>();
        }
Beispiel #3
0
        public static RdbmsProvider CreateForIntegrationTest(
            RdbmsProviderDefinition storageProviderDefinition,
            Func <RdbmsProviderDefinition, IPersistenceExtension, IStorageProviderCommandFactory <IRdbmsProviderCommandExecutionContext>, RdbmsProvider> ctorCall = null)
        {
            var storageTypeInformationProvider = new SqlStorageTypeInformationProvider();
            var dbCommandBuilderFactory        = new SqlDbCommandBuilderFactory(new SqlDialect());
            var storageNameProvider            = new ReflectionBasedStorageNameProvider();
            var rdbmsPersistenceModelProvider  = new RdbmsPersistenceModelProvider();
            var infrastructureStoragePropertyDefinitionProvider = new InfrastructureStoragePropertyDefinitionProvider(
                storageTypeInformationProvider, storageNameProvider);
            var dataStoragePropertyDefinitionFactory = new DataStoragePropertyDefinitionFactory(
                new ValueStoragePropertyDefinitionFactory(storageTypeInformationProvider, storageNameProvider),
                new RelationStoragePropertyDefinitionFactory(
                    storageProviderDefinition,
                    false,
                    storageNameProvider,
                    storageTypeInformationProvider,
                    new StorageEntityBasedStorageProviderDefinitionFinder()));
            var dataContainerValidator = new CompoundDataContainerValidator(Enumerable.Empty <IDataContainerValidator>());
            var objectReaderFactory    = new ObjectReaderFactory(
                rdbmsPersistenceModelProvider,
                infrastructureStoragePropertyDefinitionProvider,
                storageTypeInformationProvider,
                dataContainerValidator);
            var commandFactory = new RdbmsProviderCommandFactory(
                storageProviderDefinition,
                dbCommandBuilderFactory,
                rdbmsPersistenceModelProvider,
                objectReaderFactory,
                new TableDefinitionFinder(rdbmsPersistenceModelProvider),
                dataStoragePropertyDefinitionFactory);

            if (ctorCall == null)
            {
                ctorCall = (def, ext, factory) => new RdbmsProvider(def, ext, factory, () => new SqlConnection());
            }

            return(ctorCall(storageProviderDefinition, NullPersistenceExtension.Instance, commandFactory));
        }