コード例 #1
0
ファイル: StringFieldSpec.php プロジェクト: jonfm/domin
 function inflatesPrimitiveValues()
 {
     $param = new Parameter('foo', new StringType());
     $this->assert($this->field->inflate($param, 'foo'), 'foo');
     $this->assert($this->field->inflate($param, ''), null);
     $this->assert($this->field->inflate($param, 'some <html>'), 'some <html>');
 }
コード例 #2
0
ファイル: NumberFieldSpec.php プロジェクト: jonfm/domin
 function inflatesPrimitiveValues()
 {
     $param = new Parameter('foo', new IntegerType());
     $this->assert($this->field->inflate($param, '1A'), 1);
     $this->assert($this->field->inflate($param, ''), 0);
     $this->assert($this->field->inflate($param, 'foo'), 0);
 }
コード例 #3
0
ファイル: ArrayFieldSpec.php プロジェクト: jonfm/domin
 function inflatesList()
 {
     Mockster::stub($this->mockster->inflate(Argument::any(), Argument::any()))->will()->forwardTo(function (Parameter $p, $v) {
         return $p->getName() . '_' . $v;
     });
     $param = new Parameter('foo', new ArrayType(new StringType()));
     $this->assert($this->field->inflate($param, new Liste(['ignored', 'one', 'two'])), ['foo_one', 'foo_two']);
 }
コード例 #4
0
ファイル: NullableFieldSpec.php プロジェクト: jonfm/domin
 function inflateValues()
 {
     M::stub($this->inside->inflate(Arg::any(), Arg::any()))->will()->forwardTo(function (Parameter $p, $v) {
         return $p->getName() . '_' . $v;
     });
     $this->assert($this->field->inflate($this->param('foo'), 'bar'), 'foo_bar');
     $this->assert($this->field->inflate($this->param('foo'), null), null);
     $this->assert($this->field->inflate($this->param('foo'), NullableField::NULL_VALUE), null);
 }
コード例 #5
0
ファイル: AdapterField.php プロジェクト: rtens/domin
 /**
  * @param Parameter $parameter
  * @param string $serialized
  * @return mixed
  */
 public function inflate(Parameter $parameter, $serialized)
 {
     $parameter = call_user_func($this->transformParameter, $parameter);
     $inflated = $this->field->inflate($parameter, $serialized);
     return call_user_func($this->afterInflate, $inflated);
 }