TEST_F(FPDFFormFillEmbeddertest, BUG_507316) { EmbedderTestTimerHandlingDelegate delegate; SetDelegate(&delegate); EXPECT_TRUE(OpenDocument("testing/resources/bug_507316.pdf")); FPDF_PAGE page = LoadAndCachePage(2); EXPECT_NE(nullptr, page); DoOpenActions(); delegate.AdvanceTime(4000); UnloadPage(page); }
TEST_F(FPDFFormFillEmbeddertest, BUG_487928) { EmbedderTestTimerHandlingDelegate delegate; SetDelegate(&delegate); EXPECT_TRUE(OpenDocument("bug_487928.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_TRUE(page); DoOpenActions(); delegate.AdvanceTime(5000); UnloadPage(page); }
TEST_F(FPDFFormFillEmbeddertest, BUG_634716) { EmbedderTestTimerHandlingDelegate delegate; SetDelegate(&delegate); EXPECT_TRUE(OpenDocument("bug_634716.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_TRUE(page); DoOpenActions(); // Timers fire at most once per AdvanceTime(), allow intervals // to fire several times if possible. delegate.AdvanceTime(1000); delegate.AdvanceTime(1000); delegate.AdvanceTime(1000); delegate.AdvanceTime(1000); delegate.AdvanceTime(1000); UnloadPage(page); const auto& alerts = delegate.GetAlerts(); EXPECT_EQ(2U, alerts.size()); }
TEST_F(FPDFFormFillEmbeddertest, BUG_551248) { // Test that timers fire once and intervals fire repeatedly. EmbedderTestTimerHandlingDelegate delegate; SetDelegate(&delegate); EXPECT_TRUE(OpenDocument("bug_551248.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_TRUE(page); DoOpenActions(); const auto& alerts = delegate.GetAlerts(); EXPECT_EQ(0U, alerts.size()); delegate.AdvanceTime(1000); EXPECT_EQ(0U, alerts.size()); // nothing fired. delegate.AdvanceTime(1000); EXPECT_EQ(1U, alerts.size()); // interval fired. delegate.AdvanceTime(1000); EXPECT_EQ(2U, alerts.size()); // timer fired. delegate.AdvanceTime(1000); EXPECT_EQ(3U, alerts.size()); // interval fired again. delegate.AdvanceTime(1000); EXPECT_EQ(3U, alerts.size()); // nothing fired. delegate.AdvanceTime(1000); EXPECT_EQ(4U, alerts.size()); // interval fired again. delegate.AdvanceTime(1000); EXPECT_EQ(4U, alerts.size()); // nothing fired. UnloadPage(page); ASSERT_EQ(4U, alerts.size()); // nothing else fired. EXPECT_STREQ(L"interval fired", alerts[0].message.c_str()); EXPECT_STREQ(L"Alert", alerts[0].title.c_str()); EXPECT_EQ(0, alerts[0].type); EXPECT_EQ(0, alerts[0].icon); EXPECT_STREQ(L"timer fired", alerts[1].message.c_str()); EXPECT_STREQ(L"Alert", alerts[1].title.c_str()); EXPECT_EQ(0, alerts[1].type); EXPECT_EQ(0, alerts[1].icon); EXPECT_STREQ(L"interval fired", alerts[2].message.c_str()); EXPECT_STREQ(L"Alert", alerts[2].title.c_str()); EXPECT_EQ(0, alerts[2].type); EXPECT_EQ(0, alerts[2].icon); EXPECT_STREQ(L"interval fired", alerts[3].message.c_str()); EXPECT_STREQ(L"Alert", alerts[3].title.c_str()); EXPECT_EQ(0, alerts[3].type); EXPECT_EQ(0, alerts[3].icon); }
TEST_F(FPDFFormFillEmbeddertest, BUG_620428) { // Test that timers and intervals are cancelable. EmbedderTestTimerHandlingDelegate delegate; SetDelegate(&delegate); EXPECT_TRUE(OpenDocument("bug_620428.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_TRUE(page); DoOpenActions(); delegate.AdvanceTime(5000); UnloadPage(page); const auto& alerts = delegate.GetAlerts(); ASSERT_EQ(1U, alerts.size()); EXPECT_STREQ(L"done", alerts[0].message.c_str()); }