public void GenerateTextForSelectExpression () { var stage = new DefaultSqlGenerationStage(); stage.GenerateTextForSelectExpression (_commandBuilder, _sqlStatement.SelectProjection); Assert.That (_commandBuilder.GetCommandText(), Is.EqualTo ("[t].[ID],[t].[Name],[t].[City]")); }
public void GenerateTextForFromTable () { var stage = new DefaultSqlGenerationStage(); stage.GenerateTextForFromTable (_commandBuilder, _sqlStatement.SqlTables[0], true); Assert.That (_commandBuilder.GetCommandText(), Is.EqualTo ("[Table] AS [t]")); }
private void CallGenerateTextForNonSelectExpression (DefaultSqlGenerationStage mock, Expression expression) { PrivateInvoke.InvokeNonPublicMethod (mock, "GenerateTextForNonSelectExpression", _commandBuilder, expression); }
public void GenerateTextForOuterSqlStatement () { var sqlStatement = SqlStatementModelObjectMother.CreateSqlStatement ( _entityExpression, new[] { new SqlTable (new ResolvedSimpleTableInfo (typeof (int), "Table", "t"), JoinSemantics.Inner) }); var stage = new DefaultSqlGenerationStage(); stage.GenerateTextForOuterSqlStatement (_commandBuilder, sqlStatement); Assert.That (_commandBuilder.GetCommandText (), Is.EqualTo ("SELECT [t].[ID],[t].[Name],[t].[City] FROM [Table] AS [t]")); var inMemoryProjection = _commandBuilder.GetInMemoryProjectionBody(); Assert.That (inMemoryProjection, Is.AssignableTo (typeof (MethodCallExpression))); var methodCallExpression = (MethodCallExpression) inMemoryProjection; Assert.That (methodCallExpression.Method, Is.EqualTo ((typeof (IDatabaseResultRow).GetMethod ("GetEntity").MakeGenericMethod (sqlStatement.SelectProjection.Type)))); Assert.That (methodCallExpression.Arguments.Count, Is.EqualTo (1)); Assert.That (((ColumnID[]) ((ConstantExpression) methodCallExpression.Arguments[0]).Value)[0].ColumnName, Is.EqualTo ("ID")); Assert.That (((ColumnID[]) ((ConstantExpression) methodCallExpression.Arguments[0]).Value)[1].ColumnName, Is.EqualTo ("Name")); Assert.That (((ColumnID[]) ((ConstantExpression) methodCallExpression.Arguments[0]).Value)[2].ColumnName, Is.EqualTo ("City")); }
public void GenerateTextForSqlStatement () { var sqlStatement = SqlStatementModelObjectMother.CreateSqlStatement ( _entityExpression, new[] { new SqlTable (new ResolvedSimpleTableInfo (typeof (int), "Table", "t"), JoinSemantics.Inner) }); var stage = new DefaultSqlGenerationStage(); stage.GenerateTextForSqlStatement (_commandBuilder, sqlStatement); Assert.That (_commandBuilder.GetCommandText(), Is.EqualTo ("SELECT [t].[ID],[t].[Name],[t].[City] FROM [Table] AS [t]")); }
public void GenerateTextForOrdering () { var ordering = new Ordering (Expression.Constant (1), OrderingDirection.Asc); var stage = new DefaultSqlGenerationStage(); stage.GenerateTextForOrdering (_commandBuilder, ordering); Assert.That (_commandBuilder.GetCommandText(), Is.EqualTo ("(SELECT @1) ASC")); }