Sha256: db1c910069f8620fa5ad1396fd9a6b0b25f4422320a816dad2b136fd722736b6

Contents?: true

Size: 1.63 KB

Versions: 16

Compression:

Stored size: 1.63 KB

Contents

// ==========================================================================
// Project:   SproutCore - JavaScript Application Framework
// Copyright: ©2006-2009 Apple Inc. and contributors.
// License:   Licened under MIT license (see license.js)
// ==========================================================================

/*global module test equals context ok same */
var set ;
module("SC.IndexSet#addEach", {
  setup: function() {
    set = SC.IndexSet.create().add(1000,2).add(1010).add(1020).add(1030);
  }
});

function iter(s) {
  var ret = [];
  set.forEach(function(k) { ret.push(k); });
  return ret ;
}

// ..........................................................
// BASIC ADDS
// 

test("should iterate over an array", function() {
  set.removeEach([1000, 1010, 1020, 1030]);
  equals(set.get('length'), 1, 'should have correct index count');  
  equals(set.get('max'), 1002, 'max should return 1 past last index');
  same(iter(set), [1001]);
});

test("adding should iterate over a set", function() {
  // add out of order...
  var input = SC.Set.create().add(1030).add(1010).add(1020).add(1000);
  set.removeEach(input);
  equals(set.get('length'), 1, 'should have correct index count');  
  equals(set.get('max'), 1002, 'max should return 1 past last index');
  same(iter(set), [1001]);
});


test("adding should iterate over a indexset", function() {
  // add out of order...
  var input = SC.IndexSet.create().add(1000).add(1010).add(1020).add(1030);
  set.removeEach(input);
  equals(set.get('length'), 1, 'should have correct index count');  
  equals(set.get('max'), 1002, 'max should return 1 past last index');
  same(iter(set), [1001]);
});

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
sproutcore-1.0.1046 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1043 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1042 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1037 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1035 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1031 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1030 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1029 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1027 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1028 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1026 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1025 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1024 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1009 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1008 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js
sproutcore-1.0.1003 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js