diff --git a/src/Tests/ImageEffectsBackgroundTest.php b/src/Tests/ImageEffectsBackgroundTest.php
deleted file mode 100644
index 3334c07..0000000
--- a/src/Tests/ImageEffectsBackgroundTest.php
+++ /dev/null
@@ -1,127 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-
-/**
- * Background effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsBackgroundTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Background effect test.
-   */
-  public function testBackgroundEffect() {
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestBackgroundOperations']);
-  }
-
-  /**
-   * Background operations test.
-   */
-  public function doTestBackgroundOperations() {
-    $image_factory = $this->container->get('image.factory');
-
-    $test_file = drupal_get_path('module', 'simpletest') . '/files/image-test.png';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/' . \Drupal::service('file_system')->basename($original_uri);
-
-    $background_file = drupal_get_path('module', 'simpletest') . '/files/image-1.png';
-    $background_uri = file_unmanaged_copy($background_file, 'public://', FILE_EXISTS_RENAME);
-
-    $effect = [
-      'id' => 'image_effects_background',
-      'data' => [
-        'placement' => 'left-top',
-        'x_offset' => 0,
-        'y_offset' => 0,
-        'opacity' => 100,
-        'background_image' => $background_uri,
-      ],
-    ];
-    $uuid = $this->addEffectToTestStyle($effect);
-
-    // Load Image Style.
-    $image_style = ImageStyle::load('image_effects_test');
-
-    // Check that ::transformDimensions returns expected dimensions.
-    $image = $image_factory->get($original_uri);
-    $this->assertEqual(40, $image->getWidth());
-    $this->assertEqual(20, $image->getHeight());
-    $url = file_url_transform_relative($image_style->buildUrl($original_uri));
-    $variables = [
-      '#theme' => 'image_style',
-      '#style_name' => 'image_effects_test',
-      '#uri' => $original_uri,
-      '#width' => $image->getWidth(),
-      '#height' => $image->getHeight(),
-    ];
-    $this->assertEqual('<img src="' . $url . '" width="360" height="240" alt="" class="image-style-image-effects-test" />', $this->getImageTag($variables));
-
-    // Check that ::applyEffect generates image with expected canvas.
-    $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-    $image = $image_factory->get($generated_uri, 'gd');
-    $this->assertEqual(360, $image->getWidth());
-    $this->assertEqual(240, $image->getHeight());
-    $this->assertTrue($this->colorsAreEqual($this->red, $this->getPixelColor($image, 0, 0)));
-    $this->assertTrue($this->colorsAreEqual($this->green, $this->getPixelColor($image, 39, 0)));
-    $this->assertTrue($this->colorsAreEqual([185, 185, 185, 0], $this->getPixelColor($image, 0, 19)));
-    $this->assertTrue($this->colorsAreEqual($this->blue, $this->getPixelColor($image, 39, 19)));
-
-    // Remove effect.
-    $this->removeEffectFromTestStyle($uuid);
-
-    // Toolkit-specific tests.
-    switch ($image_factory->getToolkitId()) {
-      case 'gd':
-        // For the GD toolkit, test we are not left with orphan resource after
-        // applying the operation.
-        $image = $image_factory->get($original_uri);
-        // Store the original GD resource.
-        $old_res = $image->getToolkit()->getResource();
-        // Apply the operation.
-        $image->apply('background', [
-          'x_offset' => 0,
-          'y_offset' => 0,
-          'opacity' => 100,
-          'background_image' => $image_factory->get($background_uri),
-        ]);
-        // The operation replaced the resource, check that the old one has
-        // been destroyed.
-        $new_res = $image->getToolkit()->getResource();
-        $this->assertTrue(is_resource($new_res));
-        $this->assertNotEqual($new_res, $old_res);
-        $this->assertFalse(is_resource($old_res));
-        break;
-
-      case 'imagemagick':
-        // For the Imagemagick toolkit, toolkit should return backround
-        // image dimensions after applying the operation, but before
-        // saving.
-        $image = $image_factory->get($original_uri);
-        // Apply the operation.
-        $image->apply('background', [
-          'x_offset' => 0,
-          'y_offset' => 0,
-          'opacity' => 100,
-          'background_image' => $image_factory->get($background_uri),
-        ]);
-        $this->assertEqual(360, $image->getToolkit()->getWidth());
-        $this->assertEqual(240, $image->getToolkit()->getHeight());
-        break;
-
-    }
-  }
-
-}
diff --git a/src/Tests/ImageEffectsBrightnessTest.php b/src/Tests/ImageEffectsBrightnessTest.php
deleted file mode 100644
index 99c4a8a..0000000
--- a/src/Tests/ImageEffectsBrightnessTest.php
+++ /dev/null
@@ -1,73 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-
-/**
- * Brightness effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsBrightnessTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Brightness effect test.
-   */
-  public function testBrightnessEffect() {
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestBrightnessOperations']);
-  }
-
-  /**
-   * Brightness operations test.
-   */
-  public function doTestBrightnessOperations() {
-    $image_factory = $this->container->get('image.factory');
-
-    // Test on the PNG test image.
-    $test_file = drupal_get_path('module', 'simpletest') . '/files/image-test.png';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/'. \Drupal::service('file_system')->basename($original_uri);
-
-    // Test data.
-    $test_data = [
-      '0' => [$this->red, $this->green, $this->transparent, $this->blue],        // No brightness change.
-      '-100' => [$this->black, $this->black, $this->transparent, $this->black],  // Adjust brightness by -100%.
-      '100' => [$this->white, $this->white, $this->transparent, $this->white],   // Adjust brightness by 100%.
-    ];
-
-    foreach ($test_data as $key => $colors) {
-      // Add Brightness effect to the test image style.
-      $effect = [
-        'id' => 'image_effects_brightness',
-        'data' => [
-          'level' => $key,
-        ],
-      ];
-      $uuid = $this->addEffectToTestStyle($effect);
-
-      // Load Image Style.
-      $image_style = ImageStyle::load('image_effects_test');
-
-      // Check that ::applyEffect generates image with expected brightness.
-      $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-      $image = $image_factory->get($generated_uri, 'gd');
-      $this->assertTrue($this->colorsAreEqual($colors[0], $this->getPixelColor($image, 0, 0)));
-      $this->assertTrue($this->colorsAreEqual($colors[1], $this->getPixelColor($image, 39, 0)));
-      $this->assertTrue($this->colorsAreEqual($colors[2], $this->getPixelColor($image, 0, 19)));
-      $this->assertTrue($this->colorsAreEqual($colors[3], $this->getPixelColor($image, 39, 19)));
-
-      // Remove effect.
-      $uuid = $this->removeEffectFromTestStyle($uuid);
-    }
-  }
-}
diff --git a/src/Tests/ImageEffectsColorShiftTest.php b/src/Tests/ImageEffectsColorShiftTest.php
deleted file mode 100644
index 99935ba..0000000
--- a/src/Tests/ImageEffectsColorShiftTest.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-
-/**
- * Color Shift effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsColorShiftTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Color Shift effect test.
-   */
-  public function testColorShiftEffect() {
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestColorshiftOperations']);
-  }
-
-  /**
-   * Color Shift operations test.
-   */
-  public function doTestColorshiftOperations() {
-    $image_factory = $this->container->get('image.factory');
-
-    // Test on the PNG test image.
-    $test_file = drupal_get_path('module', 'simpletest') . '/files/image-test.png';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/'. \Drupal::service('file_system')->basename($original_uri);
-
-    // Test data.
-    $test_data = [
-      '#FF0000' => [$this->red, $this->yellow, $this->transparent, $this->fuchsia],  // Shift to red.
-      '#00FF00' => [$this->yellow, $this->green, $this->transparent, $this->cyan],   // Shift to green.
-      '#0000FF' => [$this->fuchsia, $this->cyan, $this->transparent, $this->blue],   // Shift to blue.
-      '#929BEF'  => [  // Arbitrary shift.
-        [255, 155, 239, 0],
-        [146, 255, 239, 0],
-        $this->transparent,
-        [146, 155, 255, 0],
-      ],
-    ];
-
-    foreach ($test_data as $key => $colors) {
-      // Add Color Shift effect to the test image style.
-      $effect = [
-        'id' => 'image_effects_color_shift',
-        'data' => [
-          'RGB][hex' => $key,
-        ],
-      ];
-      $uuid = $this->addEffectToTestStyle($effect);
-
-      // Load Image Style.
-      $image_style = ImageStyle::load('image_effects_test');
-
-      // Check that ::applyEffect generates image with expected color shift.
-      $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-      $image = $image_factory->get($generated_uri, 'gd');
-      $this->assertTrue($this->colorsAreEqual($colors[0], $this->getPixelColor($image, 0, 0)));
-      $this->assertTrue($this->colorsAreEqual($colors[1], $this->getPixelColor($image, 39, 0)));
-      $this->assertTrue($this->colorsAreEqual($colors[2], $this->getPixelColor($image, 0, 19)));
-      $this->assertTrue($this->colorsAreEqual($colors[3], $this->getPixelColor($image, 39, 19)));
-
-      // Remove effect.
-      $uuid = $this->removeEffectFromTestStyle($uuid);
-    }
-  }
-}
diff --git a/src/Tests/ImageEffectsContrastTest.php b/src/Tests/ImageEffectsContrastTest.php
deleted file mode 100644
index fc48ea5..0000000
--- a/src/Tests/ImageEffectsContrastTest.php
+++ /dev/null
@@ -1,128 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-
-/**
- * Contrast effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsContrastTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Contrast effect test.
-   */
-  public function testContrastEffect() {
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestContrastOperations']);
-  }
-
-  /**
-   * Contrast operations test.
-   */
-  public function doTestContrastOperations() {
-    $image_factory = $this->container->get('image.factory');
-    $image_toolkit_id = $image_factory->getToolkitId();
-
-    // Test on the PNG test image.
-    $test_file = drupal_get_path('module', 'simpletest') . '/files/image-test.png';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/'. \Drupal::service('file_system')->basename($original_uri);
-
-    // Test data.
-    $test_data = [
-      // No contrast change.
-      '0' => [
-        'colors' => [
-          $this->red,
-          $this->green,
-          $this->transparent,
-          $this->blue,
-        ],
-        'tolerance' => 0,
-      ],
-
-      // Adjust contrast by -50%.
-      // ImageMagick color in test data, GD returns significantly different
-      // color.
-      '-50' => [
-        'colors' => [
-          [180, 75, 75, 0],
-          [75, 180, 75, 0],
-          $this->transparent,
-          [75, 75, 180, 0],
-        ],
-        'tolerance' => 2000,
-      ],
-
-      // Adjust contrast by -100%.
-      // GD and ImageMagick return slightly different grey.
-      '-100' => [
-        'colors' => [
-          $this->grey,
-          $this->grey,
-          $this->transparent,
-          $this->grey,
-        ],
-        'tolerance' => 4,
-      ],
-
-      // Adjust contrast by 50%.
-      '50' => [
-        'colors' => [
-          $this->red,
-          $this->green,
-          $this->transparent,
-          $this->blue,
-        ],
-        'tolerance' => 0,
-      ],
-
-      // Adjust contrast by 100%.
-      '100' => [
-        'colors' => [
-          $this->red,
-          $this->green,
-          $this->transparent,
-          $this->blue,
-        ],
-        'tolerance' => 0,
-      ],
-    ];
-
-    foreach ($test_data as $key => $entry) {
-      // Add contrast effect to the test image style.
-      $effect = [
-        'id' => 'image_effects_contrast',
-        'data' => [
-          'level' => $key,
-        ],
-      ];
-      $uuid = $this->addEffectToTestStyle($effect);
-
-      // Load Image Style.
-      $image_style = ImageStyle::load('image_effects_test');
-
-      // Check that ::applyEffect generates image with expected contrast.
-      $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-      $image = $image_factory->get($generated_uri, 'gd');
-      $this->assertTrue($this->colorsAreClose($entry['colors'][0], $this->getPixelColor($image, 0, 0), $entry['tolerance']));
-      $this->assertTrue($this->colorsAreClose($entry['colors'][1], $this->getPixelColor($image, 39, 0), $entry['tolerance']));
-      $this->assertTrue($this->colorsAreClose($entry['colors'][2], $this->getPixelColor($image, 0, 19), $entry['tolerance']));
-      $this->assertTrue($this->colorsAreClose($entry['colors'][3], $this->getPixelColor($image, 39, 19), $entry['tolerance']));
-
-      // Remove effect.
-      $uuid = $this->removeEffectFromTestStyle($uuid);
-    }
-  }
-}
diff --git a/src/Tests/ImageEffectsConvolutionTest.php b/src/Tests/ImageEffectsConvolutionTest.php
index 48108cf..25a5503 100644
--- a/src/Tests/ImageEffectsConvolutionTest.php
+++ b/src/Tests/ImageEffectsConvolutionTest.php
@@ -6,7 +6,7 @@ use Drupal\system\Tests\Image\ToolkitTestBase;
 /**
  * Tests that the image effects pass parameters to the toolkit correctly.
  *
- * @group image
+ * @group Image Effects
  */
 class ImageEffectsConvolutionTest extends ToolkitTestBase {
 
diff --git a/src/Tests/ImageEffectsInterlaceTest.php b/src/Tests/ImageEffectsInterlaceTest.php
deleted file mode 100644
index 0a72002..0000000
--- a/src/Tests/ImageEffectsInterlaceTest.php
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-use Drupal\Core\Image\ImageInterface;
-
-/**
- * Interlace effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsInterlaceTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Interlace effect test.
-   */
-  public function testInterlaceEffect() {
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestInterlaceOperations']);
-  }
-
-  /**
-   * Interlace operations test.
-   */
-  public function doTestInterlaceOperations() {
-    $image_factory = $this->container->get('image.factory');
-
-    $test_data = [
-      // Test on the PNG test image.
-      [
-        'test_file' => drupal_get_path('module', 'simpletest') . '/files/image-test.png',
-      ],
-    ];
-
-    foreach ($test_data as $data) {
-      $original_uri = file_unmanaged_copy($data['test_file'], 'public://', FILE_EXISTS_RENAME);
-      $generated_uri = 'public://styles/image_effects_test/public/'. $this->container->get('file_system')->basename($original_uri);
-
-      // Add interlace effect to the test image style.
-      $effect = [
-        'id' => 'image_effects_interlace',
-        'data' => [
-          'type' => 'Plane',
-        ],
-      ];
-      $uuid = $this->addEffectToTestStyle($effect);
-
-      // Load Image Style.
-      $image_style = ImageStyle::load('image_effects_test');
-
-      // Check that ::applyEffect generates interlaced PNG or GIF or
-      // progressive JPEG image.
-      $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-      $image = $image_factory->get($generated_uri, 'gd');
-
-      $this->assertTrue($this->isPNGInterlaced($image));
-
-      // Remove effect.
-      $uuid = $this->removeEffectFromTestStyle($uuid);
-    }
-  }
-
-  /**
-   * Checks if this is an interlaced PNG.
-   *
-   * @param \Drupal\Core\Image\ImageInterface $image
-   *   An image object that need to be checked.
-   * @return bool
-   *   Returns TRUE on success or FALSE on failure.
-   *
-   * @see http://stackoverflow.com/questions/14235600/php-test-if-image-is-interlaced
-   */
-  private function isPNGInterlaced(ImageInterface $image) {
-    $source = $image->getSource();
-
-    $real_path = $this->container->get('file_system')->realpath($source);
-
-    $handle = fopen($real_path, "r");
-    $contents = fread($handle, 32);
-    fclose($handle);
-    return( ord($contents[28]) != 0 );
-  }
-
-}
diff --git a/src/Tests/ImageEffectsSelectorPluginTest.php b/src/Tests/ImageEffectsSelectorPluginTest.php
deleted file mode 100644
index 530afba..0000000
--- a/src/Tests/ImageEffectsSelectorPluginTest.php
+++ /dev/null
@@ -1,103 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-/**
- * Selector plugins test.
- *
- * @group Image Effects
- */
-class ImageEffectsSelectorPluginTest extends ImageEffectsTestBase {
-
-  public static $modules = ['image', 'image_effects', 'simpletest', 'image_effects_module_test'];
-
-  /**
-   * Image selector test.
-   */
-  public function testImageSelector() {
-    $image_path = drupal_get_path('module', 'image_effects') . '/tests/images';
-    $image_file = 'portrait-painting.jpg';
-
-    // Test the Basic plugin.
-    // Add an effect with the image selector.
-    $effect = [
-      'id' => 'image_effects_module_test_image_selection',
-      'data' => [
-        'image_uri' => $image_path . '/' . $image_file,
-      ],
-    ];
-    $uuid = $this->addEffectToTestStyle($effect);
-
-    // Check that the full image URI is in the effect summary.
-    $this->assertText($image_path . '/' . $image_file);
-
-    // Test the Dropdown plugin.
-    // Remove the effect.
-    $this->removeEffectFromTestStyle($uuid);
-
-    // Change the settings.
-    $config = \Drupal::configFactory()->getEditable('image_effects.settings');
-    $config
-      ->set('image_selector.plugin_id', 'dropdown')
-      ->set('image_selector.plugin_settings.dropdown.path', $image_path)
-      ->save();
-
-    // Add an effect with the image selector.
-    $effect = [
-      'id' => 'image_effects_module_test_image_selection',
-      'data' => [
-        'image_uri' => $image_file,
-      ],
-    ];
-    $this->addEffectToTestStyle($effect);
-
-    // Check that the full image URI is in the effect summary.
-    $this->assertText($image_path . '/' . $image_file);
-  }
-
-  /**
-   * Image selector test.
-   */
-  public function testFontSelector() {
-    $font_path = drupal_get_path('module', 'image_effects') . '/tests/fonts/LinLibertineTTF_5.3.0_2012_07_02';
-    $font_file = 'LinLibertine_Rah.ttf';
-    $font_name = 'Linux Libertine';
-
-    // Test the Basic plugin.
-    // Add an effect with the font selector.
-    $effect = [
-      'id' => 'image_effects_module_test_font_selection',
-      'data' => [
-        'font_uri' => $font_path . '/' . $font_file,
-      ],
-    ];
-    $uuid = $this->addEffectToTestStyle($effect);
-
-    // Check that the font name is in the effect summary.
-    $this->assertText($font_name);
-
-    // Test the Dropdown plugin.
-    // Remove the effect.
-    $this->removeEffectFromTestStyle($uuid);
-
-    // Change the settings.
-    $config = \Drupal::configFactory()->getEditable('image_effects.settings');
-    $config
-      ->set('font_selector.plugin_id', 'dropdown')
-      ->set('font_selector.plugin_settings.dropdown.path', $font_path)
-      ->save();
-
-    // Add an effect with the font selector.
-    $effect = [
-      'id' => 'image_effects_module_test_font_selection',
-      'data' => [
-        'font_uri' => $font_file,
-      ],
-    ];
-    $this->addEffectToTestStyle($effect);
-
-    // Check that the font name is in the effect summary.
-    $this->assertText($font_name);
-  }
-
-}
diff --git a/src/Tests/ImageEffectsSetCanvasTest.php b/src/Tests/ImageEffectsSetCanvasTest.php
deleted file mode 100644
index 8a0e737..0000000
--- a/src/Tests/ImageEffectsSetCanvasTest.php
+++ /dev/null
@@ -1,133 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-
-/**
- * Set canvas effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsSetCanvasTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Set canvas effect test.
-   */
-  public function testColorShiftEffect() {
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestSetCanvasOperations']);
-  }
-
-  /**
-   * Set canvas operations test.
-   */
-  public function doTestSetCanvasOperations() {
-    $image_factory = $this->container->get('image.factory');
-
-    $test_file = drupal_get_path('module', 'simpletest') . '/files/image-test.png';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/' . \Drupal::service('file_system')->basename($original_uri);
-
-    // Test EXACT size canvas.
-    $effect = [
-      'id' => 'image_effects_set_canvas',
-      'data' => [
-        'canvas_size' => 'exact',
-        'canvas_color][container][transparent' => FALSE,
-        'canvas_color][container][hex' => '#FF00FF',
-        'canvas_color][container][opacity' => 100,
-        'exact][width][c0][c1][value' => 200,
-        'exact][width][c0][c1][uom' => 'perc',
-        'exact][height][c0][c1][value' => 200,
-        'exact][height][c0][c1][uom' => 'perc',
-      ],
-    ];
-    $uuid = $this->addEffectToTestStyle($effect);
-
-    // Load Image Style.
-    $image_style = ImageStyle::load('image_effects_test');
-
-    // Check that ::transformDimensions returns expected dimensions.
-    $image = $image_factory->get($original_uri);
-    $this->assertEqual(40, $image->getWidth());
-    $this->assertEqual(20, $image->getHeight());
-    $url = file_url_transform_relative($image_style->buildUrl($original_uri));
-    $variables = array(
-      '#theme' => 'image_style',
-      '#style_name' => 'image_effects_test',
-      '#uri' => $original_uri,
-      '#width' => $image->getWidth(),
-      '#height' => $image->getHeight(),
-    );
-    $this->assertEqual('<img src="' . $url . '" width="80" height="40" alt="" class="image-style-image-effects-test" />', $this->getImageTag($variables));
-
-    // Check that ::applyEffect generates image with expected canvas.
-    $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-    $image = $image_factory->get($generated_uri, 'gd');
-    $this->assertEqual(80, $image->getWidth());
-    $this->assertEqual(40, $image->getHeight());
-    $this->assertTrue($this->colorsAreEqual($this->fuchsia, $this->getPixelColor($image, 0, 0)));
-    $this->assertTrue($this->colorsAreEqual($this->fuchsia, $this->getPixelColor($image, 79, 0)));
-    $this->assertTrue($this->colorsAreEqual($this->fuchsia, $this->getPixelColor($image, 0, 39)));
-    $this->assertTrue($this->colorsAreEqual($this->fuchsia, $this->getPixelColor($image, 79, 39)));
-
-    // Remove effect.
-    $this->removeEffectFromTestStyle($uuid);
-
-    // Test RELATIVE size canvas.
-    $effect = [
-      'id' => 'image_effects_set_canvas',
-      'data' => [
-        'canvas_size' => 'relative',
-        'canvas_color][container][transparent' => FALSE,
-        'canvas_color][container][hex' => '#FFFF00',
-        'canvas_color][container][opacity' => 100,
-        'relative][right' => 10,
-        'relative][left' => 20,
-        'relative][top' => 30,
-        'relative][bottom' => 40,
-      ],
-    ];
-    $uuid = $this->addEffectToTestStyle($effect);
-
-    // Load Image Style.
-    $image_style = ImageStyle::load('image_effects_test');
-
-    // Check that ::transformDimensions returns expected dimensions.
-    $image = $image_factory->get($original_uri);
-    $this->assertEqual(40, $image->getWidth());
-    $this->assertEqual(20, $image->getHeight());
-    $url = file_url_transform_relative($image_style->buildUrl($original_uri));
-    $variables = array(
-      '#theme' => 'image_style',
-      '#style_name' => 'image_effects_test',
-      '#uri' => $original_uri,
-      '#width' => $image->getWidth(),
-      '#height' => $image->getHeight(),
-    );
-    $this->assertEqual('<img src="' . $url . '" width="70" height="90" alt="" class="image-style-image-effects-test" />', $this->getImageTag($variables));
-
-    // Check that ::applyEffect generates image with expected canvas.
-    $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-    $image = $image_factory->get($generated_uri, 'gd');
-    $this->assertEqual(70, $image->getWidth());
-    $this->assertEqual(90, $image->getHeight());
-    $this->assertTrue($this->colorsAreEqual($this->yellow, $this->getPixelColor($image, 0, 0)));
-    $this->assertTrue($this->colorsAreEqual($this->yellow, $this->getPixelColor($image, 69, 0)));
-    $this->assertTrue($this->colorsAreEqual($this->yellow, $this->getPixelColor($image, 0, 89)));
-    $this->assertTrue($this->colorsAreEqual($this->yellow, $this->getPixelColor($image, 69, 89)));
-
-    // Remove effect.
-    $this->removeEffectFromTestStyle($uuid);
-  }
-
-}
diff --git a/src/Tests/ImageEffectsSetTransparentColorTest.php b/src/Tests/ImageEffectsSetTransparentColorTest.php
deleted file mode 100644
index fdf468e..0000000
--- a/src/Tests/ImageEffectsSetTransparentColorTest.php
+++ /dev/null
@@ -1,77 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-
-/**
- * Set transparent color effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsSetTransparentColorTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Set transparent color effect test.
-   */
-  public function testSetTransparentColorEffect() {
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestColorshiftOperations']);
-  }
-
-  /**
-   * Set transparent color operations test.
-   */
-  public function doTestColorshiftOperations() {
-    $image_factory = $this->container->get('image.factory');
-
-    // Test on the GIF test image.
-    $test_file = drupal_get_path('module', 'simpletest') . '/files/image-test.gif';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/'. \Drupal::service('file_system')->basename($original_uri);
-
-    // Test data.
-    $test_data = [
-      '#FF0000' => [$this->transparent, $this->green, $this->yellow, $this->blue],
-      '#00FF00' => [$this->red, $this->transparent, $this->yellow, $this->blue],
-      '#0000FF' => [$this->red, $this->green, $this->yellow, $this->transparent],
-      ''  => [$this->red, $this->green, $this->transparent, $this->blue],
-    ];
-
-    foreach ($test_data as $key => $colors) {
-      // Add Set transparent color effect to the test image style.
-      $effect = [
-        'id' => 'image_effects_set_transparent_color',
-        'data' => [
-          'transparent_color][container][transparent' => empty($key) ? TRUE : FALSE,
-          'transparent_color][container][hex' => $key,
-        ],
-      ];
-      $uuid = $this->addEffectToTestStyle($effect);
-
-      // Load Image Style.
-      $image_style = ImageStyle::load('image_effects_test');
-
-      // Check that ::applyEffect generates image with expected transparent
-      // color. GD slightly compresses GIF colors so we use the
-      // ::colorsAreClose method for testing.
-      $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-      $image = $image_factory->get($generated_uri, 'gd');
-      $this->assertTrue($this->colorsAreClose($colors[0], $this->getPixelColor($image, 0, 0), 40));
-      $this->assertTrue($this->colorsAreClose($colors[1], $this->getPixelColor($image, 39, 0), 40));
-      $this->assertTrue($this->colorsAreClose($colors[2], $this->getPixelColor($image, 0, 19), 40));
-      $this->assertTrue($this->colorsAreClose($colors[3], $this->getPixelColor($image, 39, 19), 40));
-
-      // Remove effect.
-      $uuid = $this->removeEffectFromTestStyle($uuid);
-    }
-  }
-}
diff --git a/src/Tests/ImageEffectsSettingsFormTest.php b/src/Tests/ImageEffectsSettingsFormTest.php
deleted file mode 100644
index eb25ac7..0000000
--- a/src/Tests/ImageEffectsSettingsFormTest.php
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\simpletest\WebTestBase;
-
-/**
- * Settings form test.
- *
- * @group Image Effects
- */
-class ImageEffectsSettingsFormTest extends WebTestBase {
-
-  public static $modules = ['image_effects'];
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    // Create a user and log it in.
-    $this->adminUser = $this->drupalCreateUser([
-      'administer site configuration',
-      'administer image styles',
-    ]);
-    $this->drupalLogin($this->adminUser);
-  }
-
-  /**
-   * Settings form test.
-   */
-  public function testSettingsForm() {
-    $admin_path = '/admin/config/media/image_effects';
-
-    // Get the settings form.
-    $this->drupalGet($admin_path);
-
-    // Change the default color selector.
-    $edit = [
-      'settings[color_selector][plugin_id]' => 'farbtastic',
-    ];
-    $this->drupalPostForm(NULL, $edit, t('Save configuration'));
-
-    // Check config changed.
-    $this->assertEqual('farbtastic', \Drupal::config('image_effects.settings')->get('color_selector.plugin_id'));
-
-    // Change the default image selector.
-    $config = \Drupal::configFactory()->getEditable('image_effects.settings');
-    $config->set('image_selector.plugin_id', 'dropdown')->save();
-    $this->drupalGet($admin_path);
-    $edit = [
-      'settings[image_selector][plugin_settings][path]' => 'private://',
-    ];
-    $this->drupalPostForm(NULL, $edit, t('Save configuration'));
-
-    // Check config changed.
-    $this->assertEqual(['path' => 'private://'], \Drupal::config('image_effects.settings')->get('image_selector.plugin_settings.dropdown'));
-
-    // Change the default font selector.
-    $config = \Drupal::configFactory()->getEditable('image_effects.settings');
-    $config->set('font_selector.plugin_id', 'dropdown')->save();
-    $this->drupalGet($admin_path);
-    $edit = [
-      'settings[font_selector][plugin_settings][path]' => 'public://',
-    ];
-    $this->drupalPostForm(NULL, $edit, t('Save configuration'));
-
-    // Check config changed.
-    $this->assertEqual(['path' => 'public://'], \Drupal::config('image_effects.settings')->get('font_selector.plugin_settings.dropdown'));
-  }
-
-}
diff --git a/src/Tests/ImageEffectsStripMetadataTest.php b/src/Tests/ImageEffectsStripMetadataTest.php
deleted file mode 100644
index 73e35aa..0000000
--- a/src/Tests/ImageEffectsStripMetadataTest.php
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-
-/**
- * Strip metadata effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsStripMetadataTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Strip metadata effect test.
-   */
-  public function testStripMetadataEffect() {
-    // Add Strip metadata effect to the test image style.
-    $effect = [
-      'id' => 'image_effects_strip_metadata',
-    ];
-    $this->addEffectToTestStyle($effect);
-
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestStripMetadataOperations']);
-  }
-
-  /**
-   * Strip metadata operations test.
-   */
-  public function doTestStripMetadataOperations() {
-    $image_factory = $this->container->get('image.factory');
-    $test_data = [
-      // Test a JPEG image with EXIF data.
-      [
-        'test_file' => drupal_get_path('module', 'image_effects') . '/tests/images/portrait-painting.jpg',
-        'original_orientation' => 8,
-      ],
-      // Test a JPEG image without EXIF data.
-      [
-        'test_file' => drupal_get_path('module', 'simpletest') . '/files/image-test.jpg',
-        'original_orientation' => NULL,
-      ],
-      // Test a non-EXIF image.
-      [
-        'test_file' => drupal_get_path('module', 'simpletest') . '/files/image-1.png',
-        'original_orientation' => NULL,
-      ],
-    ];
-
-    foreach ($test_data as $data) {
-      // Get expected URIs.
-      $test_file = drupal_get_path('module', 'image_effects') . '/tests/images/portrait-painting.jpg';
-      $original_uri = file_unmanaged_copy($data['test_file'], 'public://', FILE_EXISTS_RENAME);
-      $generated_uri = 'public://styles/image_effects_test/public/'. \Drupal::service('file_system')->basename($original_uri);
-
-      // Test source image EXIF data.
-      $exif = @exif_read_data(\Drupal::service('file_system')->realpath($original_uri));
-      $this->assertEqual($data['original_orientation'], isset($exif['Orientation']) ? $exif['Orientation'] : NULL);
-
-      // Load Image Style and process source image.
-      $image_style = ImageStyle::load('image_effects_test');
-      $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-
-      // Check that ::applyEffect strips EXIF metadata.
-      $exif = @exif_read_data(\Drupal::service('file_system')->realpath($generated_uri));
-      $this->assertEqual(NULL, isset($exif['Orientation']) ? $exif['Orientation'] : NULL);
-    }
-  }
-}
diff --git a/src/Tests/ImageEffectsTestBase.php b/src/Tests/ImageEffectsTestBase.php
index 11f0007..2dbf96e 100644
--- a/src/Tests/ImageEffectsTestBase.php
+++ b/src/Tests/ImageEffectsTestBase.php
@@ -21,6 +21,13 @@ abstract class ImageEffectsTestBase extends WebTestBase {
    */
   protected $toolkits = [];
 
+  /**
+   * Test Image Style.
+   *
+   * @var \Drupal\image\Entity\ImageStyle
+   */
+  protected $imageStyle;
+
   // Colors that are used in testing.
   protected $black       = array(0, 0, 0, 0);
   protected $red         = array(255, 0, 0, 0);
@@ -59,16 +66,12 @@ abstract class ImageEffectsTestBase extends WebTestBase {
     ]);
     $this->drupalLogin($this->adminUser);
 
