Updated Drupal to 8.6. This goes with the following updates because it's possible...
[yaffs-website] / web / core / modules / tour / tests / src / Unit / Plugin / tour / tip / TipPluginTextTest.php
diff --git a/web/core/modules/tour/tests/src/Unit/Plugin/tour/tip/TipPluginTextTest.php b/web/core/modules/tour/tests/src/Unit/Plugin/tour/tip/TipPluginTextTest.php
new file mode 100644 (file)
index 0000000..65a6d51
--- /dev/null
@@ -0,0 +1,44 @@
+<?php
+
+namespace Drupal\Tests\tour\Unit\Plugin\tour\tip;
+
+use Drupal\Tests\UnitTestCase;
+use Drupal\tour\Plugin\tour\tip\TipPluginText;
+
+/**
+ * @coversDefaultClass \Drupal\tour\Plugin\tour\tip\TipPluginText
+ * @group tour
+ */
+class TipPluginTextTest extends UnitTestCase {
+
+  /**
+   * Tests that getAriaId returns unique id per plugin instance.
+   *
+   * @see \Drupal\tour\Plugin\tour\tip\TipPluginText::getAriaId()
+   * @runTestsInSeparateProcesses
+   * This test calls \Drupal\Component\Utility\Html::getUniqueId() which uses a
+   * static list. Run this test in a separate process to prevent side effects.
+   */
+  public function testGetAriaId() {
+    $id_instance_one = 'one';
+    $id_instance_two = 'two';
+    $config_instance_one = [
+      'id' => $id_instance_one,
+    ];
+    $config_instance_two = [
+      'id' => $id_instance_two,
+    ];
+    $definition = [];
+    $plugin_id = 'text';
+    $token = $this->createMock('\Drupal\Core\Utility\Token');
+    $instance_one = new TipPluginText($config_instance_one, $plugin_id, $definition, $token);
+    $instance_two = new TipPluginText($config_instance_two, $plugin_id, $definition, $token);
+    $instance_three = new TipPluginText($config_instance_one, $plugin_id, $definition, $token);
+
+    $this->assertEquals($id_instance_one, $instance_one->getAriaId());
+    $this->assertEquals($id_instance_two, $instance_two->getAriaId());
+    $this->assertNotEquals($instance_one->getAriaId(), $instance_two->getAriaId());
+    $this->assertNotEquals($instance_one->getAriaId(), $instance_three->getAriaId());
+  }
+
+}