You've already forked image_processing
mirror of
https://github.com/usetrmnl/image_processing.git
synced 2026-04-29 13:33:11 -07:00
709bcf7eec
The `MiniTest` was renamed to `Minitest`: https://github.com/minitest/minitest/commit/9a57c520ceac76abfe6105866f8548a94eb357b6 And the `MiniTest` constant is now loaded just when `MT_COMPAT` environment variable is set: https://github.com/minitest/minitest/commit/a2c6c18570f6f0a1bf6af70fe3b6d9599a13fdd6 This fixes following issue: ~~~ $ ruby -Ilib:test -e 'Dir.glob "./test/**/*_test.rb", &method(:require)' /builddir/build/BUILD/test/test_helper.rb:17:in `<top (required)>': uninitialized constant MiniTest (NameError) class MiniTest::Test ^^^^^^^^ Did you mean? Minitest from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require' from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require' from /builddir/build/BUILD/image_processing-1.12.2/usr/share/gems/gems/image_processing-1.12.2/test/builder_test.rb:1:in `<top (required)>' from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require' from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require' from <internal:dir>:220:in `glob' from -e:1:in `<main>' ~~~
68 lines
1.4 KiB
Ruby
68 lines
1.4 KiB
Ruby
require "bundler/setup"
|
|
|
|
ENV["MT_NO_EXPECTATIONS"] = "1" # disable Minitest's expectations monkey-patches
|
|
|
|
require "minitest/autorun"
|
|
require "minitest/pride"
|
|
|
|
require "minitest/hooks/default"
|
|
require "minispec-metadata"
|
|
|
|
ENV["VIPS_WARNING"] = "0" # disable libvips warnings
|
|
|
|
require "dhash-vips"
|
|
require "vips"
|
|
require "mini_magick"
|
|
|
|
class Minitest::Test
|
|
def fixture_image(name)
|
|
File.open("test/fixtures/#{name}", "rb")
|
|
end
|
|
|
|
def copy_to_tempfile(io, extension = nil)
|
|
tempfile = Tempfile.new(["copy", *extension], binmode: true)
|
|
IO.copy_stream(io, tempfile)
|
|
io.rewind
|
|
tempfile.tap(&:open)
|
|
end
|
|
|
|
def assert_similar(image1, image2)
|
|
assert_operator distance(image1, image2), :<=, 3
|
|
end
|
|
|
|
def refute_similar(image1, image2)
|
|
assert_operator distance(image1, image2), :>, 3
|
|
end
|
|
|
|
def assert_dimensions(dimensions, file)
|
|
assert_equal dimensions, Vips::Image.new_from_file(file.path).size
|
|
end
|
|
|
|
def assert_type(type, file)
|
|
assert_equal type, MiniMagick::Image.new(file.path).type
|
|
end
|
|
|
|
private
|
|
|
|
def distance(image1, image2)
|
|
hash1 = DHashVips::IDHash.fingerprint(image1.path)
|
|
hash2 = DHashVips::IDHash.fingerprint(image2.path)
|
|
|
|
DHashVips::IDHash.distance hash1, hash2
|
|
end
|
|
end
|
|
|
|
class Minitest::Spec
|
|
def self.deprecated(name, &block)
|
|
it("#{name} (deprecated)") do
|
|
deprecated{instance_exec(&block)}
|
|
end
|
|
end
|
|
|
|
def deprecated
|
|
$stderr = StringIO.new
|
|
yield
|
|
$stderr = STDERR
|
|
end
|
|
end
|