diff options
author | Ruoxin Xu <ruoxin.xu@mongodb.com> | 2020-02-24 09:54:13 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-03-05 10:09:44 +0000 |
commit | 7c4b875a8858c5bd5efc9bf4f285f7f440fdfdc0 (patch) | |
tree | 2ae597b65bbcdcd7e8f88f519d2e34a04454362c /src/mongo/db/pipeline/document_source_mock.cpp | |
parent | b801dec04f01dfa374a5d73e187ac793ae079dc5 (diff) | |
download | mongo-7c4b875a8858c5bd5efc9bf4f285f7f440fdfdc0.tar.gz |
SERVER-41060 Change query unit tests to not create multiple service contexts
Diffstat (limited to 'src/mongo/db/pipeline/document_source_mock.cpp')
-rw-r--r-- | src/mongo/db/pipeline/document_source_mock.cpp | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/src/mongo/db/pipeline/document_source_mock.cpp b/src/mongo/db/pipeline/document_source_mock.cpp index 70b7dbf4e14..bdc3c5c7e2d 100644 --- a/src/mongo/db/pipeline/document_source_mock.cpp +++ b/src/mongo/db/pipeline/document_source_mock.cpp @@ -37,12 +37,6 @@ namespace mongo { -using boost::intrusive_ptr; -using std::deque; - -DocumentSourceMock::DocumentSourceMock(deque<GetNextResult> results) - : DocumentSourceMock(std::move(results), new ExpressionContextForTest()) {} - DocumentSourceMock::DocumentSourceMock(std::deque<GetNextResult> results, const boost::intrusive_ptr<ExpressionContext>& expCtx) : DocumentSourceQueue(std::move(results), expCtx), @@ -61,33 +55,39 @@ const char* DocumentSourceMock::getSourceName() const { return "mock"; } -intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest(Document doc) { - return new DocumentSourceMock({std::move(doc)}); +boost::intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest( + Document doc, const boost::intrusive_ptr<ExpressionContext>& expCtx) { + return new DocumentSourceMock({std::move(doc)}, expCtx); } -intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest(deque<GetNextResult> results) { - return new DocumentSourceMock(std::move(results)); +boost::intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest( + std::deque<GetNextResult> results, const boost::intrusive_ptr<ExpressionContext>& expCtx) { + return new DocumentSourceMock(std::move(results), expCtx); } -intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest() { - return new DocumentSourceMock(deque<GetNextResult>()); +boost::intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest( + const boost::intrusive_ptr<ExpressionContext>& expCtx) { + return new DocumentSourceMock(std::deque<GetNextResult>(), expCtx); } -intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest(const GetNextResult& result) { - deque<GetNextResult> results = {result}; - return new DocumentSourceMock(std::move(results)); +boost::intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest( + const GetNextResult& result, const boost::intrusive_ptr<ExpressionContext>& expCtx) { + std::deque<GetNextResult> results = {result}; + return new DocumentSourceMock(std::move(results), expCtx); } -intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest(const char* json) { - return createForTest(Document(fromjson(json))); +boost::intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest( + const char* json, const boost::intrusive_ptr<ExpressionContext>& expCtx) { + return createForTest(Document(fromjson(json)), expCtx); } -intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest( - const std::initializer_list<const char*>& jsons) { - deque<GetNextResult> results; +boost::intrusive_ptr<DocumentSourceMock> DocumentSourceMock::createForTest( + const std::initializer_list<const char*>& jsons, + const boost::intrusive_ptr<ExpressionContext>& expCtx) { + std::deque<GetNextResult> results; for (auto&& json : jsons) { results.emplace_back(Document(fromjson(json))); } - return new DocumentSourceMock(std::move(results)); + return new DocumentSourceMock(std::move(results), expCtx); } } // namespace mongo |