Skip to content
This repository has been archived by the owner on Jan 30, 2020. It is now read-only.

Commit

Permalink
Print useful error messages for isValid assertions
Browse files Browse the repository at this point in the history
  • Loading branch information
Maks3w committed Sep 3, 2015
1 parent da2bd8e commit ed43e42
Show file tree
Hide file tree
Showing 6 changed files with 88 additions and 21 deletions.
10 changes: 8 additions & 2 deletions test/ArrayInputTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,10 @@ public function testValidationOperatesOnFilteredValue()
$this->input->getFilterChain()->attach($filter);
$validator = new Validator\Digits();
$this->input->getValidatorChain()->attach($validator);
$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);
}

public function testSpecifyingMessagesToInputReturnsThoseOnFailedValidation()
Expand Down Expand Up @@ -162,7 +165,10 @@ public function testNotAllowEmptyWithFilterConvertsEmptyToNonEmptyIsValid()
->getFilterChain()->attach(new Filter\Callback(function () {
return 'nonempty';
}));
$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);
}

public function testMerge($sourceRawValue = 'bazRawValue')
Expand Down
24 changes: 20 additions & 4 deletions test/BaseInputFilterTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -524,7 +524,10 @@ public function testValidationSkipsFieldsMarkedNotRequiredWhenNoDataPresent()

$filter->setData($data);

$this->assertTrue($filter->isValid(), json_encode($filter->getMessages()));
$this->assertTrue(
$filter->isValid(),
'isValid() value not match. Detail . ' . json_encode($filter->getMessages())
);
$this->assertArrayNotHasKey(
$optionalInputName,
$filter->getValidInput(),
Expand Down Expand Up @@ -649,7 +652,10 @@ public function testIsValidWhenValuesSetOnFilters()

//test invalid with setData
$filter->setData(['foo' => 'thisisavalidstring']);
$this->assertTrue($filter->isValid());
$this->assertTrue(
$filter->isValid(),
'isValid() value not match. Detail . ' . json_encode($filter->getMessages())
);

//test invalid when setting data on actual filter
$filter->get('foo')->setValue('invalid');
Expand All @@ -658,8 +664,18 @@ public function testIsValidWhenValuesSetOnFilters()

//test valid when setting data on actual filter
$filter->get('foo')->setValue('thisisavalidstring');
$this->assertTrue($filter->get('foo')->isValid(), 'Filtered value is not valid');
$this->assertTrue($filter->isValid(), 'Input filter did return value from filter');
$this->assertTrue(
$filter->get('foo')
->isValid(),
'Filtered value is not valid. Detail . ' . json_encode(
$filter->get('foo')
->getMessages()
)
);
$this->assertTrue(
$filter->isValid(),
'Input filter did return value from filter. Detail . ' . json_encode($filter->getMessages())
);
}

