Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2239)

Unified Diff: base/template_util_unittest.cc

Issue 2261793002: Bring the feedback button to the Mac sad tab (Closed) Base URL: https://chromium.googlesource.com/chromium/src@master
Patch Set: Make a cast which only takes enums and numbers, fix nits Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: base/template_util_unittest.cc
diff --git a/base/template_util_unittest.cc b/base/template_util_unittest.cc
index 921596474b6d9a38991506396a1c64148025885d..31808bbde88aa0e4ed4d6ba347ea4b4d9e91bee4 100644
--- a/base/template_util_unittest.cc
+++ b/base/template_util_unittest.cc
@@ -30,6 +30,22 @@ static_assert(!is_non_const_reference<const int&>::value,
"IsNonConstReference");
static_assert(is_non_const_reference<int&>::value, "IsNonConstReference");
+// underlying_number
+enum ClassicEnum : int { CLASSIC_ENUM_A };
+enum class ClassyEnum : int { A };
+
+static_assert(
+ std::is_same<decltype(underlying_number(int64_t(10))), int64_t>::value,
+ "underlying_number: failed to return an integer as its own type.");
+
+static_assert(
+ std::is_integral<decltype(underlying_number(CLASSIC_ENUM_A))>::value,
+ "underlying_number: failed to return an unscoped enum as an integer.");
+
+static_assert(
+ std::is_integral<decltype(underlying_number(ClassyEnum::A))>::value,
+ "underlying_number: failed to return a scoped enum as an integer.");
+
class AssignParent {};
class AssignChild : AssignParent {};

Powered by Google App Engine
This is Rietveld 408576698