Permalink
Browse files

MINOR Added DecimalTest (merged from 2.4)

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@102595 467b73ca-7a2a-4603-9d3b-597d59a354a9
  • Loading branch information...
1 parent 4a2d71a commit 334b83dd2337026c3106bd965cef19fefb1f629a @chillu chillu committed Apr 13, 2010
Showing with 60 additions and 0 deletions.
  1. +57 −0 tests/fieldtypes/DecimalTest.php
  2. +3 −0 tests/fieldtypes/DecimalTest.yml
@@ -0,0 +1,57 @@
+<?php
+/**
+ * @package sapphire
+ * @subpackage tests
+ */
+class DecimalTest extends SapphireTest {
+
+ public static $fixture_file = 'sapphire/tests/fieldtypes/DecimalTest.yml';
+
+ protected $testDataObject;
+
+ protected $extraDataObjects = array(
+ 'DecimalTest_DataObject'
+ );
+
+ public function setUp() {
+ parent::setUp();
+ $this->testDataObject = $this->objFromFixture('DecimalTest_DataObject', 'test-dataobject');
+ }
+
+ public function testDefaultValue() {
+ $this->assertEquals($this->testDataObject->MyDecimal1, 0, 'Database default for Decimal type is 0');
+ }
+
+ public function testSpecifiedDefaultValue() {
+ $this->assertEquals($this->testDataObject->MyDecimal2, 2.5, 'Default value for Decimal type is set to 2.5');
+ }
+
+ public function testInvalidSpecifiedDefaultValue() {
+ $this->assertEquals($this->testDataObject->MyDecimal3, 0, 'Invalid default value for Decimal type is casted to 0');
+ }
+
+ public function testSpecifiedDefaultValueInDefaultsArray() {
+ $this->assertEquals($this->testDataObject->MyDecimal4, 4, 'Default value for Decimal type is set to 4');
+ }
+
+}
+
+/**
+ * @package sapphire
+ * @subpackage tests
+ */
+class DecimalTest_DataObject extends DataObject implements TestOnly {
+
+ public static $db = array(
+ 'Name' => 'Varchar',
+ 'MyDecimal1' => 'Decimal',
+ 'MyDecimal2' => 'Decimal(5,3,2.5)',
+ 'MyDecimal3' => 'Decimal(4,2,"Invalid default value")',
+ 'MyDecimal4' => 'Decimal'
+ );
+
+ public static $defaults = array(
+ 'MyDecimal4' => 4
+ );
+
+}
@@ -0,0 +1,3 @@
+DecimalTest_DataObject:
+ test-dataobject:
+ Name: test

0 comments on commit 334b83d

Please sign in to comment.