From: uberto b. <ub...@us...> - 2005-05-07 08:18:08
|
Update of /cvsroot/instantobjects/Source/Tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11365 Modified Files: TestInstantCurrency.pas Log Message: Simplyfied the tests and added some corner case. Index: TestInstantCurrency.pas =================================================================== RCS file: /cvsroot/instantobjects/Source/Tests/TestInstantCurrency.pas,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** TestInstantCurrency.pas 7 May 2005 04:59:48 -0000 1.1 --- TestInstantCurrency.pas 7 May 2005 08:17:32 -0000 1.2 *************** *** 8,27 **** // Test methods for class TInstantCurrency ! TestTInstantCurrency = class(TTestCase) private FAttrMetadata: TInstantAttributeMetadata; - FConn: TInstantMockConnector; FInstantCurrency: TInstantCurrency; - FOwner: TInstantObject; public procedure SetUp; override; procedure TearDown; override; published - procedure TestAsCurrency; - procedure TestAsFloat; - procedure TestAsInteger; procedure TestAssign; - procedure TestAsString; - procedure TestAsVariant; procedure TestReset; procedure TestValue; --- 8,20 ---- // Test methods for class TInstantCurrency ! TTestInstantCurrency = class(TTestCase) private FAttrMetadata: TInstantAttributeMetadata; FInstantCurrency: TInstantCurrency; public procedure SetUp; override; procedure TearDown; override; published procedure TestAssign; procedure TestReset; procedure TestValue; *************** *** 32,78 **** uses SysUtils, testregistry, InstantClasses; ! procedure TestTInstantCurrency.SetUp; begin - FConn := TInstantMockConnector.Create(nil); - FConn.BrokerClass := TInstantMockBroker; - FOwner := TInstantObject.Create(FConn); FAttrMetadata := TInstantAttributeMetadata.Create(nil); FAttrMetadata.AttributeClass := TInstantCurrency; FAttrMetadata.Name := 'AttrMetadataName'; ! FInstantCurrency := TInstantCurrency.Create(FOwner, FAttrMetadata); FInstantCurrency.Value := 1.3; end; ! procedure TestTInstantCurrency.TearDown; begin FreeAndNil(FInstantCurrency); FreeAndNil(FAttrMetadata); - FreeAndNil(FOwner); - FreeAndNil(FConn); - end; - - procedure TestTInstantCurrency.TestAsCurrency; - begin - FInstantCurrency.AsCurrency := 23.45; - AssertEquals('Set AsCurrency is incorrect!', 23.45, FInstantCurrency.Value); - AssertEquals('Get AsCurrency is incorrect!', 23.45, - FInstantCurrency.AsCurrency); - end; - - procedure TestTInstantCurrency.TestAsFloat; - begin - FInstantCurrency.AsFloat := 89.45; - AssertEquals('Set AsFloat is incorrect!', 89.45, FInstantCurrency.Value); - AssertEquals('Get AsFloat is incorrect!', 89.45, FInstantCurrency.AsFloat); end; ! procedure TestTInstantCurrency.TestAsInteger; ! begin ! FInstantCurrency.AsInteger := 89; ! AssertEquals('Set AsInteger is incorrect!', 89.0, FInstantCurrency.Value); ! AssertEquals('Get AsInteger is incorrect!', 89.0, FInstantCurrency.AsInteger); ! end; ! ! procedure TestTInstantCurrency.TestAssign; var vSource: TInstantCurrency; --- 25,44 ---- uses SysUtils, testregistry, InstantClasses; ! procedure TTestInstantCurrency.SetUp; begin FAttrMetadata := TInstantAttributeMetadata.Create(nil); FAttrMetadata.AttributeClass := TInstantCurrency; FAttrMetadata.Name := 'AttrMetadataName'; ! FInstantCurrency := TInstantCurrency.Create(nil, FAttrMetadata); FInstantCurrency.Value := 1.3; end; ! procedure TTestInstantCurrency.TearDown; begin FreeAndNil(FInstantCurrency); FreeAndNil(FAttrMetadata); end; ! procedure TTestInstantCurrency.TestAssign; var vSource: TInstantCurrency; *************** *** 89,107 **** end; ! procedure TestTInstantCurrency.TestAsString; ! begin ! FInstantCurrency.AsString := '1.3'; ! AssertEquals('Set AsString is incorrect!', 1.3, FInstantCurrency.Value); ! AssertEquals('Get AsString is incorrect!', '1.3', FInstantCurrency.AsString); ! end; ! ! procedure TestTInstantCurrency.TestAsVariant; ! begin ! FInstantCurrency.AsVariant := 15.1; ! AssertEquals('Set AsVariant is incorrect!', 15.1, FInstantCurrency.Value); ! AssertEquals('Get AsVariant is incorrect!', 15.1, FInstantCurrency.AsVariant); ! end; ! ! procedure TestTInstantCurrency.TestReset; begin AssertNotNull('Metadata is nil!', FInstantCurrency.Metadata); --- 55,59 ---- end; ! procedure TTestInstantCurrency.TestReset; begin AssertNotNull('Metadata is nil!', FInstantCurrency.Metadata); *************** *** 110,114 **** AssertEquals('Reset value is incorrect!', 1.3, FInstantCurrency.Value); ! FInstantCurrency.Metadata.DefaultValue := '15.7'; FInstantCurrency.Reset; AssertEquals('Reset value is incorrect!', 15.7, FInstantCurrency.Value); --- 62,66 ---- AssertEquals('Reset value is incorrect!', 1.3, FInstantCurrency.Value); ! FInstantCurrency.Metadata.DefaultValue := '15' + DecimalSeparator + '7'; FInstantCurrency.Reset; AssertEquals('Reset value is incorrect!', 15.7, FInstantCurrency.Value); *************** *** 120,136 **** end; ! procedure TestTInstantCurrency.TestValue; begin ! AssertEquals('Value is incorrect!', 1.3, FInstantCurrency.Value); ! FInstantCurrency.Value := 97.2; ! AssertEquals('Value is incorrect!', 97.2, FInstantCurrency.Value); end; initialization // Register any test cases with the test runner ! {$IFNDEF CURR_TESTS} ! RegisterTests([TestTInstantCurrency]); ! {$ENDIF} end. - \ No newline at end of file --- 72,97 ---- end; ! procedure TTestInstantCurrency.TestValue; ! var ! c: Currency; begin ! c := 123456789012.12345; ! FInstantCurrency.AsCurrency := c; ! AssertEquals(c, FInstantCurrency.Value); ! AssertEquals(c, FInstantCurrency.AsCurrency); ! c := c + 0.0001; ! AssertFalse('Precision limit', c = FInstantCurrency.Value); ! FInstantCurrency.AsCurrency := c; ! c := c + 0.00001; ! AssertEquals('Out of precision limit', c, FInstantCurrency.Value); ! c := -0.0001; ! FInstantCurrency.AsCurrency := c; ! AssertEquals(c, FInstantCurrency.Value); ! AssertFalse(0 = FInstantCurrency.Value); end; initialization // Register any test cases with the test runner ! RegisterTests([TTestInstantCurrency]); end. |