diff options
Diffstat (limited to 'tests/phpunit/unit/includes/GlobalFunctions/wfStringToBoolTest.php')
-rw-r--r-- | tests/phpunit/unit/includes/GlobalFunctions/wfStringToBoolTest.php | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/tests/phpunit/unit/includes/GlobalFunctions/wfStringToBoolTest.php b/tests/phpunit/unit/includes/GlobalFunctions/wfStringToBoolTest.php new file mode 100644 index 000000000000..b99d695ffc2a --- /dev/null +++ b/tests/phpunit/unit/includes/GlobalFunctions/wfStringToBoolTest.php @@ -0,0 +1,51 @@ +<?php + +/** + * @group GlobalFunctions + * @covers ::wfStringToBool + */ +class WfStringToBoolTest extends MediaWikiUnitTestCase { + + public function getTestCases() { + return [ + [ 'true', true ], + [ 'on', true ], + [ 'yes', true ], + [ 'TRUE', true ], + [ 'YeS', true ], + [ 'On', true ], + [ '1', true ], + [ '+1', true ], + [ '01', true ], + [ '-001', true ], + [ ' 1', true ], + [ '-1 ', true ], + [ '', false ], + [ '0', false ], + [ 'false', false ], + [ 'NO', false ], + [ 'NOT', false ], + [ 'never', false ], + [ '!&', false ], + [ '-0', false ], + [ '+0', false ], + [ 'forget about it', false ], + [ ' on', false ], + [ 'true ', false ], + ]; + } + + /** + * @dataProvider getTestCases + * @param string $str + * @param bool $bool + */ + public function testStr2Bool( $str, $bool ) { + if ( $bool ) { + $this->assertTrue( wfStringToBool( $str ) ); + } else { + $this->assertFalse( wfStringToBool( $str ) ); + } + } + +} |