Index: test/cctest/test-date.cc |
diff --git a/test/cctest/test-date.cc b/test/cctest/test-date.cc |
index 67b950159292d2e15c648008f2fb7d9fd4f151f4..a43ef0637bf931255d28f2797b1a9fedccbada00 100644 |
--- a/test/cctest/test-date.cc |
+++ b/test/cctest/test-date.cc |
@@ -166,3 +166,31 @@ |
CheckDST(august_20 + 2 * 3600 - 1000); |
CheckDST(august_20); |
} |
+ |
+ |
+TEST(DateCacheVersion) { |
+ FLAG_allow_natives_syntax = true; |
+ v8::Isolate* isolate = CcTest::isolate(); |
+ v8::Isolate::Scope isolate_scope(isolate); |
+ v8::HandleScope scope(isolate); |
+ v8::Local<v8::Context> context = v8::Context::New(isolate); |
+ v8::Context::Scope context_scope(context); |
+ v8::Local<v8::Array> date_cache_version = |
+ v8::Local<v8::Array>::Cast(CompileRun("%DateCacheVersion()")); |
+ |
+ CHECK_EQ(1, static_cast<int32_t>(date_cache_version->Length())); |
+ CHECK(date_cache_version->Get(context, 0).ToLocalChecked()->IsNumber()); |
+ CHECK_EQ(0.0, date_cache_version->Get(context, 0) |
+ .ToLocalChecked() |
+ ->NumberValue(context) |
+ .FromJust()); |
+ |
+ v8::Date::DateTimeConfigurationChangeNotification(isolate); |
+ |
+ CHECK_EQ(1, static_cast<int32_t>(date_cache_version->Length())); |
+ CHECK(date_cache_version->Get(context, 0).ToLocalChecked()->IsNumber()); |
+ CHECK_EQ(1.0, date_cache_version->Get(context, 0) |
+ .ToLocalChecked() |
+ ->NumberValue(context) |
+ .FromJust()); |
+} |