public void SqlServerIdentityInsertCalledTwiceAddsCorrectAdditionalFeature() { var expression = new InsertDataExpression(); var builder = new InsertDataExpressionBuilder(expression); builder.WithIdentityInsert().WithIdentityInsert(); expression.AdditionalFeatures.ShouldContain( new KeyValuePair <string, object>(SqlServerExtensions.IdentityInsert, true)); }
public void PostgresOverridingUserValueCalledTwiceAddsCorrectAdditionalFeature() { var expression = new InsertDataExpression(); var builder = new InsertDataExpressionBuilder(expression); builder.WithOverridingUserValue().WithOverridingUserValue(); expression.AdditionalFeatures.ShouldContain( new KeyValuePair <string, object>( PostgresExtensions.OverridingIdentityValues, PostgresOverridingIdentityValuesType.User)); }
public void RowsGetSetWhenRowIsCalled() { var expression = new InsertDataExpression(); var builder = new InsertDataExpressionBuilder(expression); builder .Row(new { Data1 = "Row1Data1", Data2 = "Row1Data2" }) .Row(new { Data1 = "Row2Data1", Data2 = "Row2Data2" }); expression.Rows.Count.ShouldBe(2); }
public void PostgresOverridingIdentityValuesCalledWithDifferentTypeAddsCorrectAdditionalFeature() { // If both WithOverridingSystemValue() and WithOverridingUserValue() are called on the same expression, // then the latest value should be set in the additional features var expressionForUserValue = new InsertDataExpression(); var builderForUserValue = new InsertDataExpressionBuilder(expressionForUserValue); builderForUserValue.WithOverridingSystemValue().WithOverridingUserValue(); var expressionForSystemValue = new InsertDataExpression(); var builderForSystemValue = new InsertDataExpressionBuilder(expressionForSystemValue); builderForSystemValue.WithOverridingUserValue().WithOverridingSystemValue(); expressionForUserValue.AdditionalFeatures.ShouldContain( new KeyValuePair <string, object>( PostgresExtensions.OverridingIdentityValues, PostgresOverridingIdentityValuesType.User)); expressionForSystemValue.AdditionalFeatures.ShouldContain( new KeyValuePair <string, object>( PostgresExtensions.OverridingIdentityValues, PostgresOverridingIdentityValuesType.System)); }