[TASK] Refactor unit test to cover stdWrap_noTrimWrap 10/48810/3
authorElmar Hinz <t3elmar@gmail.com>
Tue, 5 Jul 2016 11:42:07 +0000 (13:42 +0200)
committerChristian Kuhn <lolli@schwarzbu.ch>
Tue, 5 Jul 2016 22:05:37 +0000 (00:05 +0200)
Releases: master
Resolves: #76842
Change-Id: If5f38a499ca27229e04f60747843645fe746c753
Reviewed-on: https://review.typo3.org/48810
Tested-by: Bamboo TYPO3com <info@typo3.com>
Reviewed-by: Michael Oehlhof <typo3@oehlhof.de>
Tested-by: Michael Oehlhof <typo3@oehlhof.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
typo3/sysext/frontend/Tests/Unit/ContentObject/ContentObjectRendererTest.php

index 4bcf9f3..14b624d 100644 (file)
@@ -3474,78 +3474,88 @@ class ContentObjectRendererTest extends UnitTestCase
     }
 
     /**
-     * @param $content
-     * @param array $configuration
-     * @param $expected
-     * @dataProvider stdWrap_noTrimWrapAcceptsSplitCharDataProvider
-     * @test
-     */
-    public function stdWrap_noTrimWrapAcceptsSplitChar($content, array $configuration, $expected)
-    {
-        $result = $this->subject->stdWrap_noTrimWrap($content, $configuration);
-        $this->assertEquals($expected, $result);
-    }
-
-    /**
-     * Data provider for stdWrap_noTrimWrapAcceptsSplitChar test
+     * Data provider for stdWrap_noTrimWrap.
      *
-     * @return array
+     * @return array [$expect, $content, $conf]
      */
-    public function stdWrap_noTrimWrapAcceptsSplitCharDataProvider()
+    public function stdWrap_noTrimWrapDataProvider()
     {
-        return array(
-            'No char given' => array(
+        return [
+            'Standard case' => [
+                ' left middle right ',
                 'middle',
-                array(
+                [
                     'noTrimWrap' => '| left | right |',
-                ),
-                ' left middle right '
-            ),
-            'Zero char given' => array(
+                ],
+            ],
+            'Tabs as whitespace' => [
+                TAB . 'left' . TAB . 'middle' . TAB . 'right' . TAB,
                 'middle',
-                array(
+                [
+                    'noTrimWrap' =>
+                    '|' . TAB . 'left' . TAB . '|' . TAB . 'right' . TAB . '|',
+                ],
+            ],
+            'Split char is 0' => [
+                ' left middle right ',
+                'middle',
+                [
                     'noTrimWrap' => '0 left 0 right 0',
-                    'noTrimWrap.' => array('splitChar' => '0'),
-
-                ),
-                ' left middle right '
-            ),
-            'Default char given' => array(
+                    'noTrimWrap.' => ['splitChar' => '0'],
+                ],
+            ],
+            'Split char is pipe (default)' => [
+                ' left middle right ',
                 'middle',
-                array(
+                [
                     'noTrimWrap' => '| left | right |',
-                    'noTrimWrap.' => array('splitChar' => '|'),
-                ),
-                ' left middle right '
-            ),
-            'Split char is a' => array(
+                    'noTrimWrap.' => ['splitChar' => '|'],
+                ],
+            ],
+            'Split char is a' => [
+                ' left middle right ',
                 'middle',
-                array(
+                [
                     'noTrimWrap' => 'a left a right a',
-                    'noTrimWrap.' => array('splitChar' => 'a'),
-                ),
-                ' left middle right '
-            ),
-            'Split char is multi-char (ab)' => array(
+                    'noTrimWrap.' => ['splitChar' => 'a'],
+                ],
+            ],
+            'Split char is a word (ab)' => [
+                ' left middle right ',
                 'middle',
-                array(
+                [
                     'noTrimWrap' => 'ab left ab right ab',
-                    'noTrimWrap.' => array('splitChar' => 'ab'),
-                ),
-                ' left middle right '
-            ),
-            'Split char accepts stdWrap' => array(
+                    'noTrimWrap.' => ['splitChar' => 'ab'],
+                ],
+            ],
+            'Split char accepts stdWrap' => [
+                ' left middle right ',
                 'middle',
-                array(
+                [
                     'noTrimWrap' => 'abc left abc right abc',
-                    'noTrimWrap.' => array(
+                    'noTrimWrap.' => [
                         'splitChar' => 'b',
-                        'splitChar.' => array('wrap' => 'a|c'),
-                    ),
-                ),
-                ' left middle right '
-            ),
-        );
+                        'splitChar.' => ['wrap' => 'a|c'],
+                    ],
+                ],
+            ],
+        ];
+    }
+
+    /**
+     * Check if stdWrap_noTrimWrap works properly.
+     *
+     * @test
+     * @dataProvider stdWrap_noTrimWrapDataProvider
+     * @param string $expect The expected output.
+     * @param string $content The given input.
+     * @param array $conf The given configuration.
+     * @return void
+     */
+    public function stdWrap_noTrimWrap($expect, $content, $conf)
+    {
+        $this->assertSame($expect,
+            $this->subject->stdWrap_noTrimWrap($content, $conf));
     }
 
     /**