From f9d23610f72f7f9f04cf1673fb0d4d0df5d6bcd3 Mon Sep 17 00:00:00 2001
From: Elmar Hinz <t3elmar@gmail.com>
Date: Mon, 13 Jun 2016 10:32:35 +0200
Subject: [PATCH] [TASK] Add unit test to cover stdWrap_lang

Releases: master
Resolves: #76610
Change-Id: I2784bcbe76d091afc5ad312996f3d9e5b2d7e221
Reviewed-on: https://review.typo3.org/48562
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Susanne Moog <typo3@susannemoog.de>
Tested-by: Susanne Moog <typo3@susannemoog.de>
---
 .../ContentObjectRendererTest.php             | 82 +++++++++++++++++++
 1 file changed, 82 insertions(+)

diff --git a/typo3/sysext/frontend/Tests/Unit/ContentObject/ContentObjectRendererTest.php b/typo3/sysext/frontend/Tests/Unit/ContentObject/ContentObjectRendererTest.php
index 1ef7582039d2..ba19f5159ab1 100755
--- a/typo3/sysext/frontend/Tests/Unit/ContentObject/ContentObjectRendererTest.php
+++ b/typo3/sysext/frontend/Tests/Unit/ContentObject/ContentObjectRendererTest.php
@@ -3200,6 +3200,88 @@ class ContentObjectRendererTest extends \TYPO3\CMS\Core\Tests\UnitTestCase
             $this->subject->stdWrap_wrap($input, $conf));
     }
 
+    /**
+     * Data provider for stdWrap_lang
+     *
+     * @return array Order expected, input, conf, language
+     */
+    public function stdWrap_langDataProvider()
+    {
+        return [
+            'empty conf' => [
+                'original',
+                'original',
+                [],
+                'de',
+            ],
+            'translation de' => [
+                'Ãœbersetzung',
+                'original',
+                [
+                    'lang.' => [
+                        'de' => 'Ãœbersetzung',
+                        'it' => 'traduzione',
+                    ]
+                ],
+                'de',
+            ],
+            'translation it' => [
+                'traduzione',
+                'original',
+                [
+                    'lang.' => [
+                        'de' => 'Ãœbersetzung',
+                        'it' => 'traduzione',
+                    ]
+                ],
+                'it',
+            ],
+            'no translation' => [
+                'original',
+                'original',
+                [
+                    'lang.' => [
+                        'de' => 'Ãœbersetzung',
+                        'it' => 'traduzione',
+                    ]
+                ],
+                '',
+            ],
+            'missing label' => [
+                'original',
+                'original',
+                [
+                    'lang.' => [
+                        'de' => 'Ãœbersetzung',
+                        'it' => 'traduzione',
+                    ]
+                ],
+                'fr',
+            ],
+        ];
+    }
+
+    /**
+     * Check if stdWrap_lang works properly.
+     *
+     * @param string $expected The expected value.
+     * @param string $input The input value.
+     * @param array $conf Properties: lang.xy.
+     * @param string $language For $TSFE->config[config][language].
+     * @return void
+     * @test
+     * @dataProvider stdWrap_langDataProvider
+     */
+    public function stdWrap_lang($expected, $input, $conf, $language)
+    {
+        if ($language) {
+            $this->typoScriptFrontendControllerMock
+                ->config['config']['language'] = $language;
+        }
+        $this->assertSame($expected,
+            $this->subject->stdWrap_lang($input, $conf));
+    }
+
     /**
      * Data provider for stdWrap_innerWrap
      *
-- 
GitLab