public void GetCreateElement_WithAllOptionsOff() { var entityNameDefinition = new EntityNameDefinition(null, "TableName"); var indexDefinition = new SqlIndexDefinition( "Index1", new[] { _column1, _column2 }, new[] { _includedColumn1 }, false, false, false, false, false, 0, false, false, false, false, false, 0); var result = _factory.GetCreateElement(indexDefinition, entityNameDefinition); var expectedResult = "CREATE NONCLUSTERED INDEX [Index1]\r\n" + " ON [dbo].[TableName] ([IndexColumn1] DESC, [IndexColumn2] ASC)\r\n" + " INCLUDE ([IncludedColumn1])\r\n" + " WITH (IGNORE_DUP_KEY = OFF, ONLINE = OFF, PAD_INDEX = OFF, FILLFACTOR = 0, SORT_IN_TEMPDB = OFF, STATISTICS_NORECOMPUTE = OFF, " + "DROP_EXISTING = OFF, ALLOW_ROW_LOCKS = OFF, ALLOW_PAGE_LOCKS = OFF, MAXDOP = 0)"; Assert.That(((ScriptStatement)result).Statement, Is.EqualTo(expectedResult)); }
public void SetUp() { _columns = new[] { new SqlIndexedColumnDefinition(ColumnDefinitionObjectMother.CreateColumn("TestColumn1")) }; _includedColumns = new[] { ColumnDefinitionObjectMother.CreateColumn("TestColumn2") }; _sqlIndexDefinition = new SqlIndexDefinition( "IndexName", _columns, _includedColumns, true, true, true, true, true, 5, true, true, true, true, true, 2); }
public void GetCreateElement_WithIncludedColumnsAndSomeOptions() { var entityNameDefinition = new EntityNameDefinition(null, "TableName"); var indexDefinition = new SqlIndexDefinition( "Index1", new[] { _column1, _column2 }, new[] { _includedColumn1 }, false, false, true, true); var result = _factory.GetCreateElement(indexDefinition, entityNameDefinition); var expectedResult = "CREATE NONCLUSTERED INDEX [Index1]\r\n" + " ON [dbo].[TableName] ([IndexColumn1] DESC, [IndexColumn2] ASC)\r\n" + " INCLUDE ([IncludedColumn1])\r\n" + " WITH (IGNORE_DUP_KEY = ON, ONLINE = ON)"; Assert.That(((ScriptStatement)result).Statement, Is.EqualTo(expectedResult)); }
public override void SetUp() { base.SetUp(); _factory = new SqlIndexDefinitionScriptElementFactory(); _column1 = new SqlIndexedColumnDefinition(ColumnDefinitionObjectMother.CreateColumn("IndexColumn1"), IndexOrder.Desc); _column2 = new SqlIndexedColumnDefinition(ColumnDefinitionObjectMother.CreateColumn("IndexColumn2"), IndexOrder.Asc); _includedColumn1 = ColumnDefinitionObjectMother.CreateColumn("IncludedColumn1"); _includedColumn2 = ColumnDefinitionObjectMother.CreateColumn("IncludedColumn2"); _customSchemaNameDefinition = new EntityNameDefinition("SchemaName", "TableName1"); _indexDefinitionWithCustomSchema = new SqlIndexDefinition("Index1", new[] { _column1 }); _defaultSchemaNameDefinition = new EntityNameDefinition(null, "TableName2"); _indexDefinitionWithDefaultSchema = new SqlIndexDefinition("Index2", new[] { _column2 }); }
public override void SetUp() { base.SetUp(); _indexDefinitionElementFactoryMock = MockRepository.GenerateStub <ISqlIndexDefinitionScriptElementFactory <SqlIndexDefinition> >(); _primaryIndexDefinitionElementFactoryMock = MockRepository.GenerateStub <ISqlIndexDefinitionScriptElementFactory <SqlPrimaryXmlIndexDefinition> > (); _secondaryIndexDefinitionElementFactoryMock = MockRepository.GenerateStub <ISqlIndexDefinitionScriptElementFactory <SqlSecondaryXmlIndexDefinition> >(); _factory = new SqlIndexScriptElementFactory( _indexDefinitionElementFactoryMock, _primaryIndexDefinitionElementFactoryMock, _secondaryIndexDefinitionElementFactoryMock); var simpleColumn = ColumnDefinitionObjectMother.CreateColumn("Column"); var indexedColumn = new SqlIndexedColumnDefinition(simpleColumn, IndexOrder.Desc); _entityNameDefinition = new EntityNameDefinition(null, "Table"); _indexDefinition = new SqlIndexDefinition("Index1", new[] { indexedColumn }); _primaryIndexDefinition = new SqlPrimaryXmlIndexDefinition("Index2", simpleColumn); _secondaryIndexDefinition = new SqlSecondaryXmlIndexDefinition( "Index3", simpleColumn, "PrimaryIndexName", SqlSecondaryXmlIndexKind.Property); _fakeScriptElement = MockRepository.GenerateStub <IScriptElement>(); }
public void Initialization_NoIncludedColumns() { _sqlIndexDefinition = new SqlIndexDefinition("IndexName", _columns, null, true, true, true, true); Assert.That(_sqlIndexDefinition.IncludedColumns, Is.Null); }
private void AddIndexDefinition(SqlIndexDefinition indexDefinition, EntityNameDefinition ownerName) { _createScriptElement = _indexDefinitionElementFactory.GetCreateElement(indexDefinition, ownerName); _dropScriptElement = _indexDefinitionElementFactory.GetDropElement(indexDefinition, ownerName); }
void ISqlIndexDefinitionVisitor.VisitIndexDefinition(SqlIndexDefinition sqlIndexDefinition) { _elementFactory.AddIndexDefinition(sqlIndexDefinition, _ownerName); }