public void VisitBodyClauses()
        {
            var bodyClauses = new ObservableCollection <IBodyClause> {
                _bodyClauseMock1, _bodyClauseMock2
            };

            using (_mockRepository.Ordered())
            {
                _visitorMock
                .Expect(mock => mock.InvokeVisitBodyClauses(bodyClauses, _queryModel))
                .CallOriginalMethod(OriginalCallOptions.NoExpectation);
                _bodyClauseMock1
                .Expect(mock => mock.Accept(_visitorMock, _queryModel, 0));
                _bodyClauseMock2
                .Expect(mock => mock.Accept(_visitorMock, _queryModel, 1));
            }

            _mockRepository.ReplayAll();

            _visitorMock.InvokeVisitBodyClauses(bodyClauses, _queryModel);

            _mockRepository.VerifyAll();
        }