public void ResolveTableInfo_JoinedGroupingTableInfo_SubStatementUnmodified() { var sqlJoinedGroupingTableInfo = SqlStatementModelObjectMother.CreateResolvedJoinedGroupingTableInfo(_sqlStatement); _stageMock .Expect(mock => mock.ResolveSqlStatement(_sqlStatement, _mappingResolutionContext)) .Return(_sqlStatement); _resolverMock.Replay(); var result = (ResolvedJoinedGroupingTableInfo)ResolvingTableInfoVisitor.ResolveTableInfo(sqlJoinedGroupingTableInfo, _resolverMock, _generator, _stageMock, _mappingResolutionContext); _stageMock.VerifyAllExpectations(); Assert.That(result, Is.SameAs(sqlJoinedGroupingTableInfo)); }
public void ApplyContext_ResolvedJoinedGroupingTableInfo_SameTableInfo() { var subStatement = SqlStatementModelObjectMother.CreateSqlStatement_Resolved(typeof(Cook)); var joinedGroupingTableInfo = SqlStatementModelObjectMother.CreateResolvedJoinedGroupingTableInfo(subStatement); _stageMock .Expect(mock => mock.ApplySelectionContext(subStatement, SqlExpressionContext.ValueRequired, _mappingresolutionContext)) .Return(subStatement); _stageMock.Replay(); var result = SqlContextTableInfoVisitor.ApplyContext(joinedGroupingTableInfo, SqlExpressionContext.ValueRequired, _stageMock, _mappingresolutionContext); Assert.That(result, Is.SameAs(joinedGroupingTableInfo)); _stageMock.VerifyAllExpectations(); }
public void VisitResolvedJoinedGroupingTableInfo() { var sqlStatement = new SqlStatementBuilder(SqlStatementModelObjectMother.CreateSqlStatement_Resolved(typeof(Cook[]))) { DataInfo = new StreamedSequenceInfo(typeof(IQueryable <Cook>), Expression.Constant(new Cook())) }.GetSqlStatement(); var resolvedSubTableInfo = SqlStatementModelObjectMother.CreateResolvedJoinedGroupingTableInfo(sqlStatement); _stageMock .Expect(mock => mock.GenerateTextForSqlStatement(_commandBuilder, sqlStatement)) .WhenCalled(mi => ((SqlCommandBuilder)mi.Arguments[0]).Append("XXX")); _stageMock.Replay(); _generator.VisitSubStatementTableInfo(resolvedSubTableInfo); _stageMock.VerifyAllExpectations(); Assert.That(_commandBuilder.GetCommandText(), Is.EqualTo("(XXX) AS [cook]")); }
public void ResolveTableInfo_JoinedGroupingTableInfo_SubStatementModified() { var sqlStatement = SqlStatementModelObjectMother.CreateSqlStatementWithCook(); var sqlJoinedGroupingTableInfo = SqlStatementModelObjectMother.CreateResolvedJoinedGroupingTableInfo(sqlStatement); _stageMock .Expect(mock => mock.ResolveSqlStatement(sqlStatement, _mappingResolutionContext)) .Return(_sqlStatement); _resolverMock.Replay(); var result = (ResolvedJoinedGroupingTableInfo)ResolvingTableInfoVisitor.ResolveTableInfo(sqlJoinedGroupingTableInfo, _resolverMock, _generator, _stageMock, _mappingResolutionContext); _stageMock.VerifyAllExpectations(); Assert.That(result, Is.Not.SameAs(sqlJoinedGroupingTableInfo)); Assert.That(result.SqlStatement, Is.SameAs(_sqlStatement)); Assert.That(result.TableAlias, Is.EqualTo(sqlJoinedGroupingTableInfo.TableAlias)); Assert.That(result.AssociatedGroupingSelectExpression, Is.SameAs(sqlJoinedGroupingTableInfo.AssociatedGroupingSelectExpression)); Assert.That(result.GroupSourceTableAlias, Is.EqualTo(sqlJoinedGroupingTableInfo.GroupSourceTableAlias)); }
public void ApplyContext_ResolvedJoinedGroupingTableInfo_NewTableInfo() { var subStatement = SqlStatementModelObjectMother.CreateSqlStatement_Resolved(typeof(Cook)); var joinedGroupingTableInfo = SqlStatementModelObjectMother.CreateResolvedJoinedGroupingTableInfo(subStatement); var returnedStatement = SqlStatementModelObjectMother.CreateSqlStatement_Resolved(typeof(Cook)); _stageMock .Expect(mock => mock.ApplySelectionContext(subStatement, SqlExpressionContext.ValueRequired, _mappingresolutionContext)) .Return(returnedStatement); _stageMock.Replay(); var result = (ResolvedJoinedGroupingTableInfo)SqlContextTableInfoVisitor.ApplyContext(joinedGroupingTableInfo, SqlExpressionContext.ValueRequired, _stageMock, _mappingresolutionContext); _stageMock.VerifyAllExpectations(); Assert.That(result, Is.Not.SameAs(joinedGroupingTableInfo)); Assert.That(result.GroupSourceTableAlias, Is.EqualTo(joinedGroupingTableInfo.GroupSourceTableAlias)); Assert.That(result.AssociatedGroupingSelectExpression, Is.SameAs(joinedGroupingTableInfo.AssociatedGroupingSelectExpression)); Assert.That(result.SqlStatement, Is.SameAs(returnedStatement)); Assert.That(result.TableAlias, Is.EqualTo(joinedGroupingTableInfo.TableAlias)); }