use Drupal\file\Entity\File;
use Drupal\KernelTests\KernelTestBase;
use Drupal\media\Entity\Media;
-use Drupal\media\Entity\MediaType;
use Drupal\media\MediaTypeInterface;
+use Drupal\Tests\media\Traits\MediaTypeCreationTrait;
use Drupal\user\Entity\User;
use org\bovigo\vfs\vfsStream;
*/
abstract class MediaKernelTestBase extends KernelTestBase {
+ use MediaTypeCreationTrait;
+
/**
* Modules to install.
*
}
/**
- * Create a media type for a source plugin.
- *
- * @param string $media_source_name
- * The name of the media source.
- *
- * @return \Drupal\media\MediaTypeInterface
- * A media type.
- */
- protected function createMediaType($media_source_name) {
- $id = strtolower($this->randomMachineName());
- $media_type = MediaType::create([
- 'id' => $id,
- 'label' => $id,
- 'source' => $media_source_name,
- 'new_revision' => FALSE,
- ]);
- $media_type->save();
- $source_field = $media_type->getSource()->createSourceField($media_type);
- // The media type form creates a source field if it does not exist yet. The
- // same must be done in a kernel test, since it does not use that form.
- // @see \Drupal\media\MediaTypeForm::save()
- $source_field->getFieldStorageDefinition()->save();
- // The source field storage has been created, now the field can be saved.
- $source_field->save();
- $media_type->set('source_configuration', [
- 'source_field' => $source_field->getName(),
- ])->save();
- return $media_type;
- }
-
- /**
- * Helper to generate media entity.
+ * Helper to generate a media item.
*
* @param string $filename
* String filename with extension.
* The the media type.
*
* @return \Drupal\media\Entity\Media
- * A media entity.
+ * A media item.
*/
protected function generateMedia($filename, MediaTypeInterface $media_type) {
vfsStream::setup('drupal_root');