dotdiff 3.0.1 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: dc1ca017c297dd63435e5282ad168d6e25ab0f9a3c8e2ac0caea8e2d2fa0df4e
4
- data.tar.gz: bbecf64885b04e5ed2cd123d6b930e3ceaa15c82a03e0ee67937bb49af385537
2
+ SHA1:
3
+ metadata.gz: c869fc9b85965913b4ba033845431a45f5a32f0b
4
+ data.tar.gz: db555b8adab6b02ac434cd6d490acf905a02b765
5
5
  SHA512:
6
- metadata.gz: df25e2add82e31537d9d6cab28f46c96cd251106a331a503709c9aa33e229ae64837c809a03c66e4142def23e3eedf05f49106101ba343bac48b61faeff16740
7
- data.tar.gz: 4ba8aafa62200080f35294ade8a7d1198f880de72385cc9196eff04654e72755daf3771084136639aa8a01f5c6844a78274b749cacd6a82570a01a1d8833fbe5
6
+ metadata.gz: a7f2639b01603bfa39c611bbc04b464880b0e3332d510ea369c9b9b42da0f2cf3ca722d8612e4390f7d4e7d75674069a64773198fe41acf75b86cd2eb6962bad
7
+ data.tar.gz: b4a57a11512cf4ee9fa8f03f8bbedd8af8f729beb4d92fd0c27800c8a9ffc977bc7673397eb24c359273d2e76ee6a369f20de284006c2abd7cba18963102ac67
data/dotdiff.gemspec CHANGED
@@ -4,14 +4,11 @@ lib = File.expand_path('lib', __dir__)
4
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
5
  require 'dotdiff/version'
6
6
 
7
- is_java = RUBY_PLATFORM == 'java'
8
-
9
7
  Gem::Specification.new do |spec|
10
8
  spec.name = 'dotdiff'
11
9
  spec.version = DotDiff::VERSION
12
10
  spec.authors = ['Jon Normington']
13
11
  spec.email = ['jnormington@users.noreply.github.com']
14
- spec.platform = 'java' if is_java
15
12
 
16
13
  spec.summary = 'Image regression wrapper for Capybara and RSpec using image'\
17
14
  'magick supporting both MRI and JRuby versions'
@@ -25,11 +22,7 @@ Gem::Specification.new do |spec|
25
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
26
23
  spec.require_paths = ['lib']
27
24
 
28
- if is_java
29
- spec.add_runtime_dependency 'rmagick4j', '>= 0.4.0'
30
- else
31
- spec.add_runtime_dependency 'rmagick', '>= 2.15'
32
- end
25
+ spec.add_runtime_dependency 'mini_magick', '>= 4.11.0'
33
26
 
34
27
  spec.add_development_dependency 'bundler', '>= 2'
35
28
  spec.add_development_dependency 'capybara', '>= 2.6'
@@ -9,19 +9,19 @@ module DotDiff
9
9
  end
10
10
 
11
11
  def both_images_same_dimensions?
12
- base_image.rows == new_image.rows &&
13
- base_image.columns == new_image.columns
12
+ base_image.width == new_image.width &&
13
+ base_image.height == new_image.height
14
14
  end
15
15
 
16
16
  def total_pixels
17
- base_image.rows * base_image.columns
17
+ base_image.width * base_image.height
18
18
  end
19
19
 
20
20
  def dimensions_mismatch_msg
21
21
  <<~MSG
22
22
  Images are not the same dimensions to be compared
23
- Base file: #{base_image.columns}x#{base_image.rows}
24
- New file: #{new_image.columns}x#{new_image.rows}
23
+ Base file: #{base_image.width}x#{base_image.height}
24
+ New file: #{new_image.width}x#{new_image.height}
25
25
  MSG
26
26
  end
27
27
 
@@ -30,11 +30,11 @@ module DotDiff
30
30
  attr_reader :baseimg_file, :newimg_file
31
31
 
32
32
  def base_image
33
- @base_image ||= Magick::Image.read(baseimg_file).first
33
+ @base_image ||= MiniMagick::Image.open(baseimg_file)
34
34
  end
35
35
 
36
36
  def new_image
37
- @new_image ||= Magick::Image.read(newimg_file).first
37
+ @new_image ||= MiniMagick::Image.open(newimg_file)
38
38
  end
39
39
  end
40
40
  end
@@ -1,29 +1,31 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'rmagick'
3
+ require 'mini_magick'
4
4
 
5
5
  module DotDiff
6
6
  module Image
7
7
  module Cropper
8
8
  def crop_and_resave(element)
9
9
  image = load_image(fullscreen_file)
10
- image.crop!(
11
- element.rectangle.x.floor,
12
- element.rectangle.y.floor,
13
- width(element, image),
14
- height(element, image)
15
- )
16
10
 
11
+ # @see http://www.imagemagick.org/script/command-line-options.php?#crop
12
+ crop_area =
13
+ '' + width(element, image).to_s +
14
+ 'x' + height(element, image).to_s +
15
+ '+' + element.rectangle.x.floor.to_s +
16
+ '+' + element.rectangle.y.floor.to_s
17
+
18
+ image.crop crop_area
17
19
  image.write(cropped_file)
18
20
  end
19
21
 
20
22
  def load_image(file)
21
- Magick::Image.read(file).first
23
+ MiniMagick::Image.open(file)
22
24
  end
23
25
 
24
26
  def height(element, image)
25
27
  element_height = element.rectangle.height + element.rectangle.y
26
- image_height = image.rows
28
+ image_height = image.height
27
29
 
28
30
  if element_height > image_height
29
31
  image_height - element.rectangle.y
@@ -34,7 +36,7 @@ module DotDiff
34
36
 
35
37
  def width(element, image)
36
38
  element_width = element.rectangle.width + element.rectangle.x
37
- image_width = image.columns
39
+ image_width = image.width
38
40
 
39
41
  if element_width > image_width
40
42
  image_width - element.rectangle.x
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module DotDiff
4
- VERSION = '3.0.1'
4
+ VERSION = '4.0.0'
5
5
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dotdiff
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jon Normington
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-03-28 00:00:00.000000000 Z
11
+ date: 2022-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rmagick
14
+ name: mini_magick
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '2.15'
19
+ version: 4.11.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '2.15'
26
+ version: 4.11.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -118,7 +118,7 @@ homepage: https://github.com/jnormington/dotdiff
118
118
  licenses:
119
119
  - MIT
120
120
  metadata: {}
121
- post_install_message:
121
+ post_install_message:
122
122
  rdoc_options: []
123
123
  require_paths:
124
124
  - lib
@@ -133,8 +133,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
133
133
  - !ruby/object:Gem::Version
134
134
  version: '0'
135
135
  requirements: []
136
- rubygems_version: 3.1.2
137
- signing_key:
136
+ rubyforge_project:
137
+ rubygems_version: 2.6.14.4
138
+ signing_key:
138
139
  specification_version: 4
139
140
  summary: Image regression wrapper for Capybara and RSpec using imagemagick supporting
140
141
  both MRI and JRuby versions