ruby-imagespec 0.2.0 → 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/lib/parser/gif.rb CHANGED
@@ -7,7 +7,7 @@ class ImageSpec
7
7
 
8
8
  def self.attributes(stream)
9
9
  width, height = dimensions(stream)
10
- {:width => width, :height => height, :content_type => CONTENT_TYPE}
10
+ {:width => width, :height => height, :content_type => CONTENT_TYPE, :dimensions => [width, height], :file_size => size(stream)}
11
11
  end
12
12
 
13
13
  def self.detected?(stream)
@@ -20,6 +20,10 @@ class ImageSpec
20
20
  stream.read(4).unpack('SS')
21
21
  end
22
22
 
23
+ def self.size(stream)
24
+ stream.size
25
+ end
26
+
23
27
  end
24
28
  end
25
29
  end
data/lib/parser/jpeg.rb CHANGED
@@ -9,7 +9,7 @@ class ImageSpec
9
9
 
10
10
  def self.attributes(stream)
11
11
  width, height = dimensions(stream)
12
- {:width => width, :height => height, :content_type => CONTENT_TYPE}
12
+ {:width => width, :height => height, :content_type => CONTENT_TYPE, :dimensions => [width, height], :file_size => size(stream)}
13
13
  end
14
14
 
15
15
  def self.detected?(stream)
@@ -60,6 +60,10 @@ class ImageSpec
60
60
  end
61
61
  end
62
62
 
63
+ def self.size(stream)
64
+ stream.size
65
+ end
66
+
63
67
  end
64
68
  end
65
69
  end
data/lib/parser/png.rb CHANGED
@@ -7,7 +7,7 @@ class ImageSpec
7
7
 
8
8
  def self.attributes(stream)
9
9
  width, height = dimensions(stream)
10
- {:width => width, :height => height, :content_type => CONTENT_TYPE}
10
+ {:width => width, :height => height, :content_type => CONTENT_TYPE, :dimensions => [width, height], :file_size => size(stream)}
11
11
  end
12
12
 
13
13
  def self.detected?(stream)
@@ -20,6 +20,10 @@ class ImageSpec
20
20
  stream.read(8).unpack('NN')
21
21
  end
22
22
 
23
+ def self.size(stream)
24
+ stream.size
25
+ end
26
+
23
27
  end
24
28
  end
25
29
  end
data/lib/parser/swf.rb CHANGED
@@ -9,7 +9,7 @@ class ImageSpec
9
9
 
10
10
  def self.attributes(stream)
11
11
  width, height = dimensions(stream)
12
- {:width => width, :height => height, :content_type => CONTENT_TYPE}
12
+ {:width => width, :height => height, :content_type => CONTENT_TYPE, :dimensions => [width, height], :file_size => size(stream)}
13
13
  end
14
14
 
15
15
  def self.detected?(stream)
@@ -69,6 +69,10 @@ class ImageSpec
69
69
  return [width, height]
70
70
  end
71
71
 
72
+ def self.size(stream)
73
+ stream.size
74
+ end
75
+
72
76
  end
73
77
  end
74
78
  end
metadata CHANGED
@@ -1,15 +1,10 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: ruby-imagespec
3
- version: !ruby/object:Gem::Version
4
- hash: 23
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 2
9
- - 0
10
- version: 0.2.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.0
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Brandon Anderson
14
9
  - Michael Sheakoski
15
10
  - Mike Boone
@@ -17,74 +12,61 @@ authors:
17
12
  autorequire:
18
13
  bindir: bin
19
14
  cert_chain: []
20
-
21
- date: 2010-08-26 00:00:00 +01:00
22
- default_executable:
23
- dependencies: []
24
-
25
- description: A lightweight module designed to extract the width/height dimensions of various image types. Also supports SWFs.
15
+ date: 2012-08-16 00:00:00.000000000 Z
16
+ dependencies:
17
+ - !ruby/object:Gem::Dependency
18
+ name: rake
19
+ requirement: !ruby/object:Gem::Requirement
20
+ none: false
21
+ requirements:
22
+ - - ! '>='
23
+ - !ruby/object:Gem::Version
24
+ version: '0'
25
+ type: :development
26
+ prerelease: false
27
+ version_requirements: !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ description:
26
34
  email: dimitrij@blacksquaremedia.com
27
35
  executables: []
28
-
29
36
  extensions: []
30
-
31
- extra_rdoc_files:
32
- - LICENSE
33
- - README
34
- files:
35
- - .gitignore
36
- - LICENSE
37
+ extra_rdoc_files: []
38
+ files:
37
39
  - README
