public void CreateForCustomQuery() { _dataStoragePropertyDefinitionFactoryStrictMock .Expect(mock => mock.CreateStoragePropertyDefinition(DomainObjectIDs.Order1)) .Return(_property1); _dataStoragePropertyDefinitionFactoryStrictMock .Expect(mock => mock.CreateStoragePropertyDefinition(DomainObjectIDs.Order3.Value)) .Return(_property2); _dataStoragePropertyDefinitionFactoryStrictMock .Expect(mock => mock.CreateStoragePropertyDefinition(DomainObjectIDs.Official1)) .Return(_property3); var commandBuilderStub = MockRepository.GenerateStub <IDbCommandBuilder> (); var expectedParametersWithType = GetExpectedParametersForQueryStub(); _dbCommandBuilderFactoryStrictMock .Expect( stub => stub.CreateForQuery(Arg.Is("statement"), Arg <IEnumerable <QueryParameterWithType> > .List.Equal(expectedParametersWithType))) .Return(commandBuilderStub); _objectReaderFactoryStrictMock.Expect(mock => mock.CreateResultRowReader()).Return(_resultRowReaderStub); var result = _factory.CreateForCustomQuery(_queryStub); Assert.That(result, Is.TypeOf(typeof(MultiObjectLoadCommand <IQueryResultRow>))); var command = ((MultiObjectLoadCommand <IQueryResultRow>)result); Assert.That(command.DbCommandBuildersAndReaders.Length, Is.EqualTo(1)); Assert.That(command.DbCommandBuildersAndReaders[0].Item1, Is.SameAs(commandBuilderStub)); Assert.That(command.DbCommandBuildersAndReaders[0].Item2, Is.SameAs(_resultRowReaderStub)); }
public IStorageProviderCommand <IEnumerable <IQueryResultRow>, IRdbmsProviderCommandExecutionContext> CreateForCustomQuery(IQuery query) { ArgumentUtility.CheckNotNull("query", query); return(_queryCommandFactory.CreateForCustomQuery(query)); }