#include <gtest/gtest.h>
#include <thread>
+#include <folly/Memory.h>
#include <folly/io/async/EventBase.h>
#include <folly/io/async/Request.h>
EXPECT_EQ(nullptr, RequestContext::get()->getContextData("test"));
RequestContext::get()->setContextData(
- "test",
- std::unique_ptr<TestData>(new TestData(10)));
+ "test", folly::make_unique<TestData>(10));
base.runInEventBaseThread([&](){
EXPECT_TRUE(RequestContext::get() != nullptr);
auto data = dynamic_cast<TestData*>(
EXPECT_TRUE(RequestContext::get() != nullptr);
RequestContext::get()->setContextData(
- "test", std::unique_ptr<TestData>(new TestData(10)));
+ "test", folly::make_unique<TestData>(10));
EXPECT_FALSE(RequestContext::get()->setContextDataIfAbsent(
- "test", std::unique_ptr<TestData>(new TestData(20))));
+ "test", folly::make_unique<TestData>(20)));
EXPECT_EQ(10,
dynamic_cast<TestData*>(
RequestContext::get()->getContextData("test"))->data_);
EXPECT_TRUE(RequestContext::get()->setContextDataIfAbsent(
- "test2", std::unique_ptr<TestData>(new TestData(20))));
+ "test2", folly::make_unique<TestData>(20)));
EXPECT_EQ(20,
dynamic_cast<TestData*>(
RequestContext::get()->getContextData("test2"))->data_);
TEST(RequestContext, testSetUnset) {
RequestContext::create();
auto ctx1 = RequestContext::saveContext();
- ctx1->setContextData("test", std::unique_ptr<TestData>(new TestData(10)));
+ ctx1->setContextData("test", folly::make_unique<TestData>(10));
auto testData1 = dynamic_cast<TestData*>(ctx1->getContextData("test"));
// Override RequestContext
RequestContext::create();
auto ctx2 = RequestContext::saveContext();
- ctx2->setContextData("test", std::unique_ptr<TestData>(new TestData(20)));
+ ctx2->setContextData("test", folly::make_unique<TestData>(20));
auto testData2 = dynamic_cast<TestData*>(ctx2->getContextData("test"));
// Check ctx1->onUnset was called
EXPECT_EQ(1, testData2->set_);
EXPECT_EQ(1, testData2->unset_);
}
-
-int main(int argc, char** argv) {
- testing::InitGoogleTest(&argc, argv);
- google::InitGoogleLogging(argv[0]);
- google::ParseCommandLineFlags(&argc, &argv, true);
-
- return RUN_ALL_TESTS();
-}