38
- - Rakefile
39
- - VERSION
40
40
  - init.rb
41
- - lib/image_spec.rb
42
- - lib/parser.rb
43
41
  - lib/parser/gif.rb
44
- - lib/parser/jpeg.rb
45
42
  - lib/parser/png.rb
46
43
  - lib/parser/swf.rb
47
- - ruby-imagespec.gemspec
48
- - tasks/image_spec_tasks.rake
49
- - test/fixtures/corrupt.jpg
50
- - test/fixtures/leaderboard.jpg
51
- - test/fixtures/leaderboard.swf
52
- - test/fixtures/skyscraper.gif
53
- - test/fixtures/skyscraper.png
54
- - test/image_spec_test.rb
55
- has_rdoc: true
44
+ - lib/parser/jpeg.rb
45
+ - lib/image_spec.rb
46
+ - lib/parser.rb
56
47
  homepage: http://github.com/dim/ruby-imagespec
57
48
  licenses: []
58
-
59
49
  post_install_message:
60
- rdoc_options:
61
- - --charset=UTF-8
62
- require_paths:
50
+ rdoc_options: []
51
+ require_paths:
63
52
  - lib
64
- required_ruby_version: !ruby/object:Gem::Requirement
53
+ required_ruby_version: !ruby/object:Gem::Requirement
65
54
  none: false
66
- requirements:
67
- - - ">="
68
- - !ruby/object:Gem::Version
69
- hash: 3
70
- segments:
71
- - 0
72
- version: "0"
73
- required_rubygems_version: !ruby/object:Gem::Requirement
55
+ requirements:
56
+ - - ! '>='
57
+ - !ruby/object:Gem::Version
58
+ version: 1.9.1
59
+ required_rubygems_version: !ruby/object:Gem::Requirement
74
60
  none: false
75
- requirements:
76
- - - ">="
77
- - !ruby/object:Gem::Version
78
- hash: 3
79
- segments:
80
- - 0
81
- version: "0"
61
+ requirements:
62
+ - - ! '>='
63
+ - !ruby/object:Gem::Version
64
+ version: 1.3.6
82
65
  requirements: []
83
-
84
66
  rubyforge_project:
85
- rubygems_version: 1.3.7
67
+ rubygems_version: 1.8.24
86
68
  signing_key:
87
69
  specification_version: 3
88
70
  summary: Image/Flash extract width/height dimensions extractor
