miso 0.2.4 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +14 -9
 - data/Rakefile +1 -1
 - data/VERSION +1 -1
 - data/lib/miso/processor.rb +5 -4
 - data/lib/miso/processor/graphics_magick.rb +20 -0
 - data/lib/miso/processor/image_magick.rb +1 -1
 - data/miso.gemspec +9 -9
 - data/spec/api/processors_spec.rb +28 -0
 - data/spec/functional/processor/graphics_magick_spec.rb +15 -0
 - data/spec/start.rb +1 -0
 - metadata +7 -6
 - data/spec/api/processor/core_image_spec.rb +0 -29
 - data/spec/api/processor/image_magick_spec.rb +0 -22
 
    
        data/README
    CHANGED
    
    | 
         @@ -7,8 +7,8 @@ to plug in your own backend. 
     | 
|
| 
       7 
7 
     | 
    
         
             
            A unified API is helpful when you run your code on a number of different boxes
         
     | 
| 
       8 
8 
     | 
    
         
             
            and architectures. For instance, you could develop your web application on your
         
     | 
| 
       9 
9 
     | 
    
         
             
            Mac with the Core Image backend [1] and deploy to your Linux server with an
         
     | 
| 
       10 
     | 
    
         
            -
            ImageMagick backend. You could even have the API talk to your 
     | 
| 
       11 
     | 
    
         
            -
            distributed image processing backend.
         
     | 
| 
      
 10 
     | 
    
         
            +
            ImageMagick/GraphicsMagick backend. You could even have the API talk to your
         
     | 
