@@ -11,30 +11,41 @@ class Options extends \splitbrain\phpcli\Options
11
11
class OptionsTest extends \PHPUnit_Framework_TestCase
12
12
{
13
13
14
- function test_simpleshort ()
15
- {
14
+ /**
15
+ * @dataProvider optionDataProvider
16
+ *
17
+ * @param string $option
18
+ * @param string $value
19
+ * @param string $argument
20
+ */
21
+ function test_optionvariants (
22
+ $ option ,
23
+ $ value ,
24
+ $ argument
25
+ ) {
16
26
$ options = new Options ();
17
27
$ options ->registerOption ('exclude ' , 'exclude files ' , 'x ' , 'file ' );
18
28
19
- $ options ->args = array (' -x ' , ' foo ' , ' bang ' );
29
+ $ options ->args = array ($ option , $ value , $ argument );
20
30
$ options ->parseOptions ();
21
31
22
- $ this ->assertEquals (' foo ' , $ options ->getOpt ('exclude ' ));
23
- $ this ->assertEquals (array (' bang ' ), $ options ->args );
32
+ $ this ->assertEquals ($ value , $ options ->getOpt ('exclude ' ));
33
+ $ this ->assertEquals (array ($ argument ), $ options ->args );
24
34
$ this ->assertFalse ($ options ->getOpt ('nothing ' ));
25
35
}
26
36
27
- function test_simplelong1 ()
28
- {
29
- $ options = new Options ();
30
- $ options ->registerOption ('exclude ' , 'exclude files ' , 'x ' , 'file ' );
31
-
32
- $ options ->args = array ('--exclude ' , 'foo ' , 'bang ' );
33
- $ options ->parseOptions ();
34
-
35
- $ this ->assertEquals ('foo ' , $ options ->getOpt ('exclude ' ));
36
- $ this ->assertEquals (array ('bang ' ), $ options ->args );
37
- $ this ->assertFalse ($ options ->getOpt ('nothing ' ));
37
+ /**
38
+ * @return array
39
+ */
40
+ public function optionDataProvider () {
41
+ return array (
42
+ array ('-x ' , 'foo ' , 'bang ' ),
43
+ array ('--exclude ' , 'foo ' , 'bang ' ),
44
+ array ('-x ' , 'foo-bar ' , 'bang ' ),
45
+ array ('--exclude ' , 'foo-bar ' , 'bang ' ),
46
+ array ('-x ' , 'foo ' , 'bang--bang ' ),
47
+ array ('--exclude ' , 'foo ' , 'bang--bang ' ),
48
+ );
38
49
}
39
50
40
51
function test_simplelong2 ()
0 commit comments