summaryrefslogtreecommitdiffstats
path: root/dom/tests/mochitest/ajax/prototype/test/unit/range_test.js
blob: bcf5acb0b519fbc89c73115658e12423409fe742 (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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
new Test.Unit.Runner({
  
  testInclude: function() {
    this.assert(!$R(0, 0, true).include(0));
    this.assert($R(0, 0, false).include(0));

    this.assert($R(0, 5, true).include(0));
    this.assert($R(0, 5, true).include(4));
    this.assert(!$R(0, 5, true).include(5));

    this.assert($R(0, 5, false).include(0));
    this.assert($R(0, 5, false).include(5));
    this.assert(!$R(0, 5, false).include(6));
  },

  testEach: function() {
    var results = [];
    $R(0, 0, true).each(function(value) {
      results.push(value);
    });

    this.assertEnumEqual([], results);

    results = [];
    $R(0, 3, false).each(function(value) {
      results.push(value);
    });

    this.assertEnumEqual([0, 1, 2, 3], results);
  },

  testAny: function() {
    this.assert(!$R(1, 1, true).any());
    this.assert($R(0, 3, false).any(function(value) {
      return value == 3;
    }));
  },

  testAll: function() {
    this.assert($R(1, 1, true).all());
    this.assert($R(0, 3, false).all(function(value) {
      return value <= 3;
    }));
  },

  testToArray: function() {
    this.assertEnumEqual([], $R(0, 0, true).toArray());
    this.assertEnumEqual([0], $R(0, 0, false).toArray());
    this.assertEnumEqual([0], $R(0, 1, true).toArray());
    this.assertEnumEqual([0, 1], $R(0, 1, false).toArray());
    this.assertEnumEqual([-3, -2, -1, 0, 1, 2], $R(-3, 3, true).toArray());
    this.assertEnumEqual([-3, -2, -1, 0, 1, 2, 3], $R(-3, 3, false).toArray());
  },
  
  testDefaultsToNotExclusive: function() {
    this.assertEnumEqual($R(-3,3), $R(-3,3,false));
  }
});