Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / web / modules / contrib / media_entity / tests / src / Functional / MediaEntityFunctionalTestTrait.php
diff --git a/web/modules/contrib/media_entity/tests/src/Functional/MediaEntityFunctionalTestTrait.php b/web/modules/contrib/media_entity/tests/src/Functional/MediaEntityFunctionalTestTrait.php
new file mode 100644 (file)
index 0000000..4e2eedf
--- /dev/null
@@ -0,0 +1,50 @@
+<?php
+
+namespace Drupal\Tests\media_entity\Functional;
+
+use Drupal\media_entity\Entity\MediaBundle;
+
+/**
+ * Trait with helpers for Media Entity functional tests.
+ *
+ * @package Drupal\Tests\media_entity\Functional
+ */
+trait MediaEntityFunctionalTestTrait {
+
+  /**
+   * Creates a media bundle.
+   *
+   * @param array $values
+   *   The media bundle values.
+   * @param string $type_name
+   *   (optional) The media type provider plugin that is responsible for
+   *   additional logic related to this media).
+   *
+   * @return \Drupal\Core\Entity\EntityInterface
+   *   Returns newly created media bundle.
+   */
+  protected function drupalCreateMediaBundle(array $values = [], $type_name = 'generic') {
+    if (!isset($values['bundle'])) {
+      $id = strtolower($this->randomMachineName());
+    }
+    else {
+      $id = $values['bundle'];
+    }
+    $values += [
+      'id' => $id,
+      'label' => $id,
+      'type' => $type_name,
+      'type_configuration' => [],
+      'field_map' => [],
+      'new_revision' => FALSE,
+    ];
+
+    $bundle = MediaBundle::create($values);
+    $status = $bundle->save();
+
+    $this->assertEquals($status, SAVED_NEW, 'Could not create a media bundle of type ' . $type_name . '.');
+
+    return $bundle;
+  }
+
+}