Update NotEmptyTest tests to use data providers where possible

Rather than making a dozen or so assertions in a test, converting to @dataProvider tests means we will know each value that fails for each test.

I refactored the tests for the NotEmpty validator to use dataproviders which means it should now show 245 tests with 253 assertions compared to 28 tests with 248 assertions previously.

Additionally, I removed the two test classes that were defined at the end of this file and replaced them with PHPUnit mock objects in the tests where they were being used.