package tests
{
import mx.rpc.remoting.RemoteObject;
import mx.controls.Alert;
import mx.rpc.events.ResultEvent
import mx.rpc.events.FaultEvent
import mx.collections.ArrayCollection;
public class PrimitiveTest
{
private var summaryObj:ArrayCollection;
private var remotePrimitiveTest:RemoteObject;
private var application:Object;
private var date:Date = new Date();
public function PrimitiveTest(application:Object)
{
this.application = application;
remotePrimitiveTest = new RemoteObject();
remotePrimitiveTest.destination = "PrimitiveTest";
remotePrimitiveTest.addEventListener("fault", onFault);
remotePrimitiveTest.unknownMethod.addEventListener("fault", unknownMethod_Fault);
remotePrimitiveTest.echoInt.addEventListener("result", echoInt_Result);
remotePrimitiveTest.echoLong.addEventListener("result", echoLong_Result);
remotePrimitiveTest.echoShort.addEventListener("result", echoShort_Result);
remotePrimitiveTest.echoByte.addEventListener("result", echoByte_Result);
remotePrimitiveTest.echoDouble.addEventListener("result", echoDouble_Result);
remotePrimitiveTest.echoChar.addEventListener("result", echoChar_Result);
remotePrimitiveTest.echoBoolean.addEventListener("result", echoBoolean_Result);
remotePrimitiveTest.echoDate.addEventListener("result", echoDate_Result);
remotePrimitiveTest.echoNull.addEventListener("result", echoNull_Result);
remotePrimitiveTest.getDateTime.addEventListener("result", echoDateTime_Result);
}
public function onFault (event:FaultEvent):void
{
Alert.show(event.fault.faultString, 'Error');
}
public function unknownMethod_Fault( event:FaultEvent ):void
{
summaryObj.addItem( "success: primitives test - expected unknownMethod fault" );
}
public function runPrimitiveTests(log:ArrayCollection):void
{
summaryObj = log;
remotePrimitiveTest.echoInt( 7 );
remotePrimitiveTest.echoLong( 7777777 );
remotePrimitiveTest.echoShort( 7 );
remotePrimitiveTest.echoByte( 7 );
remotePrimitiveTest.echoDouble( 7777.7777 );
remotePrimitiveTest.echoChar( 'a' );
remotePrimitiveTest.echoBoolean( true );
remotePrimitiveTest.echoDate( new Date( 2004, 1, 1, 1, 1, 1, 1 ) );
remotePrimitiveTest.echoNull( null );
remotePrimitiveTest.getDateTime(date); remotePrimitiveTest.unknownMethod();
}
private function echoDateTime_Result( event:ResultEvent ):void
{
var resultDate:Date = event.result as Date;
if( resultDate.fullYear == date.fullYear && resultDate.month == date.month && resultDate.date == date.date && resultDate.hours == date.hours && resultDate.minutes == date.minutes && resultDate.seconds == date.seconds)
summaryObj.addItem( "success: primitives test - echoDateTime" );
else
summaryObj.addItem( "failure: primitives test - echoDateTime" );
}
private function echoInt_Result( event:ResultEvent ):void
{
if( event.result == 7 )
summaryObj.addItem( "success: primitives test - echoInt" );
else
summaryObj.addItem( "failure: primitives test - echoInt" );
}
private function echoLong_Result( event:ResultEvent ):void
{
if( event.result == 7777777 )
summaryObj.addItem( "success: primitives test - echoLong" );
else
summaryObj.addItem( "failure: primitives test - echoLong" );
}
private function echoShort_Result( event:ResultEvent ):void
{
if( event.result == 7 )
summaryObj.addItem( "success: primitives test - echoShort" );
else
summaryObj.addItem( "failure: primitives test - echoShort" );
}
private function echoByte_Result( event:ResultEvent ):void
{
if( event.result == 7 )
summaryObj.addItem( "success: primitives test - echoByte" );
else
summaryObj.addItem( "failure: primitives test - echoByte" );
}
private function echoDouble_Result( event:ResultEvent ):void
{
if( event.result == 7777.7777 )
summaryObj.addItem( "success: primitives test - echoDouble" );
else
summaryObj.addItem( "failure: primitives test - echoDouble" );
}
private function echoChar_Result( event:ResultEvent ):void
{
if( event.result == 'a' )
summaryObj.addItem( "success: primitives test - echoChar" );
else
summaryObj.addItem( "failure: primitives test - echoChar" );
}
private function echoBoolean_Result( event:ResultEvent ):void
{
if( event.result )
summaryObj.addItem( "success: primitives test - echoBoolean" );
else
summaryObj.addItem( "failure: primitives test - echoBoolean" );
}
private function echoDate_Result( event:ResultEvent ):void
{
var dateObj:Date = new Date( 2004, 1, 1, 1, 1, 1, 1 );
trace( event.result.getTime() );
trace( dateObj.getTime() );
if( event.result.getTime() == dateObj.getTime() )
summaryObj.addItem( "success: primitives test - echoDate" );
else
summaryObj.addItem( "failure: primitives test - echoDate" );
}
private function echoNullableDate_Result( event:ResultEvent ):void
{
var dateObj:Date = new Date( 2004, 1, 1, 1, 1, 1, 1 );
trace( event.result.getTime() );
trace( dateObj.getTime() );
if( event.result.getTime() == dateObj.getTime() )
summaryObj.addItem( "success: primitives test - echoNullableDate" );
else
summaryObj.addItem( "failure: primitives test - echoNullableDate " + event.result.getTime() + " " + dateObj.getTime() );
}
private function echoNull_Result( event:ResultEvent ):void
{
if( event.result == null )
summaryObj.addItem( "success: primitives test - echoNull" );
else
summaryObj.addItem( "failure: primitives test - echoNull" );
}
}
}