Fix folly::Partial copy/move construction
[folly.git] / folly / test / PartialTest.cpp
index 1d19e020d3734b67bd9899d10c2f4419d5089f17..cbe1851bbc9d121b6ab7ac3f83401dbe205643aa 100644 (file)
@@ -16,6 +16,7 @@
 
 #include <memory>
 
+#include <folly/Function.h>
 #include <folly/Partial.h>
 
 #include <folly/portability/GTest.h>
@@ -132,3 +133,15 @@ TEST(Partial, MoveOnly) {
 
   EXPECT_EQ(560, *result);
 }
+
+TEST(Partial, WrapInStdFunction) {
+  auto p1 = partial(&add3, 2);
+  std::function<int(int, int)> func = p1;
+  EXPECT_EQ(234, func(3, 4));
+}
+
+TEST(Partial, WrapInFollyFunction) {
+  auto p1 = partial(&add3, 2);
+  folly::Function<int(int, int)> func = p1;
+  EXPECT_EQ(234, func(3, 4));
+}