summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortsepez <tsepez@chromium.org>2016-08-04 12:07:28 -0700
committerCommit bot <commit-bot@chromium.org>2016-08-04 12:07:29 -0700
commit0fa54b80d488571f10d8a94f6740006f0bf4957c (patch)
tree0e4e7359dedcd3821b7a827276e67502de5a3f31
parentbeecc34d2b4b295dcefe4a71772983fbccb50eff (diff)
downloadpdfium-0fa54b80d488571f10d8a94f6740006f0bf4957c.tar.xz
Beef up timer cancellation tests
Adds more questionable invocations of ClearTimeOut(). Also, checking that nothing happened is fragile. Log at least one thing to show that the code ran. Review-Url: https://codereview.chromium.org/2218473002
-rw-r--r--fpdfsdk/fpdfformfill_embeddertest.cpp3
-rw-r--r--testing/resources/bug_620428.in14
-rw-r--r--testing/resources/bug_620428.pdf16
3 files changed, 31 insertions, 2 deletions
diff --git a/fpdfsdk/fpdfformfill_embeddertest.cpp b/fpdfsdk/fpdfformfill_embeddertest.cpp
index e2920e041b..27b889085c 100644
--- a/fpdfsdk/fpdfformfill_embeddertest.cpp
+++ b/fpdfsdk/fpdfformfill_embeddertest.cpp
@@ -130,7 +130,8 @@ TEST_F(FPDFFormFillEmbeddertest, BUG_620428) {
UnloadPage(page);
const auto& alerts = delegate.GetAlerts();
- EXPECT_EQ(0U, alerts.size());
+ ASSERT_EQ(1U, alerts.size());
+ EXPECT_STREQ(L"done", alerts[0].message.c_str());
}
#endif // PDF_ENABLE_V8
diff --git a/testing/resources/bug_620428.in b/testing/resources/bug_620428.in
index 1942305173..050488b1ee 100644
--- a/testing/resources/bug_620428.in
+++ b/testing/resources/bug_620428.in
@@ -73,8 +73,22 @@ function fireInterval() {
}
var timer = app.setTimeOut("fireTimeOut()", 3000);
var interval = app.setInterval("fireInterval()", 1000);
+// Clear timers before they fire.
app.clearTimeOut(timer);
app.clearInterval(interval);
+// Check that clearing a cleared timer is ok.
+app.clearTimeOut(timer);
+app.clearInterval(interval);
+// Check that invoking the wrong clear method is ok
+var timer = app.setTimeOut("fireTimeOut()", 3000);
+var interval = app.setInterval("fireInterval()", 1000);
+app.clearTimeOut(interval);
+app.clearInterval(timer);
+// Check that clearing a non-timer is ok.
+app.clearTimeOut({"size": 42});
+app.clearInterval({"size": 42});
+// Be sure all of this code ran to completion.
+app.alert("done");
endstream
endobj
{{xref}}
diff --git a/testing/resources/bug_620428.pdf b/testing/resources/bug_620428.pdf
index ff625b7a2e..e53ed50e24 100644
--- a/testing/resources/bug_620428.pdf
+++ b/testing/resources/bug_620428.pdf
@@ -74,8 +74,22 @@ function fireInterval() {
}
var timer = app.setTimeOut("fireTimeOut()", 3000);
var interval = app.setInterval("fireInterval()", 1000);
+// Clear timers before they fire.
app.clearTimeOut(timer);
app.clearInterval(interval);
+// Check that clearing a cleared timer is ok.
+app.clearTimeOut(timer);
+app.clearInterval(interval);
+// Check that invoking the wrong clear method is ok
+var timer = app.setTimeOut("fireTimeOut()", 3000);
+var interval = app.setInterval("fireInterval()", 1000);
+app.clearTimeOut(interval);
+app.clearInterval(timer);
+// Check that clearing a non-timer is ok.
+app.clearTimeOut({"size": 42});
+app.clearInterval({"size": 42});
+// Be sure all of this code ran to completion.
+app.alert("done");
endstream
endobj
xref
@@ -135,5 +149,5 @@ trailer <<
/Root 1 0 R
>>
startxref
-1135
+1655
%%EOF