/**
Expand Down
30 changes: 24 additions & 6 deletions test/CollectionInputFilterTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,10 @@ public function testCanValidateValidData()

$this->filter->setInputFilter($this->getBaseInputFilter());
$this->filter->setData($this->getValidCollectionData());
$this->assertTrue($this->filter->isValid());
$this->assertTrue(
$this->filter->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->filter->getMessages())
);
}

public function testCanValidateValidDataWithNonConsecutiveKeys()
Expand All @@ -209,7 +212,10 @@ public function testCanValidateValidDataWithNonConsecutiveKeys()
unset($collectionData[0]);
$this->filter->setInputFilter($this->getBaseInputFilter());
$this->filter->setData($collectionData);
$this->assertTrue($this->filter->isValid());
$this->assertTrue(
$this->filter->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->filter->getMessages())
);
}

public function testInvalidDataReturnsFalse()
Expand Down Expand Up @@ -293,7 +299,10 @@ public function testGetValues()
$this->filter->setInputFilter($this->getBaseInputFilter());
$this->filter->setData($this->getValidCollectionData());

$this->assertTrue($this->filter->isValid());
$this->assertTrue(
$this->filter->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->filter->getMessages())
);
$this->assertEquals($expectedData, $this->filter->getValues());

$this->assertCount(2, $this->filter->getValidInput());
Expand Down Expand Up @@ -334,7 +343,10 @@ public function testGetRawValues()
$this->filter->setInputFilter($this->getBaseInputFilter());
$this->filter->setData($this->getValidCollectionData());

$this->assertTrue($this->filter->isValid());
$this->assertTrue(
$this->filter->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->filter->getMessages())
);
$this->assertEquals($expectedData, $this->filter->getRawValues());
}

Expand Down Expand Up @@ -440,7 +452,10 @@ public function testSetValidationGroupUsingFormStyle()
$this->filter->setData($data);
$this->filter->setValidationGroup($formValidationGroup);

$this->assertTrue($this->filter->isValid());
$this->assertTrue(
$this->filter->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->filter->getMessages())
);
}

public function testEmptyCollectionIsValidByDefault()
Expand All @@ -454,7 +469,10 @@ public function testEmptyCollectionIsValidByDefault()
$this->filter->setInputFilter($this->getBaseInputFilter());
$this->filter->setData($data);

$this->assertTrue($this->filter->isValid());
$this->assertTrue(
$this->filter->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->filter->getMessages())
);
}

public function testEmptyCollectionIsNotValidIfRequired()
Expand Down
30 changes: 24 additions & 6 deletions test/FileInputTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,10 @@ function ($value) use ($filterMock) {
);

$this->assertEquals($value, $this->input->getValue());
$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);
$this->assertEquals($newValue, $this->input->getValue());
}

Expand Down Expand Up @@ -97,7 +100,10 @@ function ($value) use ($filterMock) {
);

$this->assertEquals($values, $this->input->getValue());
$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);
$this->assertEquals(
[$newValue, $newValue, $newValue],
$this->input->getValue()
Expand Down Expand Up @@ -158,7 +164,10 @@ function ($value) use ($filterMock) {
'error' => 0,
];
$this->input->setValue($goodValue);
$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);
$this->assertEquals($filteredValue, $this->input->getValue());
}

Expand Down Expand Up @@ -195,7 +204,10 @@ public function testCanValidateArrayOfMultiFileData()
$this->input->setValue($values);
$validator = new Validator\File\Exists();
$this->input->getValidatorChain()->attach($validator);
$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);

// Negative test
$values[1]['tmp_name'] = 'file-not-found';
Expand Down Expand Up @@ -249,7 +261,10 @@ public function testUploadValidatorIsNotAddedWhenIsValidIsCalled()
$validatorChain = $this->input->getValidatorChain();
$this->assertEquals(0, count($validatorChain->getValidators()));

$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);
$this->assertEquals(0, count($validatorChain->getValidators()));
}

Expand All @@ -268,7 +283,10 @@ public function testRequiredUploadValidatorValidatorNotAddedWhenOneExists()

$validatorChain = $this->input->getValidatorChain();
$validatorChain->prependValidator($uploadMock);
$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);

$validators = $validatorChain->getValidators();
$this->assertEquals(1, count($validators));
Expand Down
5 changes: 4 additions & 1 deletion test/InputFilterTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,10 @@ public function testGetValueReturnsArrayIfNestedInputFilters()
];

$this->inputFilter->setData($data);
$this->assertTrue($this->inputFilter->isValid());
$this->assertTrue(
$this->inputFilter->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->inputFilter->getMessages())
);

$this->assertInternalType('array', $this->inputFilter->getValue('people'));
}
Expand Down
10 changes: 8 additions & 2 deletions test/InputTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -239,7 +239,10 @@ public function testValidationOperatesOnFilteredValue()
$this->input->getFilterChain()->attach($filter);
$validator = new Validator\Digits();
$this->input->getValidatorChain()->attach($validator);
$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);
}

public function testSpecifyingMessagesToInputReturnsThoseOnFailedValidation()
Expand Down Expand Up @@ -317,7 +320,10 @@ public function testNotAllowEmptyWithFilterConvertsEmptyToNonEmptyIsValid()
->getFilterChain()->attach(new Filter\Callback(function () {
return 'nonempty';
}));
$this->assertTrue($this->input->isValid());
$this->assertTrue(
$this->input->isValid(),
'isValid() value not match. Detail . ' . json_encode($this->input->getMessages())
);
}

public function testDoNotInjectNotEmptyValidatorIfAnywhereInChain()
Expand Down

0 comments on commit ed43e42

Please sign in to comment.