Sha256: 96c75344bf7865d14d57ac8248996da71934bc4b2ab7d7b46758c5a01b3b9c70

Contents?: true

Size: 1.56 KB

Versions: 17

Compression:

Stored size: 1.56 KB

Contents

// ==========================================================================
// Project:   SproutCore Costello - Property Observing Library
// Copyright: ©2006-2009 Sprout Systems, Inc. and contributors.
//            Portions ©2008-2009 Apple Inc. All rights reserved.
// License:   Licened under MIT license (see license.js)
// ==========================================================================

/*globals module test ok equals same CoreTest */

sc_require('debug/test_suites/array/base');

SC.ArraySuite.define(function(T) {
  
  var observer, obj ;
  
  module(T.desc("shiftObject"), {
    setup: function() {
      obj = T.newObject();
      observer = T.observer(obj);
    }
  });

  test("[].shiftObject() => [] + returns undefined + NO notify", function() {
    observer.observe('[]', 'length') ;
    equals(obj.shiftObject(), undefined, 'should return undefined') ;
    T.validateAfter(obj, [], observer, NO, NO);
  });

  test("[X].shiftObject() => [] + notify", function() {
    var exp = T.expected(1)[0];
    
    obj.replace(0,0, [exp]);
    observer.observe('[]', 'length') ;

    equals(obj.shiftObject(), exp, 'should return shifted object') ;
    T.validateAfter(obj, [], observer, YES, YES);
  });

  test("[A,B,C].shiftObject() => [B,C] + notify", function() {
    var before  = T.expected(3),
        value   = before[0],
        after   = before.slice(1);
        
    obj.replace(0,0,before);
    observer.observe('[]', 'length') ;
    equals(obj.shiftObject(), value, 'should return shifted object') ;
    T.validateAfter(obj, after, observer, YES);
  });
  
});

Version data entries

17 entries across 17 versions & 2 rubygems

Version Path
sproutit-sproutcore-1.0.20090721145285 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1046 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1043 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1042 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1037 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1035 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1031 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1030 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1029 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1027 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1028 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1026 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1025 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1024 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1009 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1008 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js
sproutcore-1.0.1003 frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js