-    // Create a test image style.
-    $style_name = 'image_effects_test';
-    $style_label = 'Image Effects Test';
-    $style_path = 'admin/config/media/image-styles/manage/' . $style_name;
-    $edit = [
-      'name' => $style_name,
-      'label' => $style_label,
-    ];
-    $this->drupalPostForm('admin/config/media/image-styles/add', $edit, t('Create new style'));
-    $this->assertRaw(t('Style %name was created.', ['%name' => $style_label]));
+    // Create the test image style.
+    $this->imageStyle = ImageStyle::create([
+      'name' => 'image_effects_test',
+      'label' => 'Image Effects Test',
+    ]);
+    $this->assertEqual(SAVED_NEW, $this->imageStyle->save());
   }
 
   /**
@@ -84,30 +87,9 @@ abstract class ImageEffectsTestBase extends WebTestBase {
    *   The UUID of the newly added effect.
    */
   protected function addEffectToTestStyle($effect) {
-    $style_name = 'image_effects_test';
-    $style_path = 'admin/config/media/image-styles/manage/' . $style_name;
-
-    // Get image style prior to adding a new effect.
-    $image_style_pre = ImageStyle::load($style_name);
-
-    // Add the effect.
-    $this->drupalPostForm($style_path, array('new' => $effect['id']), t('Add'));
-    if (!empty($effect['data'])) {
-      $effect_edit = [];
-      foreach($effect['data'] as $field => $value) {
-        $effect_edit['data[' . $field . ']'] = $value;
-      }
-      $this->drupalPostForm(NULL, $effect_edit, t('Add effect'));
-    }
-
-    // Get UUID of newly added effect.
-    $image_style_post = ImageStyle::load($style_name);
-    foreach ($image_style_post->getEffects() as $uuid => $effect) {
-      if (!$image_style_pre->getEffects()->has($uuid)) {
-        return $uuid;
-      }
-    }
-    return NULL;
+    $uuid = $this->imageStyle->addImageEffect($effect);
+    $this->assertEqual(SAVED_UPDATED, $this->imageStyle->save());
+    return $uuid;
   }
 
   /**
@@ -117,9 +99,8 @@ abstract class ImageEffectsTestBase extends WebTestBase {
    *   The UUID of the effect to remove.
    */
   protected function removeEffectFromTestStyle($uuid) {
-    $style_name = 'image_effects_test';
-    $style_path = 'admin/config/media/image-styles/manage/' . $style_name;
-    $this->drupalPostForm($style_path . '/effects/' . $uuid . '/delete', [], t('Delete'));
+    $this->imageStyle->deleteImageEffect($uuid);
+    $this->assertEqual(SAVED_UPDATED, $this->imageStyle->save());
   }
 
   /**
@@ -152,7 +133,8 @@ abstract class ImageEffectsTestBase extends WebTestBase {
    * Executes a test method on requested toolkits.
    */
   protected function executeTestOnToolkits($method) {
-    foreach ($this->toolkits as $toolkit_id) {
+          call_user_func([$this, $method]);
+/*    foreach ($this->toolkits as $toolkit_id) {
       // Manage toolkit specific configuration.
       switch ($toolkit_id) {
         case 'gd':
@@ -161,7 +143,9 @@ abstract class ImageEffectsTestBase extends WebTestBase {
           break;
 
         case 'imagemagick':
+debug('imagemagick');
           if ($this->container->get('module_handler')->moduleExists('imagemagick')) {
+debug('imagemagick - installed');
             $this->changeToolkit($toolkit_id);
             \Drupal::configFactory()->getEditable('imagemagick.settings')
               ->set('debug', TRUE)
@@ -170,6 +154,7 @@ abstract class ImageEffectsTestBase extends WebTestBase {
             // available on the shell path.
             $status = \Drupal::service('image.toolkit.manager')->createInstance('imagemagick')->checkPath('');
             if (empty($status['errors'])) {
+debug('imagemagick - checkpath OK');
               call_user_func($method);
             }
             else {
@@ -179,7 +164,7 @@ abstract class ImageEffectsTestBase extends WebTestBase {
           break;
 
       }
-    }
+    }*/
   }
 
   /**
diff --git a/src/Tests/ImageEffectsTextOverlayTest.php b/src/Tests/ImageEffectsTextOverlayTest.php
deleted file mode 100644
index 8b60b55..0000000
--- a/src/Tests/ImageEffectsTextOverlayTest.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-
-/**
- * Text overlay effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsTextOverlayTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Text overlay effect test.
-   */
-  public function testTextOverlayEffect() {
-    // Add Text overlay effect to the test image style.
-    $effect = [
-      'id' => 'image_effects_text_overlay',
-      'data' => [
-        'text_default][text_string' => 'the quick brown fox jumps over the lazy dog',
-        'font][uri' => drupal_get_path('module', 'image_effects') . '/tests/fonts/LinLibertineTTF_5.3.0_2012_07_02/LinLibertine_Rah.ttf',
-        'font][size' => 40,
-        'layout][position][extended_color][container][transparent' => FALSE,
-        'layout][position][extended_color][container][hex' => '#FF00FF',
-        'layout][position][extended_color][container][opacity' => 100,
-      ],
-    ];
-    $this->addEffectToTestStyle($effect);
-
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestTextOverlayOperations']);
-  }
-
-  /**
-   * Text overlay operations test.
-   */
-  public function doTestTextOverlayOperations() {
-    $image_factory = $this->container->get('image.factory');
-    $test_data = [
-      [
-        'test_file' => drupal_get_path('module', 'simpletest') . '/files/image-test.png',
-        'derivative_width' => 984,
-        'derivative_height' => 61,
-      ],
-    ];
-
-    foreach ($test_data as $data) {
-      // Get expected URIs.
-      $original_uri = file_unmanaged_copy($data['test_file'], 'public://', FILE_EXISTS_RENAME);
-      $generated_uri = 'public://styles/image_effects_test/public/'. \Drupal::service('file_system')->basename($original_uri);
-
-      // Source image.
-      $image = $image_factory->get($original_uri);
-
-      // Load Image Style and get expected derivative URL.
-      $image_style = ImageStyle::load('image_effects_test');
-      $url = file_url_transform_relative($image_style->buildUrl($original_uri));
-
-      // Check that ::applyEffect generates image with expected dimensions
-      // and colors at corners.
-      $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-      $derivative_image = $image_factory->get($generated_uri, 'gd');
-      $this->assertTextOverlay($derivative_image, $data['derivative_width'], $data['derivative_height']);
-      $this->assertTrue($this->colorsAreEqual($this->fuchsia, $this->getPixelColor($derivative_image, 0, 0)));
-      $this->assertTrue($this->colorsAreEqual($this->fuchsia, $this->getPixelColor($derivative_image, $derivative_image->getWidth() - 1, 0)));
-      $this->assertTrue($this->colorsAreEqual($this->fuchsia, $this->getPixelColor($derivative_image, 0, $derivative_image->getHeight() - 1)));
-      $this->assertTrue($this->colorsAreEqual($this->fuchsia, $this->getPixelColor($derivative_image, $derivative_image->getWidth() - 1, $derivative_image->getHeight() - 1)));
-
-      // Check that ::transformDimensions returns expected dimensions.
-      $variables = array(
-        '#theme' => 'image_style',
-        '#style_name' => 'image_effects_test',
-        '#uri' => $original_uri,
-        '#width' => $image->getWidth(),
-        '#height' => $image->getHeight(),
-      );
-      $this->assertEqual('<img src="' . $url . '" width="' . $derivative_image->getWidth() . '" height="' . $derivative_image->getHeight() . '" alt="" class="image-style-image-effects-test" />', $this->getImageTag($variables));
-    }
-  }
-}
diff --git a/src/Tests/ImageEffectsTextUtilityTest.php b/src/Tests/ImageEffectsTextUtilityTest.php
deleted file mode 100644
index bf4e9b2..0000000
--- a/src/Tests/ImageEffectsTextUtilityTest.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\simpletest\KernelTestBase;
-use Drupal\image_effects\Component\TextUtility;
-
-/**
- * Tests the UTF-8 character-based wrapper of the preg_match function.
- *
- * @group Image Effects
- */
-class ImageEffectsTextUtilityTest extends KernelTestBase {
-
-  /**
-   * Performs the tests for the offset argument.
-   */
-  public function testOffsetArgument() {
-    // Character 'п' is 2 bytes long and preg_match() would start from the
-    // second 'п' character and not from the first 'z'.
-    $result = TextUtility::unicodePregMatch('/п/u', 'ппzz', $matches, NULL, 2);
-    $this->assertFalse($result, 'String was skipped using character-based offset.');
-
-    // Again, character 'п' is 2 bytes long and we skip 1 character, so
-    // preg_match() would fail, because the string with byte offset 1 is not a
-    // valid UTF-8 string.
-    $result = TextUtility::unicodePregMatch('/.*$/u', 'пzz', $matches, NULL, 1);
-    $this->assertTrue($result && $matches[0] === 'zz', 'String was matched using character-based offset.');
-  }
-
-  /**
-   * Performs the tests for the captured offset.
-   */
-  public function testCapturedOffset() {
-    // Character 'п' is 2 bytes long and non-unicode preg_match would return
-    // 2 here.
-    $result = TextUtility::unicodePregMatch('/z/u', 'пz', $matches, PREG_OFFSET_CAPTURE);
-    $this->assertTrue($result && $matches[0][1] === 1, 'Returned offset is character-based.');
-  }
-
-}
diff --git a/src/Tests/ImageEffectsWatermarkTest.php b/src/Tests/ImageEffectsWatermarkTest.php
deleted file mode 100644
index ce409ed..0000000
--- a/src/Tests/ImageEffectsWatermarkTest.php
+++ /dev/null
@@ -1,184 +0,0 @@
-<?php
-
-namespace Drupal\image_effects\Tests;
-
-use Drupal\image\Entity\ImageStyle;
-
-/**
- * Watermark effect test.
- *
- * @group Image Effects
- */
-class ImageEffectsWatermarkTest extends ImageEffectsTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setUp() {
-    parent::setUp();
-    $this->toolkits = ['gd', 'imagemagick'];
-  }
-
-  /**
-   * Watermark effect test.
-   */
-  public function testWatermarkEffect() {
-    // Test operations on toolkits.
-    $this->executeTestOnToolkits([$this, 'doTestWatermarkOperations']);
-  }
-
-  /**
-   * Watermark operations test.
-   */
-  public function doTestWatermarkOperations() {
-    $image_factory = $this->container->get('image.factory');
-
-    // -----------------------------------------------------------------------
-    // Basic test.
-    // -----------------------------------------------------------------------
-    $test_file = drupal_get_path('module', 'simpletest') . '/files/image-1.png';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/' . \Drupal::service('file_system')->basename($original_uri);
-
-    $watermark_file = drupal_get_path('module', 'simpletest') . '/files/image-test.png';
-    $watermark_uri = file_unmanaged_copy($watermark_file, 'public://', FILE_EXISTS_RENAME);
-
-    $effect = [
-      'id' => 'image_effects_watermark',
-      'data' => [
-        'placement' => 'left-top',
-        'x_offset' => 1,
-        'y_offset' => 1,
-        'opacity' => 100,
-        'watermark_image' => $watermark_uri
-      ],
-    ];
-    $uuid = $this->addEffectToTestStyle($effect);
-
-    // Load Image Style.
-    $image_style = ImageStyle::load('image_effects_test');
-
-    // Check that ::applyEffect generates image with expected watermark.
-    $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-    $image = $image_factory->get($generated_uri, 'gd');
-    $watermark = $image_factory->get($watermark_uri, 'gd');
-    $this->assertFalse($this->colorsAreEqual($this->getPixelColor($watermark, 0, 0), $this->getPixelColor($image, 0, 0)));
-    $this->assertTrue($this->colorsAreEqual($this->getPixelColor($watermark, 0, 0), $this->getPixelColor($image, 1, 1)));
-    $this->assertTrue($this->colorsAreEqual($this->getPixelColor($watermark, 0, 1), $this->getPixelColor($image, 1, 2)));
-    $this->assertTrue($this->colorsAreEqual($this->getPixelColor($watermark, 0, 3), $this->getPixelColor($image, 1, 4)));
-
-    // Remove effect.
-    $this->removeEffectFromTestStyle($uuid);
-
-    // -----------------------------------------------------------------------
-    // Test for scaled watermark. Place a fuchsia watermark scaled to 5% over
-    // a sample image and check the color of pixels inside/outside the
-    // watermark to see that it was scaled properly.
-    // -----------------------------------------------------------------------
-    $test_file = drupal_get_path('module', 'simpletest') . '/files/image-1.png';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/' . \Drupal::service('file_system')->basename($original_uri);
-
-    $watermark_file = drupal_get_path('module', 'image_effects') . '/tests/images/fuchsia.png';
-    $watermark_uri = file_unmanaged_copy($watermark_file, 'public://', FILE_EXISTS_RENAME);
-
-    $effect = [
-      'id' => 'image_effects_watermark',
-      'data' => [
-        'placement' => 'left-top',
-        'x_offset' => 0,
-        'y_offset' => 0,
-        'opacity' => 100,
-        'watermark_image' => $watermark_uri,
-        'watermark_scale' => 5,
-      ],
-    ];
-    $uuid = $this->addEffectToTestStyle($effect);
-
-    // Load Image Style.
-    $image_style = ImageStyle::load('image_effects_test');
-
-    // Check that ::applyEffect generates image with expected watermark.
-    $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-    $image = $image_factory->get($generated_uri, 'gd');
-    // GD slightly compresses fuchsia while resampling, so checking color
-    // in and out the watermark needs a tolerance.
-    $this->assertTrue($this->colorsAreClose($this->getPixelColor($image, 17, 0), $this->fuchsia, 4));
-    $this->assertFalse($this->colorsAreClose($this->getPixelColor($image, 18, 0), $this->fuchsia, 4));
-    $this->assertTrue($this->colorsAreClose($this->getPixelColor($image, 0, 13), $this->fuchsia, 4));
-    $this->assertFalse($this->colorsAreClose($this->getPixelColor($image, 0, 14), $this->fuchsia, 4));
-
-    // Remove effect.
-    $this->removeEffectFromTestStyle($uuid);
-
-    // -----------------------------------------------------------------------
-    // Test for watermark PNG image with full transparency set, 100% opacity
-    // watermark.
-    // -----------------------------------------------------------------------
-    $test_file = drupal_get_path('module', 'image_effects') . '/tests/images/fuchsia.png';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/' . \Drupal::service('file_system')->basename($original_uri);
-    $watermark_file = drupal_get_path('module', 'simpletest') . '/files/image-test.png';
-    $watermark_uri = file_unmanaged_copy($watermark_file, 'public://', FILE_EXISTS_RENAME);
-
-    $effect = [
-      'id' => 'image_effects_watermark',
-      'data' => [
-        'placement' => 'left-top',
-        'x_offset' => 0,
-        'y_offset' => 0,
-        'opacity' => 100,
-        'watermark_image' => $watermark_uri
-      ],
-    ];
-    $uuid = $this->addEffectToTestStyle($effect);
-
-    // Load Image Style.
-    $image_style = ImageStyle::load('image_effects_test');
-
-    // Check that ::applyEffect generates image with expected transparency.
-    $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-    $image = $image_factory->get($generated_uri, 'gd');
-    $this->assertTrue($this->colorsAreEqual($this->getPixelColor($image, 0, 19), $this->fuchsia));
-
-    // Remove effect.
-    $this->removeEffectFromTestStyle($uuid);
-
-    // -----------------------------------------------------------------------
-    // Test for watermark PNG image with full transparency set, 50% opacity
-    // watermark.
-    // -----------------------------------------------------------------------
-    $test_file = drupal_get_path('module', 'image_effects') . '/tests/images/fuchsia.png';
-    $original_uri = file_unmanaged_copy($test_file, 'public://', FILE_EXISTS_RENAME);
-    $generated_uri = 'public://styles/image_effects_test/public/' . \Drupal::service('file_system')->basename($original_uri);
-    $watermark_file = drupal_get_path('module', 'simpletest') . '/files/image-test.png';
-    $watermark_uri = file_unmanaged_copy($watermark_file, 'public://', FILE_EXISTS_RENAME);
-
-    $effect = [
-      'id' => 'image_effects_watermark',
-      'data' => [
-        'placement' => 'left-top',
-        'x_offset' => 0,
-        'y_offset' => 0,
-        'opacity' => 50,
-        'watermark_image' => $watermark_uri
-      ],
-    ];
-    $uuid = $this->addEffectToTestStyle($effect);
-
-    // Load Image Style.
-    $image_style = ImageStyle::load('image_effects_test');
-
-    // Check that ::applyEffect generates image with expected alpha.
-    $image_style->createDerivative($original_uri, $image_style->buildUri($original_uri));
-    $image = $image_factory->get($generated_uri, 'gd');
-    $this->assertTrue($this->colorsAreEqual($this->getPixelColor($image, 0, 19), $this->fuchsia));
-    // GD and ImageMagick return slightly different colors, use the
-    // ::colorsAreClose method.
-    $this->assertTrue($this->colorsAreClose($this->getPixelColor($image, 39, 0), $this->grey, 4));
-
-    // Remove effect.
-    $this->removeEffectFromTestStyle($uuid);
-  }
-
-}
