From ec36a0d58988c948dcb352081126ae0644519290 Mon Sep 17 00:00:00 2001 From: Benni Mack <benni@typo3.org> Date: Tue, 25 Jun 2019 12:38:32 +0200 Subject: [PATCH] [BUGFIX] Add tests for email via typolink Resolves: #88287 Releases: master Change-Id: I4e6efbd00caca8c1ed01252f1dde30f36330640e Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61151 Tested-by: TYPO3com <noreply@typo3.com> Tested-by: Jonas Eberle <flightvision@googlemail.com> Tested-by: Daniel Goerz <daniel.goerz@posteo.de> Reviewed-by: Jonas Eberle <flightvision@googlemail.com> Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de> --- .../ContentObjectRendererTest.php | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/typo3/sysext/frontend/Tests/Functional/ContentObject/ContentObjectRendererTest.php b/typo3/sysext/frontend/Tests/Functional/ContentObject/ContentObjectRendererTest.php index 8197d1d2a5e0..113801659c2d 100644 --- a/typo3/sysext/frontend/Tests/Functional/ContentObject/ContentObjectRendererTest.php +++ b/typo3/sysext/frontend/Tests/Functional/ContentObject/ContentObjectRendererTest.php @@ -437,6 +437,37 @@ class ContentObjectRendererTest extends \TYPO3\TestingFramework\Core\Functional\ $this->assertEquals($expectedResult, $subject->typoLink($linkText, $configuration)); } + /** + * @test + */ + public function typolinkReturnsCorrectLinkForEmails() + { + $expected = '<a href="mailto:test@example.com">Send me an email</a>'; + $subject = new ContentObjectRenderer(); + $result = $subject->typoLink('Send me an email', ['parameter' => 'mailto:test@example.com']); + $this->assertEquals($expected, $result); + + $result = $subject->typoLink('Send me an email', ['parameter' => 'test@example.com']); + $this->assertEquals($expected, $result); + } + + /** + * @test + */ + public function typolinkReturnsCorrectLinkForSpamEncryptedEmails() + { + $tsfe = $this->getMockBuilder(TypoScriptFrontendController::class)->disableOriginalConstructor()->getMock(); + $subject = new ContentObjectRenderer($tsfe); + + $tsfe->spamProtectEmailAddresses = 1; + $result = $subject->typoLink('Send me an email', ['parameter' => 'mailto:test@example.com']); + $this->assertEquals('<a href="javascript:linkTo_UnCryptMailto(\'nbjmup+uftuAfybnqmf\/dpn\');">Send me an email</a>', $result); + + $tsfe->spamProtectEmailAddresses = 'ascii'; + $result = $subject->typoLink('Send me an email', ['parameter' => 'mailto:test@example.com']); + $this->assertEquals('<a href="mailto:test@example.com">Send me an email</a>', $result); + } + /** * @test */ -- GitLab