public function Test_of_validatesNumericalityOf() { $Person = new TestPerson(); $Person->validatesNumericalityOf('age'); $this->assertEqual($Person->getErrorsOn('age'), $Person->getDefaultErrorMessageFor('not_a_number')); $Person->clearErrors(); $Person->age = 'text'; $Person->validatesNumericalityOf('age'); $this->assertEqual($Person->getErrorsOn('age'), $Person->getDefaultErrorMessageFor('not_a_number')); $Person->clearErrors(); $Person->age = 15.98; $Person->validatesNumericalityOf('age'); $this->assertFalse($Person->hasErrors()); $Person->clearErrors(); $Person->age = 15.98; $Person->validatesNumericalityOf('age', 'not_valid', true); $this->assertEqual($Person->getErrorsOn('age'), 'not_valid'); $Person->clearErrors(); $Person->age = 18; $Person->validatesNumericalityOf('age'); $this->assertFalse($Person->hasErrors()); $Person->clearErrors(); $Person->age = '18'; $Person->validatesNumericalityOf('age', 'not_valid', true); $this->assertFalse($Person->hasErrors()); $Person->clearErrors(); unset($Person->age); $Person->validatesNumericalityOf('age', 'not_valid', false, true); $this->assertFalse($Person->hasErrors()); $Person->clearErrors(); $Person->age = null; $Person->validatesNumericalityOf('age', 'not_valid', false, false); $this->assertTrue($Person->hasErrors()); }