summaryrefslogtreecommitdiffstats
path: root/testing/mozbase/moztest/tests/test.py
diff options
context:
space:
mode:
Diffstat (limited to 'testing/mozbase/moztest/tests/test.py')
-rw-r--r--testing/mozbase/moztest/tests/test.py54
1 files changed, 54 insertions, 0 deletions
diff --git a/testing/mozbase/moztest/tests/test.py b/testing/mozbase/moztest/tests/test.py
new file mode 100644
index 0000000000..b2c2e7ff18
--- /dev/null
+++ b/testing/mozbase/moztest/tests/test.py
@@ -0,0 +1,54 @@
+# 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/.
+
+import math
+import time
+
+import mozunit
+import pytest
+from moztest.results import TestContext, TestResult, TestResultCollection
+
+
+def test_results():
+ with pytest.raises(AssertionError):
+ TestResult("test", result_expected="hello")
+ t = TestResult("test")
+ with pytest.raises(ValueError):
+ t.finish(result="good bye")
+
+
+def test_time():
+ now = time.time()
+ t = TestResult("test")
+ time.sleep(1)
+ t.finish("PASS")
+ duration = time.time() - now
+ assert math.fabs(duration - t.duration) < 1
+
+
+def test_custom_time():
+ t = TestResult("test", time_start=0)
+ t.finish(result="PASS", time_end=1000)
+ assert t.duration == 1000
+
+
+def test_unique_contexts():
+ c1 = TestContext("host1")
+ c2 = TestContext("host2")
+ c3 = TestContext("host2")
+ c4 = TestContext("host1")
+
+ t1 = TestResult("t1", context=c1)
+ t2 = TestResult("t2", context=c2)
+ t3 = TestResult("t3", context=c3)
+ t4 = TestResult("t4", context=c4)
+
+ collection = TestResultCollection("tests")
+ collection.extend([t1, t2, t3, t4])
+
+ assert len(collection.contexts) == 2
+
+
+if __name__ == "__main__":
+ mozunit.main()