/**
  * testSetRule method
  *
  * @return void
  */
 public function testSetRule()
 {
     $rules = array('notEmpty' => array('rule' => 'notEmpty', 'message' => 'Can not be empty'));
     $Field = new CakeValidationSet('title', $rules);
     $Rule = new CakeValidationRule($rules['notEmpty']);
     $this->assertEquals($Rule, $Field->getRule('notEmpty'));
     $rules = array('validEmail' => array('rule' => 'email', 'message' => 'Invalid email'));
     $Rule = new CakeValidationRule($rules['validEmail']);
     $Field->setRule('validEmail', $Rule);
     $result = $Field->getRules();
     $this->assertEquals(array('notEmpty', 'validEmail'), array_keys($result));
     $rules = array('validEmail' => array('rule' => 'email', 'message' => 'Other message'));
     $Rule = new CakeValidationRule($rules['validEmail']);
     $Field->setRule('validEmail', $Rule);
     $result = $Field->getRules();
     $this->assertEquals(array('notEmpty', 'validEmail'), array_keys($result));
     $result = $Field->getRule('validEmail');
     $this->assertInstanceOf('CakeValidationRule', $result);
     $this->assertEquals('email', $result->rule);
     $this->assertEquals(null, $result->required);
     $this->assertEquals(false, $result->allowEmpty);
     $this->assertEquals(null, $result->on);
     $this->assertEquals(true, $result->last);
     $this->assertEquals('Other message', $result->message);
 }