Sha256: 0f82e178720bc42b2d9df2e1f7f66d31172890840893b1e9d4a98cf955caf88d

Contents?: true

Size: 1.65 KB

Versions: 16

Compression:

Stored size: 1.65 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();
  }
});

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

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

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

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.addEach(input);
  equals(set.get('length'), 4, 'should have correct index count');  
  equals(set.get('max'), 1031, 'max should return 1 past last index');
  same(iter(set), [1000, 1010, 1020, 1030]);
});


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

Version data entries

16 entries across 16 versions & 1 rubygems

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