| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| /** |
| * Test fixture for print preview utils. |
| * @constructor |
| * @extends {testing.Test} |
| */ |
| function PrintPreviewUtilsUnitTest () { |
| testing.Test.call(this); |
| } |
| |
| PrintPreviewUtilsUnitTest.prototype = { |
| __proto__: testing.Test.prototype, |
| |
| /** @override */ |
| extraLibraries: [ |
| 'print_preview_utils.js', |
| ] |
| }; |
| |
| TEST_F('PrintPreviewUtilsUnitTest', 'IsInteger', function() { |
| assertFalse(isInteger(" abc ")); |
| assertFalse(isInteger("-7")); |
| assertFalse(isInteger("7.0")); |
| assertFalse(isInteger("a7a")); |
| |
| assertTrue(isInteger("0")); |
| assertTrue(isInteger(" 100 ")); |
| assertTrue(isInteger("0055 ")); |
| }); |
| |
| TEST_F('PrintPreviewUtilsUnitTest', 'IsPositiveInteger', function() { |
| assertTrue(isPositiveInteger("100")); |
| assertTrue(isPositiveInteger("0055")); |
| |
| assertFalse(isPositiveInteger("0")); |
| assertFalse(isPositiveInteger("-100")); |
| assertFalse(isPositiveInteger("sdfs")); |
| }); |
| |
| TEST_F('PrintPreviewUtilsUnitTest', 'AreArraysEqual', function() { |
| assertTrue(areArraysEqual([2,4,6,8,10], [2,4,6,8,10])); |
| assertTrue(areArraysEqual([], [])); |
| |
| assertFalse(areArraysEqual([2,4,6,8,10,12], [2,4,6,8,10])); |
| assertFalse(areArraysEqual([], [2,4,6,8,10])); |
| }); |
| |
| TEST_F('PrintPreviewUtilsUnitTest', 'RemoveDuplicates', function() { |
| var array1 = [1,2,2,3,6,6,6,7,9,10]; |
| assertTrue(areArraysEqual(removeDuplicates(array1), [1,2,3,6,7,9,10])); |
| }); |
| |
| TEST_F('PrintPreviewUtilsUnitTest', 'PageRanges', function() { |
| function assertRangesEqual(simpleRange1, range2) { |
| var range1 = [] |
| for (var i = 0; i < simpleRange1.length; i++) { |
| var from; |
| var to; |
| if (Array.isArray(simpleRange1[i])) { |
| from = simpleRange1[i][0]; |
| to = simpleRange1[i][1]; |
| } else { |
| from = simpleRange1[i]; |
| to = simpleRange1[i]; |
| } |
| range1.push({'from': from, 'to': to}); |
| } |
| assertTrue(areRangesEqual(range1, range2)); |
| }; |
| assertRangesEqual([1, 2, 3, 1, 56], |
| pageRangeTextToPageRanges("1,2,3,1,56", 100)); |
| assertRangesEqual([[1, 3],[6, 9], [6, 10]], |
| pageRangeTextToPageRanges("1-3, 6-9,6-10 ", 100)); |
| assertRangesEqual([[10, 100]], |
| pageRangeTextToPageRanges("10-", 100)); |
| assertRangesEqual([[10, 100000]], |
| pageRangeTextToPageRanges("10-100000", 100)); |
| assertRangesEqual([[1, 100]], |
| pageRangeTextToPageRanges("-", 100)); |
| assertRangesEqual([1, 2], |
| pageRangeTextToPageRanges("1,2", undefined)); |
| assertRangesEqual([[1, 1000000000]], |
| pageRangeTextToPageRanges("-", null)); |
| assertRangesEqual([[1, 1000000000]], |
| pageRangeTextToPageRanges("-", 0)); |
| }); |
| |
| TEST_F('PrintPreviewUtilsUnitTest', 'InvalidPageRanges', function() { |
| assertTrue(pageRangeTextToPageRanges("1,100000", 100) == null); |
| assertTrue(pageRangeTextToPageRanges("1,2,0,56", 100) == null); |
| assertTrue(pageRangeTextToPageRanges("-1,1,2,,56", 100) == null); |
| assertTrue(pageRangeTextToPageRanges("1,2,56-40", 100) == null); |
| assertTrue(pageRangeTextToPageRanges("101-110", 100) == null); |
| }); |
| |
| TEST_F('PrintPreviewUtilsUnitTest', 'PageRangeTextToPageList', function() { |
| assertTrue(areArraysEqual([1], |
| pageRangeTextToPageList("1", 10))); |
| assertTrue(areArraysEqual([1,2,3,4], |
| pageRangeTextToPageList("1-4", 10))); |
| assertTrue(areArraysEqual([1,2,3,4,2,3,4], |
| pageRangeTextToPageList("1-4, 2-4", 10))); |
| assertTrue(areArraysEqual([1,2,5,7,8,9,10,2,2,3], |
| pageRangeTextToPageList("1-2, 5, 7-10, 2, 2, 3", |
| 10))); |
| assertTrue(areArraysEqual([5,6,7,8,9,10], |
| pageRangeTextToPageList("5-", 10))); |
| assertTrue(areArraysEqual([], |
| pageRangeTextToPageList("1-4", undefined))); |
| assertTrue(areArraysEqual([1,2,3,4,5,6,7,8,9,10], |
| pageRangeTextToPageList("1-abcd", 10))); |
| }); |
| |
| TEST_F('PrintPreviewUtilsUnitTest', 'PageListToPageSet', function() { |
| assertTrue(areArraysEqual([1,2,3,4], pageListToPageSet([4,3,2,1,1,1]))); |
| assertTrue(areArraysEqual([1,2,3,4], pageListToPageSet([1,2,2,3,4,1,1,1]))); |
| assertTrue(areArraysEqual([], pageListToPageSet([]))); |
| }); |