summaryrefslogtreecommitdiffstats
path: root/browser/components/downloads/test/unit/test_DownloadsCommon.js
blob: 46afbaef9767fe377d8824c653ec3602a716d3bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
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");
}