From 98862d9ce7246877646f94bc6b2afbff9fbeb864 Mon Sep 17 00:00:00 2001 From: Margaret Leibovic Date: Tue, 5 Nov 2013 15:24:21 -0800 Subject: [PATCH] Bug 934678 - Write test for Home.banner API. r=wesj --- mobile/android/base/tests/robocop.ini | 1 + .../roboextender/robocop_home_banner.html | 38 +++++++++++++++++++ .../android/base/tests/testHomeBanner.java.in | 38 +++++++++++++++++++ 3 files changed, 77 insertions(+) create mode 100644 mobile/android/base/tests/roboextender/robocop_home_banner.html create mode 100644 mobile/android/base/tests/testHomeBanner.java.in diff --git a/mobile/android/base/tests/robocop.ini b/mobile/android/base/tests/robocop.ini index cf15e78977b3..7b825e306812 100644 --- a/mobile/android/base/tests/robocop.ini +++ b/mobile/android/base/tests/robocop.ini @@ -57,6 +57,7 @@ skip-if = processor == "x86" [testPrivateBrowsing] [testReaderMode] [testGetUserMedia] +[testHomeBanner] # Used for Talos, please don't use in mochitest #[testPan] diff --git a/mobile/android/base/tests/roboextender/robocop_home_banner.html b/mobile/android/base/tests/roboextender/robocop_home_banner.html new file mode 100644 index 000000000000..9ddaff91bfd1 --- /dev/null +++ b/mobile/android/base/tests/roboextender/robocop_home_banner.html @@ -0,0 +1,38 @@ + + + HomeBanner test page + + + + + + + diff --git a/mobile/android/base/tests/testHomeBanner.java.in b/mobile/android/base/tests/testHomeBanner.java.in new file mode 100644 index 000000000000..1bc94f6e1096 --- /dev/null +++ b/mobile/android/base/tests/testHomeBanner.java.in @@ -0,0 +1,38 @@ +#filter substitution +package @ANDROID_PACKAGE_NAME@.tests; + +import @ANDROID_PACKAGE_NAME@.*; + +public class testHomeBanner extends BaseTest { + + private static final String TEST_URL = "chrome://roboextender/content/robocop_home_banner.html"; + private static final String TEXT = "The quick brown fox jumps over the lazy dog."; + + @Override + protected int getTestType() { + return TEST_MOCHITEST; + } + + public void testHomeBanner() { + blockForGeckoReady(); + + Actions.EventExpecter eventExpecter = mActions.expectGeckoEvent("TestHomeBanner:MessageAdded"); + + // Add a message to the home banner + inputAndLoadUrl(TEST_URL + "#addMessage"); + eventExpecter.blockForEvent(); + + // Load about:home, and test to make sure the onshown handler is called + eventExpecter = mActions.expectGeckoEvent("TestHomeBanner:MessageShown"); + inputAndLoadUrl("about:home"); + eventExpecter.blockForEvent(); + + // Verify that the correct message text showed up in the banner + mAsserter.ok(waitForText(TEXT), "banner text", "correct text appeared in the home banner"); + + // Test to make sure the onclick handler is called + eventExpecter = mActions.expectGeckoEvent("TestHomeBanner:MessageClicked"); + mSolo.clickOnText(TEXT); + eventExpecter.blockForEvent(); + } +}