89
- test_files:
90
- - test/image_spec_test.rb
71
+ test_files: []
72
+ has_rdoc:
data/.gitignore DELETED
@@ -1 +0,0 @@
1
- pkg
data/LICENSE DELETED
@@ -1,28 +0,0 @@
1
- # Copyright (c) 2008, Brandon Anderson (anderson.brandon@gmail.com)
2
- # All rights reserved.
3
- #
4
- # Redistribution and use in source and binary forms, with or without modification,
5
- # are permitted provided that the following conditions are met:
6
- #
7
- # Redistributions of source code must retain the above copyright notice,
8
- # this list of conditions and the following disclaimer.
9
- #
10
- # Redistributions in binary form must reproduce the above copyright notice,
11
- # this list of conditions and the following disclaimer in the documentation
12
- # and/or other materials provided with the distribution.
13
- #
14
- # Neither the name of the original author nor the names of contributors
15
- # may be used to endorse or promote products derived from this software
16
- # without specific prior written permission.
17
- #
18
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19
- # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20
- # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21
- # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
22
- # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23
- # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
24
- # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
25
- # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
26
- # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27
- # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
- #
data/Rakefile DELETED
@@ -1,41 +0,0 @@
1
- require 'rake'
2
- require 'rake/testtask'
3
- require 'rake/rdoctask'
4
-
5
- desc 'Default: run unit tests.'
6
- task :default => :test
7
-
8
- desc 'Test the image_spec plugin.'
9
- Rake::TestTask.new(:test) do |t|
10
- t.libs << 'lib'
11
- t.pattern = 'test/**/*_test.rb'
12
- t.verbose = true
13
- end
14
-
15
- desc 'Generate documentation for the image_spec plugin.'
16
- Rake::RDocTask.new(:rdoc) do |rdoc|
17
- rdoc.rdoc_dir = 'rdoc'
18
- rdoc.title = 'ImageSpec'
19
- rdoc.options << '--line-numbers' << '--inline-source'
20
- rdoc.rdoc_files.include('README')
21
- rdoc.rdoc_files.include('lib/**/*.rb')
22
- end
23
-
24
- begin
25
- require 'jeweler'
26
- Jeweler::Tasks.new do |gemspec|
27
- gemspec.name = "ruby-imagespec"
28
- gemspec.summary = "Image/Flash extract width/height dimensions extractor"
29
- gemspec.description = "A lightweight module designed to extract the width/height dimensions of various image types. Also supports SWFs."
30
- gemspec.email = "dimitrij@blacksquaremedia.com"
31
- gemspec.homepage = "http://github.com/dim/ruby-imagespec"
32
- gemspec.authors = [
33
- "Brandon Anderson",
34
- "Michael Sheakoski",
35
- "Mike Boone",
36
- "Dimitrij Denissenko"]
37
- end
38
- Jeweler::GemcutterTasks.new
39
- rescue LoadError
40
- puts "Jeweler not available. Install it with: gem install jeweler"
41
- end
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.2.0
@@ -1,60 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
- # -*- encoding: utf-8 -*-
5
-
6
- Gem::Specification.new do |s|
7
- s.name = %q{ruby-imagespec}
8
- s.version = "0.2.0"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Brandon Anderson", "Michael Sheakoski", "Mike Boone", "Dimitrij Denissenko"]
12
- s.date = %q{2010-08-26}
13
- s.description = %q{A lightweight module designed to extract the width/height dimensions of various image types. Also supports SWFs.}
14
- s.email = %q{dimitrij@blacksquaremedia.com}
15
- s.extra_rdoc_files = [
16
- "LICENSE",
17
- "README"
18
- ]
19
- s.files = [
20
- ".gitignore",
21
- "LICENSE",
22
- "README",
23
- "Rakefile",
24
- "VERSION",
25
- "init.rb",
26
- "lib/image_spec.rb",
27
- "lib/parser.rb",
28
- "lib/parser/gif.rb",
29
- "lib/parser/jpeg.rb",
30
- "lib/parser/png.rb",
31
- "lib/parser/swf.rb",
32
- "ruby-imagespec.gemspec",
33
- "tasks/image_spec_tasks.rake",
34
- "test/fixtures/corrupt.jpg",
35
- "test/fixtures/leaderboard.jpg",
36
- "test/fixtures/leaderboard.swf",
37
- "test/fixtures/skyscraper.gif",
38
- "test/fixtures/skyscraper.png",
39
- "test/image_spec_test.rb"
40
- ]
41
- s.homepage = %q{http://github.com/dim/ruby-imagespec}
42
- s.rdoc_options = ["--charset=UTF-8"]
43
- s.require_paths = ["lib"]
44
- s.rubygems_version = %q{1.3.7}
45
- s.summary = %q{Image/Flash extract width/height dimensions extractor}
46
- s.test_files = [
47
- "test/image_spec_test.rb"
48
- ]
49
-
50
- if s.respond_to? :specification_version then
51
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
52
- s.specification_version = 3
53
-
54
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
55
- else
56
- end
57
- else
58
- end
59
- end
60
-
@@ -1,4 +0,0 @@
1
- # desc "Explaining what the task does"
2
- # task :image_spec do
3
- # # Task goes here
4
- # end
@@ -1 +0,0 @@
1
- ABCDEFGHIJKLMNOPQRSTUVWXYZ
Binary file
Binary file
Binary file
Binary file
@@ -1,37 +0,0 @@
1
- $: << File.join(File.dirname(__FILE__),'..', 'lib')
2
-
3
- require 'test/unit'
4
- require 'image_spec'
5
-
6
- class ImageSpecTest < Test::Unit::TestCase
7
- # Replace this with your real tests.
8
-
9
- def fixture(name)
10
- File.open File.expand_path("../fixtures/#{name}", __FILE__), 'rb'
11
- end
12
-
13
- def assert_spec(values, spec)
14
- assert_equal values, [spec.width, spec.height, spec.content_type]
15
- end
16
-
17
- def test_identifying_jpeg
18
- assert_spec [728, 90, "image/jpeg"], ImageSpec.new(fixture('leaderboard.jpg'))
19
- end
20
-
21
- def test_identifying_gif
22
- assert_spec [120, 600, "image/gif"], ImageSpec.new(fixture('skyscraper.gif'))
23
- end
24
-
25
- def test_identifying_png
26
- assert_spec [120, 600, "image/png"], ImageSpec.new(fixture('skyscraper.png'))
27
- end
28
-
29
- def test_identifying_swf
30
- assert_spec [728, 90, "application/x-shockwave-flash"], ImageSpec.new(fixture('leaderboard.swf'))
31
- end
32
-
33
- def test_corrupted_files
34
- assert_raises(ImageSpec::Error) { ImageSpec.new(fixture('corrupt.jpg')) }
35
- end
36
-
37
- end