1.20.x user.test UserPictureTestCase::testWithoutGDinvalidDimension()

Do the test: GD Toolkit is not installed Picture has invalid size

results: The image shouldn't be uploaded

File

modules/user/tests/user.test, line 1093
Tests for user.module.

Class

UserPictureTestCase

Code

function testWithoutGDinvalidDimension() {
  if ($this->_directory_test && !image_get_toolkit()) {
    $this->backdropLogin($this->user);

    $image = current($this->backdropGetTestFiles('image'));
    $info = image_get_info($image->uri);

    // Set new variables: invalid dimensions, valid filesize (0 = no limit).
    $test_dim = ($info['width'] - 10) . 'x' . ($info['height'] - 10);
    config('system.core')
      ->set('user_picture_dimensions', $test_dim)
      ->set('user_picture_file_size', 0)
      ->save();

    $pic_path = $this->saveUserPicture($image);

    // Test that the upload failed and that the correct reason was cited.
    $text = t('The specified file %filename could not be uploaded.', array('%filename' => $image->filename));
    $this->assertRaw($text, 'Upload failed.');
    $text = t('The image is too large; the maximum dimensions are %dimensions pixels.', array('%dimensions' => $test_dim));
    $this->assertRaw($text, 'Checking response on invalid image (dimensions).');

    // Check if file is not uploaded.
    $this->assertFalse(is_file($pic_path), 'File was not uploaded.');
  }
}