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

Unified Diff: third_party/WebKit/Source/core/dom/ScriptRunnerTest.cpp

Issue 2238543002: Instrument parser blocking script execution time. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix test 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: third_party/WebKit/Source/core/dom/ScriptRunnerTest.cpp
diff --git a/third_party/WebKit/Source/core/dom/ScriptRunnerTest.cpp b/third_party/WebKit/Source/core/dom/ScriptRunnerTest.cpp
index 3ab28ef9531f4a7b2e780c1a2d98b80f403f8d9f..c1402a87165741cb1b01b51763158aa556d66dd9 100644
--- a/third_party/WebKit/Source/core/dom/ScriptRunnerTest.cpp
+++ b/third_party/WebKit/Source/core/dom/ScriptRunnerTest.cpp
@@ -70,8 +70,8 @@ public:
TEST_F(ScriptRunnerTest, QueueSingleScript_Async)
{
MockScriptLoader* scriptLoader = MockScriptLoader::create(m_element.get());
- m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoader, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::AsyncExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoader, ScriptRunner::AsyncExecution);
EXPECT_CALL(*scriptLoader, execute());
m_platform.runUntilIdle();
@@ -80,12 +80,12 @@ TEST_F(ScriptRunnerTest, QueueSingleScript_Async)
TEST_F(ScriptRunnerTest, QueueSingleScript_InOrder)
{
MockScriptLoader* scriptLoader = MockScriptLoader::create(m_element.get());
- m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::InOrderExecution);
EXPECT_CALL(*scriptLoader, isReady()).WillOnce(Return(true));
EXPECT_CALL(*scriptLoader, execute());
- m_scriptRunner->notifyScriptReady(scriptLoader, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader, ScriptRunner::InOrderExecution);
m_platform.runUntilIdle();
}
@@ -102,7 +102,7 @@ TEST_F(ScriptRunnerTest, QueueMultipleScripts_InOrder)
scriptLoaders.append(scriptLoader3);
for (ScriptLoader* scriptLoader : scriptLoaders) {
- m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::InOrderExecution);
}
for (size_t i = 0; i < scriptLoaders.size(); ++i) {
@@ -124,7 +124,7 @@ TEST_F(ScriptRunnerTest, QueueMultipleScripts_InOrder)
for (int i = 2; i >= 0; i--) {
isReady[i] = true;
- m_scriptRunner->notifyScriptReady(scriptLoaders[i], ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoaders[i], ScriptRunner::InOrderExecution);
m_platform.runUntilIdle();
}
@@ -141,28 +141,28 @@ TEST_F(ScriptRunnerTest, QueueMixedScripts)
MockScriptLoader* scriptLoader5 = MockScriptLoader::create(m_element.get());
- m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::IN_ORDER_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::IN_ORDER_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader3, ScriptRunner::IN_ORDER_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader4, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader5, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::InOrderExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::InOrderExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader3, ScriptRunner::InOrderExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader4, ScriptRunner::AsyncExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader5, ScriptRunner::AsyncExecution);
EXPECT_CALL(*scriptLoader1, isReady()).WillRepeatedly(Return(true));
EXPECT_CALL(*scriptLoader2, isReady())
.WillRepeatedly(Return(false));
- m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::InOrderExecution);
EXPECT_CALL(*scriptLoader2, isReady()).WillRepeatedly(Return(true));
EXPECT_CALL(*scriptLoader3, isReady())
.WillRepeatedly(Return(false));
- m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::InOrderExecution);
EXPECT_CALL(*scriptLoader3, isReady())
.WillRepeatedly(Return(true));
- m_scriptRunner->notifyScriptReady(scriptLoader3, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader3, ScriptRunner::InOrderExecution);
- m_scriptRunner->notifyScriptReady(scriptLoader4, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoader5, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader4, ScriptRunner::AsyncExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoader5, ScriptRunner::AsyncExecution);
EXPECT_CALL(*scriptLoader1, execute()).WillOnce(Invoke([this] {
m_order.append(1);
@@ -192,21 +192,21 @@ TEST_F(ScriptRunnerTest, QueueReentrantScript_Async)
MockScriptLoader* scriptLoader2 = MockScriptLoader::create(m_element.get());
MockScriptLoader* scriptLoader3 = MockScriptLoader::create(m_element.get());
- m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader3, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::AsyncExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::AsyncExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader3, ScriptRunner::AsyncExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::AsyncExecution);
MockScriptLoader* scriptLoader = scriptLoader2;
EXPECT_CALL(*scriptLoader1, execute()).WillOnce(Invoke([scriptLoader, this] {
m_order.append(1);
- m_scriptRunner->notifyScriptReady(scriptLoader, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader, ScriptRunner::AsyncExecution);
}));
scriptLoader = scriptLoader3;
EXPECT_CALL(*scriptLoader2, execute()).WillOnce(Invoke([scriptLoader, this] {
m_order.append(2);
- m_scriptRunner->notifyScriptReady(scriptLoader, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader, ScriptRunner::AsyncExecution);
}));
EXPECT_CALL(*scriptLoader3, execute()).WillOnce(Invoke([this] {
@@ -235,23 +235,23 @@ TEST_F(ScriptRunnerTest, QueueReentrantScript_InOrder)
EXPECT_CALL(*scriptLoader2, isReady()).WillRepeatedly(Return(true));
EXPECT_CALL(*scriptLoader3, isReady()).WillRepeatedly(Return(true));
- m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::IN_ORDER_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::InOrderExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::InOrderExecution);
MockScriptLoader* scriptLoader = scriptLoader2;
EXPECT_CALL(*scriptLoader1, execute())
.WillOnce(Invoke([scriptLoader, &scriptLoader2, this] {
m_order.append(1);
- m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::IN_ORDER_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::InOrderExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::InOrderExecution);
}));
scriptLoader = scriptLoader3;
EXPECT_CALL(*scriptLoader2, execute())
.WillOnce(Invoke([scriptLoader, &scriptLoader3, this] {
m_order.append(2);
- m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::IN_ORDER_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoader3, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader, ScriptRunner::InOrderExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoader3, ScriptRunner::InOrderExecution);
}));
EXPECT_CALL(*scriptLoader3, execute()).WillOnce(Invoke([this] {
@@ -280,7 +280,7 @@ TEST_F(ScriptRunnerTest, QueueReentrantScript_ManyAsyncScripts)
scriptLoaders[i] = MockScriptLoader::create(m_element.get());
EXPECT_CALL(*scriptLoaders[i], isReady()).WillRepeatedly(Return(true));
- m_scriptRunner->queueScriptForExecution(scriptLoaders[i], ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoaders[i], ScriptRunner::AsyncExecution);
if (i > 0) {
EXPECT_CALL(*scriptLoaders[i], execute()).WillOnce(Invoke([this, i] {
@@ -289,12 +289,12 @@ TEST_F(ScriptRunnerTest, QueueReentrantScript_ManyAsyncScripts)
}
}
- m_scriptRunner->notifyScriptReady(scriptLoaders[0], ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoaders[1], ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoaders[0], ScriptRunner::AsyncExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoaders[1], ScriptRunner::AsyncExecution);
EXPECT_CALL(*scriptLoaders[0], execute()).WillOnce(Invoke([&scriptLoaders, this] {
for (int i = 2; i < 20; i++)
- m_scriptRunner->notifyScriptReady(scriptLoaders[i], ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoaders[i], ScriptRunner::AsyncExecution);
m_order.append(0);
}));
@@ -313,9 +313,9 @@ TEST_F(ScriptRunnerTest, ResumeAndSuspend_InOrder)
MockScriptLoader* scriptLoader2 = MockScriptLoader::create(m_element.get());
MockScriptLoader* scriptLoader3 = MockScriptLoader::create(m_element.get());
- m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::IN_ORDER_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::IN_ORDER_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader3, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::InOrderExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::InOrderExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader3, ScriptRunner::InOrderExecution);
EXPECT_CALL(*scriptLoader1, execute()).WillOnce(Invoke([this] {
m_order.append(1);
@@ -336,17 +336,17 @@ TEST_F(ScriptRunnerTest, ResumeAndSuspend_InOrder)
.WillRepeatedly(Return(true));
EXPECT_CALL(*scriptLoader2, isReady())
.WillRepeatedly(Return(false));
- m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::InOrderExecution);
EXPECT_CALL(*scriptLoader2, isReady())
.WillRepeatedly(Return(true));
EXPECT_CALL(*scriptLoader3, isReady())
.WillRepeatedly(Return(false));
- m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::InOrderExecution);
EXPECT_CALL(*scriptLoader3, isReady())
.WillRepeatedly(Return(true));
- m_scriptRunner->notifyScriptReady(scriptLoader3, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader3, ScriptRunner::InOrderExecution);
m_platform.runSingleTask();
m_scriptRunner->suspend();
@@ -363,13 +363,13 @@ TEST_F(ScriptRunnerTest, ResumeAndSuspend_Async)
MockScriptLoader* scriptLoader2 = MockScriptLoader::create(m_element.get());
MockScriptLoader* scriptLoader3 = MockScriptLoader::create(m_element.get());
- m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader3, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::AsyncExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::AsyncExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader3, ScriptRunner::AsyncExecution);
- m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoader3, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::AsyncExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::AsyncExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoader3, ScriptRunner::AsyncExecution);
EXPECT_CALL(*scriptLoader1, execute())
.WillOnce(Invoke([this] {
@@ -401,8 +401,8 @@ TEST_F(ScriptRunnerTest, LateNotifications)
EXPECT_CALL(*scriptLoader1, isReady()).WillRepeatedly(Return(true));
EXPECT_CALL(*scriptLoader2, isReady()).WillRepeatedly(Return(true));
- m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::IN_ORDER_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::InOrderExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::InOrderExecution);
EXPECT_CALL(*scriptLoader1, execute()).WillOnce(Invoke([this] {
m_order.append(1);
@@ -411,11 +411,11 @@ TEST_F(ScriptRunnerTest, LateNotifications)
m_order.append(2);
}));
- m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::InOrderExecution);
m_platform.runUntilIdle();
// At this moment all tasks can be already executed. Make sure that we do not crash here.
- m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::IN_ORDER_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::InOrderExecution);
m_platform.runUntilIdle();
EXPECT_THAT(m_order, ElementsAre(1, 2));
@@ -429,11 +429,11 @@ TEST_F(ScriptRunnerTest, TasksWithDeadScriptRunner)
EXPECT_CALL(*scriptLoader1, isReady()).WillRepeatedly(Return(true));
EXPECT_CALL(*scriptLoader2, isReady()).WillRepeatedly(Return(true));
- m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->queueScriptForExecution(scriptLoader1, ScriptRunner::AsyncExecution);
+ m_scriptRunner->queueScriptForExecution(scriptLoader2, ScriptRunner::AsyncExecution);
- m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::ASYNC_EXECUTION);
- m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::ASYNC_EXECUTION);
+ m_scriptRunner->notifyScriptReady(scriptLoader1, ScriptRunner::AsyncExecution);
+ m_scriptRunner->notifyScriptReady(scriptLoader2, ScriptRunner::AsyncExecution);
m_scriptRunner.release();

Powered by Google App Engine
This is Rietveld 408576698