/**
  *
  * @param boolean $shouldPass
  * @param string $key
  * @param mixed $value
  * @param array $request
  * @param array $fields
  * @dataProvider providerGather
  */
 public function testGather($shouldPass, $key, $value, array $request = array(), array $fields = array())
 {
     $_POST = $request;
     $this->dictionary->gather($fields);
     if ($shouldPass) {
         $this->assertArrayHasKey($key, $this->dictionary->fields);
         $this->assertEquals($this->dictionary->fields[$key], $value);
     } else {
         $this->assertArrayNotHasKey($key, $this->dictionary->fields);
     }
 }
Beispiel #2
0
 /**
  * Handle the POST request
  *
  * @param array $fields
  * @return string|void
  */
 public function handle(array $fields = array())
 {
     if (!$this->hasSubmission()) {
         return '';
     }
     $this->loadDictionary();
     $this->dictionary->gather($fields);
     /* validate fields */
     $this->loadValidator();
     $this->validator->reset();
     $validated = $this->validate($this->config['validate'], $this->config['validateSeparator']);
     if ($validated) {
         $this->postProcess();
     }
     if (!$this->clearFieldsAtEnd) {
         $this->setFieldsAsPlaceholders();
     }
     return '';
 }