| 
      
 11 
     | 
    
         
            +
            custom distributed image processing backend.
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
13 
     | 
    
         
             
            [1] Note how this means you will never have to install ImageMagick again (;
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
         @@ -50,15 +50,20 @@ But wait, there is more! Read the API documentation for more goodies. 
     | 
|
| 
       50 
50 
     | 
    
         | 
| 
       51 
51 
     | 
    
         
             
            : SUPPORTED BACKENDS
         
     | 
| 
       52 
52 
     | 
    
         | 
| 
       53 
     | 
    
         
            -
            Currently supported backends are: Core Image  
     | 
| 
       54 
     | 
    
         
            -
            are the ones we use. If you want to 
     | 
| 
       55 
     | 
    
         
            -
            accept patches!
         
     | 
| 
      
 53 
     | 
    
         
            +
            Currently supported backends are: Core Image, ImageMagick, and GraphicsMagick,
         
     | 
| 
      
 54 
     | 
    
         
            +
            because those are the ones we, and our contributors use. If you want to
         
     | 
| 
      
 55 
     | 
    
         
            +
            contribute backends we're happy to accept patches!
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
            : CONTRIBUTORS
         
     | 
| 
      
 59 
     | 
    
         
            +
             
     | 
| 
      
 60 
     | 
    
         
            +
            ~> GraphicsMagick * Paul Vaillant (> http://github.com/pvaillant <)
         
     | 
| 
       56 
61 
     | 
    
         | 
| 
       57 
62 
     | 
    
         | 
| 
       58 
63 
     | 
    
         
             
            : ENDORSEMENTS
         
     | 
| 
       59 
64 
     | 
    
         | 
| 
       60 
     | 
    
         
            -
             
     | 
| 
       61 
     | 
    
         
            -
             
     | 
| 
      
 65 
     | 
    
         
            +
               @garyyuen: ‘miso with indian flavors. seems ok.’
         
     | 
| 
      
 66 
     | 
    
         
            +
                  @Oracl: ‘@veganza I love miso! :)’
         
     | 
| 
       62 
67 
     | 
    
         
             
              @lehudgins: ‘ok fine. Miso totally does go kinda bad after a year.’
         
     | 
| 
       63 
     | 
    
         
            -
             
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
      
 68 
     | 
    
         
            +
               Wikipedia: ‘High in protein and rich in vitamins and minerals, miso played
         
     | 
| 
      
 69 
     | 
    
         
            +
                           an important nutritional role in feudal Japan.’
         
     | 
    
        data/Rakefile
    CHANGED
    
    | 
         @@ -42,7 +42,7 @@ begin 
     | 
|
| 
       42 
42 
     | 
    
         
             
                s.authors  = ["Eloy Duran", "Manfred Stienstra"]
         
     | 
| 
       43 
43 
     | 
    
         
             
                s.summary  = s.description = "Miso is a unified API for simple image operations commonly used on the web."
         
     | 
| 
       44 
44 
     | 
    
         
             
                s.files   -= %w{ .gitignore .kick }
         
     | 
| 
       45 
     | 
    
         
            -
                s.add_dependency('executioner', '>= 0. 
     | 
| 
      
 45 
     | 
    
         
            +
                s.add_dependency('executioner', '>= 0.3.0')
         
     | 
| 
       46 
46 
     | 
    
         
             
              end
         
     | 
| 
       47 
47 
     | 
    
         
             
            rescue LoadError
         
     | 
| 
       48 
48 
     | 
    
         
             
            end
         
     | 
    
        data/VERSION
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            0. 
     | 
| 
      
 1 
     | 
    
         
            +
            0.3.0
         
     | 
    
        data/lib/miso/processor.rb
    CHANGED
    
    | 
         @@ -1,7 +1,8 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            module Miso
         
     | 
| 
       2 
2 
     | 
    
         
             
              class Processor
         
     | 
| 
       3 
     | 
    
         
            -
                autoload :CoreImage, 
     | 
| 
       4 
     | 
    
         
            -
                autoload : 
     | 
| 
      
 3 
     | 
    
         
            +
                autoload :CoreImage,      'miso/processor/core_image'
         
     | 
| 
      
 4 
     | 
    
         
            +
                autoload :GraphicsMagick, 'miso/processor/graphics_magick'
         
     | 
| 
      
 5 
     | 
    
         
            +
                autoload :ImageMagick,    'miso/processor/image_magick'
         
     | 
| 
       5 
6 
     | 
    
         | 
| 
       6 
7 
     | 
    
         
             
                class << self
         
     | 
| 
       7 
8 
     | 
    
         
             
                  # Sets the default processor class.
         
     | 
| 
         @@ -26,7 +27,7 @@ module Miso 
     | 
|
| 
       26 
27 
     | 
    
         
             
                  # When no explicit processor_class is set this list is iterated, from
         
     | 
| 
       27 
28 
     | 
    
         
             
                  # first to last, and the first available processor on the machine is used.
         
     | 
| 
       28 
29 
     | 
    
         
             
                  def processor_classes
         
     | 
| 
       29 
     | 
    
         
            -
                    @processor_classes ||= [CoreImage, ImageMagick]
         
     | 
| 
      
 30 
     | 
    
         
            +
                    @processor_classes ||= [CoreImage, GraphicsMagick, ImageMagick]
         
     | 
| 
       30 
31 
     | 
    
         
             
                  end
         
     | 
| 
       31 
32 
     | 
    
         | 
| 
       32 
33 
     | 
    
         
             
                  def available?
         
     | 
| 
         @@ -65,4 +66,4 @@ module Miso 
     | 
|
| 
       65 
66 
     | 
    
         
             
                  dimensions.last
         
     | 
| 
       66 
67 
     | 
    
         
             
                end
         
     | 
| 
       67 
68 
     | 
    
         
             
              end
         
     | 
| 
       68 
     | 
    
         
            -
            end
         
     | 
| 
      
 69 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,20 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            module Miso
         
     | 
| 
      
 2 
     | 
    
         
            +
              class Processor
         
     | 
| 
      
 3 
     | 
    
         
            +
                class GraphicsMagick < ImageMagick
         
     | 
| 
      
 4 
     | 
    
         
            +
                  def self.available?
         
     | 
| 
      
 5 
     | 
    
         
            +
                    !find_executable('gm').nil?
         
     | 
| 
      
 6 
     | 
    
         
            +
                  end
         
     | 
| 
      
 7 
     | 
    
         
            +
                  
         
     | 
| 
      
 8 
     | 
    
         
            +
                  executable :gm
         
     | 
| 
      
 9 
     | 
    
         
            +
                  
         
     | 
| 
      
 10 
     | 
    
         
            +
                  def identify(input_file)
         
     | 
| 
      
 11 
     | 
    
         
            +
                    gm "identify '#{input_file}'"
         
     | 
| 
      
 12 
     | 
    
         
            +
                  end
         
     | 
| 
      
 13 
     | 
    
         
            +
                  
         
     | 
| 
      
 14 
     | 
    
         
            +
                  def convert(source_path, output_path, options)
         
     | 
| 
      
 15 
     | 
    
         
            +
                    ensure_output_directory(output_path)
         
     | 
| 
      
 16 
     | 
    
         
            +
                    gm "convert '#{source_path}' #{options} '#{output_path}'"
         
     | 
| 
      
 17 
     | 
    
         
            +
                  end
         
     | 
| 
      
 18 
     | 
    
         
            +
                end
         
     | 
| 
      
 19 
     | 
    
         
            +
              end
         
     | 
| 
      
 20 
     | 
    
         
            +
            end
         
     | 
    
        data/miso.gemspec
    CHANGED
    
    | 
         @@ -1,15 +1,15 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # Generated by jeweler
         
     | 
| 
       2 
     | 
    
         
            -
            # DO NOT EDIT THIS FILE 
     | 
| 
       3 
     | 
    
         
            -
            # Instead, edit Jeweler::Tasks in Rakefile, and run  
     | 
| 
      
 2 
     | 
    
         
            +
            # DO NOT EDIT THIS FILE
         
     | 
| 
      
 3 
     | 
    
         
            +
            # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
         
     | 
| 
       4 
4 
     | 
    
         
             
            # -*- encoding: utf-8 -*-
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
6 
     | 
    
         
             
            Gem::Specification.new do |s|
         
     | 
| 
       7 
7 
     | 
    
         
             
              s.name = %q{miso}
         
     | 
| 
       8 
     | 
    
         
            -
              s.version = "0. 
     | 
| 
      
 8 
     | 
    
         
            +
              s.version = "0.3.0"
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
              s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
         
     | 
| 
       11 
11 
     | 
    
         
             
              s.authors = ["Eloy Duran", "Manfred Stienstra"]
         
     | 
| 
       12 
     | 
    
         
            -
              s.date = %q{2009-12- 
     | 
| 
      
 12 
     | 
    
         
            +
              s.date = %q{2009-12-29}
         
     | 
| 
       13 
13 
     | 
    
         
             
              s.description = %q{Miso is a unified API for simple image operations commonly used on the web.}
         
     | 
| 
       14 
14 
     | 
    
         
             
              s.email = ["eloy@fngtps.com", "manfred@fngtps.com"]
         
     | 
| 
       15 
15 
     | 
    
         
             
              s.extra_rdoc_files = [
         
     | 
| 
         @@ -27,15 +27,16 @@ Gem::Specification.new do |s| 
     | 
|
| 
       27 
27 
     | 
    
         
             
                 "lib/miso/image.rb",
         
     | 
| 
       28 
28 
     | 
    
         
             
                 "lib/miso/processor.rb",
         
     | 
| 
       29 
29 
     | 
    
         
             
                 "lib/miso/processor/core_image.rb",
         
     | 
| 
      
 30 
     | 
    
         
            +
                 "lib/miso/processor/graphics_magick.rb",
         
     | 
| 
       30 
31 
     | 
    
         
             
                 "lib/miso/processor/image_magick.rb",
         
     | 
| 
       31 
32 
     | 
    
         
             
                 "miso.gemspec",
         
     | 
| 
       32 
33 
     | 
    
         
             
                 "spec/api/factory_spec.rb",
         
     | 
| 
       33 
34 
     | 
    
         
             
                 "spec/api/image_spec.rb",
         
     | 
| 
       34 
     | 
    
         
            -
                 "spec/api/processor/core_image_spec.rb",
         
     | 
| 
       35 
     | 
    
         
            -
                 "spec/api/processor/image_magick_spec.rb",
         
     | 
| 
       36 
35 
     | 
    
         
             
                 "spec/api/processor_spec.rb",
         
     | 
| 
      
 36 
     | 
    
         
            +
                 "spec/api/processors_spec.rb",
         
     | 
| 
       37 
37 
     | 
    
         
             
                 "spec/fixtures/120x100.png",
         
     | 
| 
       38 
38 
     | 
    
         
             
                 "spec/functional/processor/core_image_spec.rb",
         
     | 
| 
      
 39 
     | 
    
         
            +
                 "spec/functional/processor/graphics_magick_spec.rb",
         
     | 
| 
       39 
40 
     | 
    
         
             
                 "spec/functional/processor/image_magick_spec.rb",
         
     | 
| 
       40 
41 
     | 
    
         
             
                 "spec/functional/processor_spec.rb",
         
     | 
| 
       41 
42 
     | 
    
         
             
                 "spec/start.rb"
         
     | 
| 
         @@ -48,10 +49,10 @@ Gem::Specification.new do |s| 
     | 
|
| 
       48 
49 
     | 
    
         
             
              s.test_files = [
         
     | 
| 
       49 
50 
     | 
    
         
             
                "spec/api/factory_spec.rb",
         
     | 
| 
       50 
51 
     | 
    
         
             
                 "spec/api/image_spec.rb",
         
     | 
| 
       51 
     | 
    
         
            -
                 "spec/api/processor/core_image_spec.rb",
         
     | 
| 
       52 
     | 
    
         
            -
                 "spec/api/processor/image_magick_spec.rb",
         
     | 
| 
       53 
52 
     | 
    
         
             
                 "spec/api/processor_spec.rb",
         
     | 
| 
      
 53 
     | 
    
         
            +
                 "spec/api/processors_spec.rb",
         
     | 
| 
       54 
54 
     | 
    
         
             
                 "spec/functional/processor/core_image_spec.rb",
         
     | 
| 
      
 55 
     | 
    
         
            +
                 "spec/functional/processor/graphics_magick_spec.rb",
         
     | 
| 
       55 
56 
     | 
    
         
             
                 "spec/functional/processor/image_magick_spec.rb",
         
     | 
| 
       56 
57 
     | 
    
         
             
                 "spec/functional/processor_spec.rb",
         
     | 
| 
       57 
58 
     | 
    
         
             
                 "spec/start.rb"
         
     | 
| 
         @@ -70,4 +71,3 @@ Gem::Specification.new do |s| 
     | 
|
| 
       70 
71 
     | 
    
         
             
                s.add_dependency(%q<executioner>, [">= 0.2.0"])
         
     | 
| 
       71 
72 
     | 
    
         
             
              end
         
     | 
| 
       72 
73 
     | 
    
         
             
            end
         
     | 
| 
       73 
     | 
    
         
            -
             
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require File.expand_path('../../start', __FILE__)
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            Miso::Processor.processor_classes.each do |processor|
         
     | 
| 
      
 4 
     | 
    
         
            +
              if processor.available?
         
     | 
| 
      
 5 
     | 
    
         
            +
                describe "An instance of #{processor.name}" do
         
     | 
| 
      
 6 
     | 
    
         
            +
                  before do
         
     | 
| 
      
 7 
     | 
    
         
            +
                    @image_120_x_100 = Miso::Image.new(fixture_file('120x100.png'), processor)
         
     | 
| 
      
 8 
     | 
    
         
            +
                    @output_file = temp_file('temp.png')
         
     | 
| 
      
 9 
     | 
    
         
            +
                  end
         
     | 
| 
      
 10 
     | 
    
         
            +
                  
         
     | 
| 
      
 11 
     | 
    
         
            +
                  it "should crop to specified dimensions" do
         
     | 
| 
      
 12 
     | 
    
         
            +
                    @image_120_x_100.crop(40, 30).write(@output_file).dimensions.should == [40, 30]
         
     | 
| 
      
 13 
     | 
    
         
            +
                    @image_120_x_100.crop(40, 33).write(@output_file).dimensions.should == [40, 33]
         
     | 
| 
      
 14 
     | 
    
         
            +
                  end
         
     | 
| 
      
 15 
     | 
    
         
            +
                  
         
     | 
| 
      
 16 
     | 
    
         
            +
                  it "should fit to specified dimensions, conserving the original aspect ratio" do
         
     | 
| 
      
 17 
     | 
    
         
            +
                    @image_120_x_100.fit(40, 30).write(@output_file).dimensions.should == [36, 30]
         
     | 
| 
      
 18 
     | 
    
         
            +
                    @image_120_x_100.fit(40, 34).write(@output_file).dimensions.should == [40, 33]
         
     | 
| 
      
 19 
     | 
    
         
            +
                  end
         
     | 
| 
      
 20 
     | 
    
         
            +
                  
         
     | 
| 
      
 21 
     | 
    
         
            +
                  it "should return its dimensions" do
         
     | 
| 
      
 22 
     | 
    
         
            +
                    @image_120_x_100.dimensions.should == [120, 100]
         
     | 
| 
      
 23 
     | 
    
         
            +
                  end
         
     | 
| 
      
 24 
     | 
    
         
            +
                end
         
     | 
| 
      
 25 
     | 
    
         
            +
              else
         
     | 
| 
      
 26 
     | 
    
         
            +
                warn "[!] Skipping #{processor.name} api spec."
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,15 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require File.expand_path('../../../start', __FILE__)
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            if Executioner::ClassMethods.find_executable('gm')
         
     | 
| 
      
 4 
     | 
    
         
            +
              describe "Miso::Processor::GraphicsMagick" do
         
     | 
| 
      
 5 
     | 
    
         
            +
                it "should check the load paths to see if GraphicsMagick is available" do
         
     | 
| 
      
 6 
     | 
    
         
            +
                  Miso::Processor::GraphicsMagick.should.be.available
         
     | 
| 
      
 7 
     | 
    
         
            +
                  
         
     | 
| 
      
 8 
     | 
    
         
            +
                  Miso::Processor::GraphicsMagick.stubs(:find_executable).returns(nil)
         
     | 
| 
      
 9 
     | 
    
         
            +
                  Miso::Processor::GraphicsMagick.should.not.be.available
         
     | 
| 
      
 10 
     | 
    
         
            +
                end
         
     | 
| 
      
 11 
     | 
    
         
            +
              end
         
     | 
| 
      
 12 
     | 
    
         
            +
              
         
     | 
| 
      
 13 
     | 
    
         
            +
            else
         
     | 
| 
      
 14 
     | 
    
         
            +
              warn "[!] Skipping Miso::Processor::GraphicsMagick functional spec."
         
     | 
| 
      
 15 
     | 
    
         
            +
            end
         
     | 
    
        data/spec/start.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification 
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: miso
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version 
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.3.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors: 
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Eloy Duran
         
     | 
| 
         @@ -10,7 +10,7 @@ autorequire: 
     | 
|
| 
       10 
10 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       11 
11 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
     | 
    
         
            -
            date: 2009-12- 
     | 
| 
      
 13 
     | 
    
         
            +
            date: 2009-12-29 00:00:00 +01:00
         
     | 
| 
       14 
14 
     | 
    
         
             
            default_executable: 
         
     | 
| 
       15 
15 
     | 
    
         
             
            dependencies: 
         
     | 
| 
       16 
16 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
         @@ -45,15 +45,16 @@ files: 
     | 
|
| 
       45 
45 
     | 
    
         
             
            - lib/miso/image.rb
         
     | 
| 
       46 
46 
     | 
    
         
             
            - lib/miso/processor.rb
         
     | 
| 
       47 
47 
     | 
    
         
             
            - lib/miso/processor/core_image.rb
         
     | 
| 
      
 48 
     | 
    
         
            +
            - lib/miso/processor/graphics_magick.rb
         
     | 
| 
       48 
49 
     | 
    
         
             
            - lib/miso/processor/image_magick.rb
         
     | 
| 
       49 
50 
     | 
    
         
             
            - miso.gemspec
         
     | 
| 
       50 
51 
     | 
    
         
             
            - spec/api/factory_spec.rb
         
     | 
| 
       51 
52 
     | 
    
         
             
            - spec/api/image_spec.rb
         
     | 
| 
       52 
     | 
    
         
            -
            - spec/api/processor/core_image_spec.rb
         
     | 
| 
       53 
     | 
    
         
            -
            - spec/api/processor/image_magick_spec.rb
         
     | 
| 
       54 
53 
     | 
    
         
             
            - spec/api/processor_spec.rb
         
     | 
| 
      
 54 
     | 
    
         
            +
            - spec/api/processors_spec.rb
         
     | 
| 
       55 
55 
     | 
    
         
             
            - spec/fixtures/120x100.png
         
     | 
| 
       56 
56 
     | 
    
         
             
            - spec/functional/processor/core_image_spec.rb
         
     | 
| 
      
 57 
     | 
    
         
            +
            - spec/functional/processor/graphics_magick_spec.rb
         
     | 
| 
       57 
58 
     | 
    
         
             
            - spec/functional/processor/image_magick_spec.rb
         
     | 
| 
       58 
59 
     | 
    
         
             
            - spec/functional/processor_spec.rb
         
     | 
| 
       59 
60 
     | 
    
         
             
            - spec/start.rb
         
     | 
| 
         @@ -88,10 +89,10 @@ summary: Miso is a unified API for simple image operations commonly used on the 
     | 
|
| 
       88 
89 
     | 
    
         
             
            test_files: 
         
     | 
| 
       89 
90 
     | 
    
         
             
            - spec/api/factory_spec.rb
         
     | 
| 
       90 
91 
     | 
    
         
             
            - spec/api/image_spec.rb
         
     | 
| 
       91 
     | 
    
         
            -
            - spec/api/processor/core_image_spec.rb
         
     | 
| 
       92 
     | 
    
         
            -
            - spec/api/processor/image_magick_spec.rb
         
     | 
| 
       93 
92 
     | 
    
         
             
            - spec/api/processor_spec.rb
         
     | 
| 
      
 93 
     | 
    
         
            +
            - spec/api/processors_spec.rb
         
     | 
| 
       94 
94 
     | 
    
         
             
            - spec/functional/processor/core_image_spec.rb
         
     | 
| 
      
 95 
     | 
    
         
            +
            - spec/functional/processor/graphics_magick_spec.rb
         
     | 
| 
       95 
96 
     | 
    
         
             
            - spec/functional/processor/image_magick_spec.rb
         
     | 
| 
       96 
97 
     | 
    
         
             
            - spec/functional/processor_spec.rb
         
     | 
| 
       97 
98 
     | 
    
         
             
            - spec/start.rb
         
     | 
| 
         @@ -1,29 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require File.expand_path('../../../start', __FILE__)
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            begin
         
     | 
| 
       4 
     | 
    
         
            -
              require 'osx/cocoa'
         
     | 
| 
       5 
     | 
    
         
            -
              
         
     | 
| 
       6 
     | 
    
         
            -
              describe "An instance of Miso::Processor::CoreImage" do
         
     | 
| 
       7 
     | 
    
         
            -
                before do
         
     | 
| 
       8 
     | 
    
         
            -
                  @image_120_x_100 = Miso::Image.new(fixture_file('120x100.png'), Miso::Processor::CoreImage)
         
     | 
| 
       9 
     | 
    
         
            -
                  @output_file = temp_file('temp.png')
         
     | 
| 
       10 
     | 
    
         
            -
                end
         
     | 
| 
       11 
     | 
    
         
            -
                
         
     | 
| 
       12 
     | 
    
         
            -
                it "should crop to specified dimensions" do
         
     | 
| 
       13 
     | 
    
         
            -
                  @image_120_x_100.crop(40, 30).write(@output_file).dimensions.should == [40, 30]
         
     | 
| 
       14 
     | 
    
         
            -
                  @image_120_x_100.crop(40, 33).write(@output_file).dimensions.should == [40, 33]
         
     | 
| 
       15 
     | 
    
         
            -
                end
         
     | 
| 
       16 
     | 
    
         
            -
                
         
     | 
| 
       17 
     | 
    
         
            -
                it "should fit to specified dimensions, conserving the original aspect ratio" do
         
     | 
| 
       18 
     | 
    
         
            -
                  @image_120_x_100.fit(40, 30).write(@output_file).dimensions.should == [36, 30]
         
     | 
| 
       19 
     | 
    
         
            -
                  @image_120_x_100.fit(40, 34).write(@output_file).dimensions.should == [40, 33]
         
     | 
| 
       20 
     | 
    
         
            -
                end
         
     | 
| 
       21 
     | 
    
         
            -
                
         
     | 
| 
       22 
     | 
    
         
            -
                it "should return its dimensions" do
         
     | 
| 
       23 
     | 
    
         
            -
                  @image_120_x_100.dimensions.should == [120, 100]
         
     | 
| 
       24 
     | 
    
         
            -
                end
         
     | 
| 
       25 
     | 
    
         
            -
              end
         
     | 
| 
       26 
     | 
    
         
            -
              
         
     | 
| 
       27 
     | 
    
         
            -
            rescue LoadError
         
     | 
| 
       28 
     | 
    
         
            -
              warn "[!] Skipping Miso::Processor::CoreImage API spec."
         
     | 
| 
       29 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,22 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require File.expand_path('../../../start', __FILE__)
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            describe "An instance of Miso::Processor::ImageMagick" do
         
     | 
| 
       4 
     | 
    
         
            -
              before do
         
     | 
| 
       5 
     | 
    
         
            -
                @image_120_x_100 = Miso::Image.new(fixture_file('120x100.png'), Miso::Processor::ImageMagick)
         
     | 
| 
       6 
     | 
    
         
            -
                @output_file = temp_file('temp.png')
         
     | 
| 
       7 
     | 
    
         
            -
              end
         
     | 
| 
       8 
     | 
    
         
            -
              
         
     | 
| 
       9 
     | 
    
         
            -
              it "should crop to specified dimensions" do
         
     | 
| 
       10 
     | 
    
         
            -
                @image_120_x_100.crop(40, 30).write(@output_file).dimensions.should == [40, 30]
         
     | 
| 
       11 
     | 
    
         
            -
                @image_120_x_100.crop(40, 33).write(@output_file).dimensions.should == [40, 33]
         
     | 
| 
       12 
     | 
    
         
            -
              end
         
     | 
| 
       13 
     | 
    
         
            -
              
         
     | 
| 
       14 
     | 
    
         
            -
              it "should fit to specified dimensions, conserving the original aspect ratio" do
         
     | 
| 
       15 
     | 
    
         
            -
                @image_120_x_100.fit(40, 30).write(@output_file).dimensions.should == [36, 30]
         
     | 
| 
       16 
     | 
    
         
            -
                @image_120_x_100.fit(40, 34).write(@output_file).dimensions.should == [40, 33]
         
     | 
| 
       17 
     | 
    
         
            -
              end
         
     | 
| 
       18 
     | 
    
         
            -
              
         
     | 
| 
       19 
     | 
    
         
            -
              it "should return its dimensions" do
         
     | 
| 
       20 
     | 
    
         
            -
                @image_120_x_100.dimensions.should == [120, 100]
         
     | 
| 
       21 
     | 
    
         
            -
              end
         
     | 
| 
       22 
     | 
    
         
            -
            end
         
     |