Sha256: f8dd4214a46960389f93ff121f1d85422b8ec9f5d978b1b9534b72375db9821c

Contents?: true

Size: 1.68 KB

Versions: 2

Compression:

Stored size: 1.68 KB

Contents

package org.osflash.signals
{
	import asunit.asserts.*;
	import asunit.framework.IAsync;

	public class SignalDispatchNonEventTest
	{	
	    [Inject]
	    public var async:IAsync;
	    
		public var completed:Signal;

		[Before]
		public function setUp():void
		{
			completed = new Signal(Date);
		}

		[After]
		public function tearDown():void
		{
			completed.removeAll();
			completed = null;
		}
		
		/**
		 * Captures bug where dispatching 0 was considered null.
		 */
		[Test]
		public function dispatch_zero_should_call_listener_with_zero():void
		{
			completed = new Signal(Number);
			completed.add( async.add(onZero, 10) );
			completed.dispatch(0);
		}
		
		private function onZero(num:Number):void
		{
			assertEquals(0, num);
		}
		//////
		[Test]
		public function dispatch_2_zeroes_should_call_listener_with_2_zeroes():void
		{
			completed = new Signal(Number, Number);
			completed.add( async.add(onZeroZero, 10) );
			completed.dispatch(0, 0);
		}
		
		private function onZeroZero(a:Object, b:Object):void
		{
			assertEquals(0, a);
			assertEquals(0, b);
		}
		//////
		[Test]
		public function dispatch_null_should_call_listener_with_null():void
		{
			completed.addOnce( async.add(checkNullDate, 10) );
			completed.dispatch(null);
		}
		
		private function checkNullDate(date:Date):void
		{
			assertNull(date);
		}
		//////
		[Test]
		public function dispatch_null_through_int_Signal_should_be_autoconverted_to_zero():void
		{
			completed = new Signal(int);
			completed.addOnce( async.add(checkNullConvertedToZero, 10) );
			completed.dispatch(null);
		}
		
		private function checkNullConvertedToZero(intValue:int):void
		{
			assertEquals('null was converted to 0', 0, intValue);
		}
	}
}

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
as3signals-0.7.1 tests/org/osflash/signals/SignalDispatchNonEventTest.as
as3signals-0.7.0 tests/org/osflash/signals/SignalDispatchNonEventTest.as