Example #1
0
        public override void SetUp()
        {
            base.SetUp();

            _tableViewElementFactoryStub  = MockRepository.GenerateStub <ISynonymScriptElementFactory <TableDefinition> >();
            _unionViewElementFactoryStub  = MockRepository.GenerateStub <ISynonymScriptElementFactory <UnionViewDefinition> >();
            _filterViewElementFactoryStub = MockRepository.GenerateStub <ISynonymScriptElementFactory <FilterViewDefinition> >();
            _emptyViewElementFactoryStub  = MockRepository.GenerateStub <ISynonymScriptElementFactory <EmptyViewDefinition> >();

            _builder = new SynonymScriptBuilder(
                _tableViewElementFactoryStub,
                _unionViewElementFactoryStub,
                _filterViewElementFactoryStub,
                _emptyViewElementFactoryStub,
                new SqlCommentScriptElementFactory());

            _synonym1 = new EntityNameDefinition(null, "Synonym1");
            _synonym2 = new EntityNameDefinition(null, "Synonym2");
            _synonym3 = new EntityNameDefinition(null, "Synonym3");

            _tableDefinition1 = TableDefinitionObjectMother.CreateWithSynonyms(
                SchemaGenerationFirstStorageProviderDefinition,
                new[] { _synonym1 });
            _tableDefinition2 = TableDefinitionObjectMother.CreateWithSynonyms(
                SchemaGenerationFirstStorageProviderDefinition,
                new[] { _synonym2, _synonym3 });
            _unionViewDefinition1 = UnionViewDefinitionObjectMother.CreateWithSynonyms(
                SchemaGenerationFirstStorageProviderDefinition,
                new[] { _synonym1 });
            _unionViewDefinition2 = UnionViewDefinitionObjectMother.CreateWithSynonyms(
                SchemaGenerationFirstStorageProviderDefinition,
                new[] { _synonym2, _synonym3 });
            _filterViewDefinition1 = FilterViewDefinitionObjectMother.CreateWithSynonyms(
                SchemaGenerationFirstStorageProviderDefinition,
                new[] { _synonym1 });
            _filterViewDefinition2 = FilterViewDefinitionObjectMother.CreateWithSynonyms(
                SchemaGenerationFirstStorageProviderDefinition,
                new[] { _synonym2, _synonym3 });
            _emptyViewDefinition1 = EmptyViewDefinitionObjectMother.CreateWithSynonyms(
                SchemaGenerationFirstStorageProviderDefinition,
                new[] { _synonym1 });
            _emptyViewDefinition2 = EmptyViewDefinitionObjectMother.CreateWithSynonyms(
                SchemaGenerationFirstStorageProviderDefinition,
                new[] { _synonym2, _synonym3 });

            _fakeElement1 = MockRepository.GenerateStub <IScriptElement>();
            _fakeElement2 = MockRepository.GenerateStub <IScriptElement>();
            _fakeElement3 = MockRepository.GenerateStub <IScriptElement>();
        }
        public SynonymScriptBuilder(
            ISynonymScriptElementFactory <TableDefinition> tableViewElementFactory,
            ISynonymScriptElementFactory <UnionViewDefinition> unionViewElementFactory,
            ISynonymScriptElementFactory <FilterViewDefinition> filterViewElementFactory,
            ISynonymScriptElementFactory <EmptyViewDefinition> emptyViewElementFactory,
            ICommentScriptElementFactory commentFactory)
        {
            ArgumentUtility.CheckNotNull("tableViewElementFactory", tableViewElementFactory);
            ArgumentUtility.CheckNotNull("unionViewElementFactory", unionViewElementFactory);
            ArgumentUtility.CheckNotNull("filterViewElementFactory", filterViewElementFactory);
            ArgumentUtility.CheckNotNull("emptyViewElementFactory", emptyViewElementFactory);
            ArgumentUtility.CheckNotNull("commentFactory", commentFactory);

            _tableViewElementFactory  = tableViewElementFactory;
            _unionViewElementFactory  = unionViewElementFactory;
            _filterViewElementFactory = filterViewElementFactory;
            _emptyViewElementFactory  = emptyViewElementFactory;
            _createScriptElements     = new ScriptElementCollection();
            _createScriptElements.AddElement(commentFactory.GetCommentElement("Create synonyms for tables that were created above"));
            _dropScriptElements = new ScriptElementCollection();
            _dropScriptElements.AddElement(commentFactory.GetCommentElement("Drop all synonyms"));
        }