Sha256: dc1a3786bce0ff9d806f369f15042946abbdc47fe2e6108021265785b585f586

Contents?: true

Size: 1.65 KB

Versions: 7

Compression:

Stored size: 1.65 KB

Contents

// ==========================================================================
// Project:   SproutCore - JavaScript Application Framework
// Copyright: ©2006-2009 Apple Inc. and contributors.
// License:   Licensed 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

7 entries across 7 versions & 1 rubygems

Version Path
sproutcore-1.4.0.rc.5 lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/addEach.js
sproutcore-1.4.0.rc.4 lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/addEach.js
sproutcore-1.4.0.rc.3 lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/addEach.js
sproutcore-1.4.0.rc.2 lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/addEach.js
sproutcore-1.4.0.rc lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/addEach.js
sproutcore-1.0.1049.pre.2 lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/addEach.js
sproutcore-1.0.1049.pre.1 frameworks/sproutcore/frameworks/runtime/tests/system/index_set/addEach.js