Sha256: 155fdca7f4b8cae82e81f69ec29c3c818b5e9528c13cce60ccddd25ae653fcd1

Contents?: true

Size: 1.68 KB

Versions: 18

Compression:

Stored size: 1.68 KB

Contents

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

/*global module test equals context ok same */

var view ;
module("SC.View#parentViewDidChange", {
	setup: function() {
		view = SC.View.create();		
	}
});

test("invokes updateLayerLocationIfNeeded at end of runloop if has layer", function() {
	
	view.createLayer();
	ok(view.get('layer'), 'precond - has layer');
	
	var runCount = 0;
	view.updateLayerLocationIfNeeded = function() { runCount++; };
	
	SC.RunLoop.begin();
	view.parentViewDidChange();
	SC.RunLoop.end();

	equals(runCount, 1, 'did invoke');
	
});

test("invokes updateLayerLocationIfNeeded only once no matter how many times it is run", function() {
	
	view.createLayer();
	ok(view.get('layer'), 'precond - has layer');
	
	var runCount = 0;
	view.updateLayerLocationIfNeeded = function() { runCount++; };
	
	SC.RunLoop.begin();
	view.parentViewDidChange();
	view.parentViewDidChange();
	view.parentViewDidChange();
	SC.RunLoop.end();

	equals(runCount, 1, 'did invoke once');
	
});

test("calls recomputeIsVisibleInWindow each time it is called", function() {

	var runCount = 0;
	view.recomputeIsVisibleInWindow = function() { runCount++; };
	
	SC.RunLoop.begin();
	view.parentViewDidChange();
	view.parentViewDidChange();
	view.parentViewDidChange();
	SC.RunLoop.end();

	equals(runCount, 3, 'did invoke each time');	
});

test("returns receiver", function() {
	equals(view.parentViewDidChange(), view, 'receiver');
});

Version data entries

18 entries across 18 versions & 2 rubygems

Version Path
spade-0.0.1 sproutcore/frameworks/core_foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.5.0.pre.5 lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.5.0.pre.4.1 lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.5.0.pre.4 lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.5.0.pre.3 lib/frameworks/sproutcore/frameworks/amber/tests/views/view/parentViewDidChange.js
sproutcore-1.4.5 lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.5-java lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.4-java lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.4 lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.3.1 lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.3-java lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.3 lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.2-java lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.2 lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.1-java lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.1 lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.0-java lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js
sproutcore-1.4.0 lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js