Squashed 'third_party/optional/' content from commit 1baad184f
Change-Id: I9b2473a84dcf6d9892f1f7a9fd21b340796b6ff5
git-subtree-dir: third_party/optional
git-subtree-split: 1baad184f022a3a7502db094a984a86adedf9626
diff --git a/tests/emplace.cpp b/tests/emplace.cpp
new file mode 100644
index 0000000..0a87983
--- /dev/null
+++ b/tests/emplace.cpp
@@ -0,0 +1,13 @@
+#include "catch.hpp"
+#include "optional.hpp"
+#include <utility>
+#include <tuple>
+
+TEST_CASE("Emplace", "[emplace]") {
+ tl::optional<std::pair<std::pair<int,int>, std::pair<double, double>>> i;
+ i.emplace(std::piecewise_construct, std::make_tuple(0,2), std::make_tuple(3,4));
+ REQUIRE(i->first.first == 0);
+ REQUIRE(i->first.second == 2);
+ REQUIRE(i->second.first == 3);
+ REQUIRE(i->second.second == 4);
+}