summaryrefslogtreecommitdiffstats
path: root/browser/components/downloads/test/unit/test_DownloadsCommon.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/downloads/test/unit/test_DownloadsCommon.js')
-rw-r--r--browser/components/downloads/test/unit/test_DownloadsCommon.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/browser/components/downloads/test/unit/test_DownloadsCommon.js b/browser/components/downloads/test/unit/test_DownloadsCommon.js
new file mode 100644
index 000000000..46afbaef9
--- /dev/null
+++ b/browser/components/downloads/test/unit/test_DownloadsCommon.js
@@ -0,0 +1,37 @@
+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
+/* vim: set ts=2 et sw=2 tw=80: */
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+/**
+ * Tests for the functions located directly in the "DownloadsCommon" object.
+ */
+
+function testFormatTimeLeft(aSeconds, aExpectedValue, aExpectedUnitString)
+{
+ let expected = "";
+ if (aExpectedValue) {
+ // Format the expected result based on the current language.
+ expected = DownloadsCommon.strings[aExpectedUnitString](aExpectedValue);
+ }
+ do_check_eq(DownloadsCommon.formatTimeLeft(aSeconds), expected);
+}
+
+function run_test()
+{
+ testFormatTimeLeft( 0, "", "");
+ testFormatTimeLeft( 1, "1", "shortTimeLeftSeconds");
+ testFormatTimeLeft( 29, "29", "shortTimeLeftSeconds");
+ testFormatTimeLeft( 30, "30", "shortTimeLeftSeconds");
+ testFormatTimeLeft( 31, "1", "shortTimeLeftMinutes");
+ testFormatTimeLeft( 60, "1", "shortTimeLeftMinutes");
+ testFormatTimeLeft( 89, "1", "shortTimeLeftMinutes");
+ testFormatTimeLeft( 90, "2", "shortTimeLeftMinutes");
+ testFormatTimeLeft( 91, "2", "shortTimeLeftMinutes");
+ testFormatTimeLeft( 3600, "1", "shortTimeLeftHours");
+ testFormatTimeLeft( 86400, "24", "shortTimeLeftHours");
+ testFormatTimeLeft( 169200, "47", "shortTimeLeftHours");
+ testFormatTimeLeft( 172800, "2", "shortTimeLeftDays");
+ testFormatTimeLeft(8553600, "99", "shortTimeLeftDays");
+ testFormatTimeLeft(8640000, "99", "shortTimeLeftDays");
+}