public function testFloatFilter()
{
$filter = (new GeneralFilterContainer())->addFilter('test1', new FloatFilter())->addFilter('test2', new FloatFilter())->addFilter('test3', new FloatFilter());
if (!$filter instanceof GeneralFilterContainer) {
$this->fail('Type error');
}
$before = ['test1' => '22.7', 'test2' => null, 'test3' => M_E];
$after = $filter($before);
$this->assertSame(['test1' => 22.7, 'test2' => 0.0, 'test3' => M_E], $after);
try {
$typeError = ['test1' => '22', 'test2' => 0, 'test3' => []];
$filter($typeError);
$this->fail('Expected a TypeError');
} catch (\TypeError $ex) {
}
}