summaryrefslogtreecommitdiffstats
path: root/testing/marionette/harness/marionette_harness/tests/unit/test_log.py
diff options
context:
space:
mode:
Diffstat (limited to 'testing/marionette/harness/marionette_harness/tests/unit/test_log.py')
-rw-r--r--testing/marionette/harness/marionette_harness/tests/unit/test_log.py64
1 files changed, 64 insertions, 0 deletions
diff --git a/testing/marionette/harness/marionette_harness/tests/unit/test_log.py b/testing/marionette/harness/marionette_harness/tests/unit/test_log.py
new file mode 100644
index 000000000..dd3cf82b4
--- /dev/null
+++ b/testing/marionette/harness/marionette_harness/tests/unit/test_log.py
@@ -0,0 +1,64 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+from marionette_harness import MarionetteTestCase
+
+
+class TestLog(MarionetteTestCase):
+ def setUp(self):
+ MarionetteTestCase.setUp(self)
+ # clears log cache
+ self.marionette.get_logs()
+
+ def test_log(self):
+ self.marionette.log("foo")
+ logs = self.marionette.get_logs()
+ self.assertEqual("INFO", logs[0][0])
+ self.assertEqual("foo", logs[0][1])
+
+ def test_log_level(self):
+ self.marionette.log("foo", "ERROR")
+ logs = self.marionette.get_logs()
+ self.assertEqual("ERROR", logs[0][0])
+ self.assertEqual("foo", logs[0][1])
+
+ def test_clear(self):
+ self.marionette.log("foo")
+ self.assertEqual(1, len(self.marionette.get_logs()))
+ self.assertEqual(0, len(self.marionette.get_logs()))
+
+ def test_multiple_entries(self):
+ self.marionette.log("foo")
+ self.marionette.log("bar")
+ self.assertEqual(2, len(self.marionette.get_logs()))
+
+ def test_log_from_sync_script(self):
+ self.marionette.execute_script("log('foo')")
+ logs = self.marionette.get_logs()
+ self.assertEqual("INFO", logs[0][0])
+ self.assertEqual("foo", logs[0][1])
+
+ def test_log_from_sync_script_level(self):
+ self.marionette.execute_script("log('foo', 'ERROR')")
+ logs = self.marionette.get_logs()
+ self.assertEqual("ERROR", logs[0][0])
+ self.assertEqual("foo", logs[0][1])
+
+ def test_log_from_async_script(self):
+ self.marionette.execute_async_script("log('foo'); arguments[0]();")
+ logs = self.marionette.get_logs()
+ self.assertEqual("INFO", logs[0][0])
+ self.assertEqual("foo", logs[0][1])
+
+ def test_log_from_async_script_variable_arguments(self):
+ self.marionette.execute_async_script("log('foo', 'ERROR'); arguments[0]();")
+ logs = self.marionette.get_logs()
+ self.assertEqual("ERROR", logs[0][0])
+ self.assertEqual("foo", logs[0][1])
+
+
+class TestLogChrome(TestLog):
+ def setUp(self):
+ TestLog.setUp(self)
+ self.marionette.set_context("chrome")