diff --git a/core/tests/Drupal/KernelTests/Core/StringTranslation/TranslationWrapperTest.php b/core/tests/Drupal/KernelTests/Core/StringTranslation/TranslationWrapperTest.php
new file mode 100644
index 0000000..1e2d40f
--- /dev/null
+++ b/core/tests/Drupal/KernelTests/Core/StringTranslation/TranslationWrapperTest.php
@@ -0,0 +1,58 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\KernelTests\Core\StringTranslation\TranslationWrapperTest.
+ */
+
+namespace Drupal\KernelTests\Core\StringTranslation;
+
+use Drupal\Core\StringTranslation\TranslationWrapper;
+use Drupal\language\Entity\ConfigurableLanguage;
+use Drupal\simpletest\WebTestBase;
+
+/**
+ * Tests the TranslationWrapper class.
+ *
+ * @group StringTranslation
+ */
+class TranslationWrapperTest extends WebTestBase {
+
+  /**
+   * Modules to enable.
+   *
+   * @var array
+   */
+  public static $modules = [
+    'language'
+  ];
+
+  /**
+   * {@inheritdoc}
+   */
+  protected function setUp() {
+    parent::setUp();
+    ConfigurableLanguage::createFromLangcode('de')->save();
+  }
+
+  public function testComparison() {
+    $this->addCustomTranslations('de', array('' => array(
+      'Example @number' => 'Example @number translated'
+    )));
+    $this->writeCustomTranslations();
+
+    $a = \Drupal::service('string_translation')->translate('Example @number', ['@number' => 42], ['langcode' => 'de']);
+
+    $this->rebuildContainer();
+
+    $b = \Drupal::service('string_translation')->translate('Example @number', ['@number' => 42], ['langcode' => 'de']);
+    $c = \Drupal::service('string_translation')->translate('Example @number', ['@number' => 43], ['langcode' => 'de']);
+    $d = \Drupal::service('string_translation')->translate('Example @number', ['@number' => 42], ['langcode' => 'en']);
+
+    $this->assertEqual($a, $b);
+    $this->assertNotEqual($a, $c);
+    $this->assertNotEqual($a, $d);
+
+  }
+
+}
