djatoka 0.0.6 → 0.0.7

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/Rakefile CHANGED
@@ -13,6 +13,7 @@ begin
13
13
  gem.add_development_dependency "shoulda", ">= 0"
14
14
  #gem.add_development_dependency "ruby-debug", ">= 0"
15
15
  gem.add_development_dependency "hanna", ">= 0"
16
+ gem.add_development_dependency "fakeweb", ">= 0"
16
17
  gem.add_dependency "addressable", "2.1.2"
17
18
  gem.add_development_dependency "curb", ">= 0"
18
19
  gem.add_dependency "json", ">= 0"
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.6
1
+ 0.0.7
@@ -60,11 +60,11 @@ module Djatoka::Common
60
60
  end
61
61
  # Here we try to compensate for when the dwtLevels does not match the
62
62
  # djatoka levels.
63
- if metadata.dwt_levels.to_i > metadata.levels.to_i
64
- best_level.to_i - 2
65
- elsif metadata.dwt_levels.to_i == metadata.levels.to_i
63
+ # if metadata.dwt_levels.to_i > metadata.levels.to_i
64
+ # best_level.to_i - 2
65
+ # elsif metadata.dwt_levels.to_i == metadata.levels.to_i
66
66
  best_level.to_i
67
- end
67
+ # end
68
68
  end
69
69
 
70
70
  private
@@ -88,13 +88,13 @@ module Djatoka::Common
88
88
  # we try to compensate for when there is a difference between the
89
89
  # dwtLevels and the djatoka levels. So far the only case seen is where
90
90
  # the dwtLevels are greater than the djatoka levels.
91
- if metadata.dwt_levels.to_i > metadata.levels.to_i
92
- difference = metadata.dwt_levels.to_i - metadata.levels.to_i
93
- good_query_level = query.level.to_i + difference
91
+ # if metadata.dwt_levels.to_i > metadata.levels.to_i
92
+ # difference = metadata.dwt_levels.to_i - metadata.levels.to_i
93
+ # good_query_level = query.level.to_i + difference
94
94
  # dwtLevels in the cases seen so far almost always match the djatoka levels.
95
- elsif metadata.dwt_levels.to_i == metadata.levels.to_i
95
+ # elsif metadata.dwt_levels.to_i == metadata.levels.to_i
96
96
  good_query_level = query.level.to_i
97
- end
97
+ # end
98
98
  height = metadata.all_levels[good_query_level].height
99
99
  width = metadata.all_levels[good_query_level].width
100
100
  else
@@ -56,12 +56,12 @@ class Djatoka::Metadata
56
56
  def all_levels
57
57
  perform if !response # if we haven't already performed the metadata query do it now
58
58
  levels_hash = Hashie::Mash.new
59
- dwt_levels_i = dwt_levels.to_i
60
- (0..dwt_levels_i).each do |level_num|
59
+ levels_i = levels.to_i
60
+ (0..levels_i).each do |level_num|
61
61
  level_height = height.to_i
62
62
  level_width = width.to_i
63
63
 
64
- times_to_halve = dwt_levels_i - level_num
64
+ times_to_halve = levels_i - level_num
65
65
  times_to_halve.times do
66
66
  level_height = level_height / 2
67
67
  level_width = level_width / 2
data/test/helper.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require 'rubygems'
2
2
  require 'test/unit'
3
3
  require 'shoulda'
4
+ require 'fakeweb'
4
5
 
5
6
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
6
7
  $LOAD_PATH.unshift(File.dirname(__FILE__))
@@ -21,13 +22,20 @@ class Test::Unit::TestCase
21
22
  end
22
23
 
23
24
  def set_testing_curb
24
- begin
25
- require 'curb'
26
- Djatoka.use_curb = true
27
- rescue LoadError
28
- Djatoka.use_curb = false
29
- end
25
+ Djatoka.use_curb = false
26
+ # begin
27
+ # require 'curb'
28
+ # Djatoka.use_curb = true
29
+ # rescue LoadError
30
+ # Djatoka.use_curb = false
31
+ # end
30
32
  end
31
33
 
32
34
  end
33
35
 
36
+
37
+ #curl -is -H 'Accept: application/json' -d "url_ver=Z39.88-2004&rft_id=ua023_015-006-bx0003-014-075&svc_id=info%3Alanl-repo%2Fsvc%2FgetMetadata" http://scrc.lib.ncsu.edu/adore-djatoka/resolver > test/fixtures/ua023_015-006-bx0003-014-075-metadata.json
38
+
39
+ FakeWeb.register_uri(:get, "http://african.lanl.gov/adore-djatoka/resolver?rft_id=ua023_015-006-bx0003-014-075&svc_id=info%3Alanl-repo%2Fsvc%2FgetMetadata&url_ver=Z39.88-2004",
40
+ :response => File.read('test/fixtures/ua023_015-006-bx0003-014-075-metadata.json'))
41
+
data/test/test_common.rb CHANGED
@@ -57,6 +57,17 @@ context 'A Djatoka Resolver' do
57
57
  assert_equal '513,0,4093,4093', @region.square.query.region
58
58
  end
59
59
  end
60
+
61
+ context 'an image where the dwt_levels do not match the djatoka levels' do
62
+ setup do
63
+ @region2 = Djatoka::Region.new(@resolver, 'ua023_015-006-bx0003-014-075')
64
+ end
65
+ should 'be able to scale properly' do
66
+ @region2.scale('300').square
67
+ assert @region2.url
68
+ end
69
+ end
70
+
60
71
  end
61
72
 
62
73
  end
@@ -76,6 +76,19 @@ class TestDjatokaMetadata < Test::Unit::TestCase
76
76
  "6"=>{"height"=>3372, "width"=>5120},}
77
77
  assert_equal levels, @levels
78
78
  end
79
+ should 'return appropriate height and width for all levels when levels and dwt_levels do not match' do
80
+ levels = {"0"=>{"height"=>57, "width"=>37},
81
+ "1"=>{"height"=>114, "width"=>74},
82
+ "2"=>{"height"=>228, "width"=>148},
83
+ "3"=>{"height"=>457, "width"=>296},
84
+ "4"=>{"height"=>915, "width"=>592}}
85
+ metadata = @resolver.metadata('ua023_015-006-bx0003-014-075').perform
86
+ returned_levels = metadata.all_levels
87
+ assert_equal levels, returned_levels
88
+
89
+ end
90
+
91
+
79
92
  end # levels
80
93
 
81
94
  end #with_a_resolver
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: djatoka
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
4
+ hash: 17
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 6
10
- version: 0.0.6
9
+ - 7
10
+ version: 0.0.7
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jason Ronallo
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-08-22 00:00:00 -04:00
18
+ date: 2010-10-28 00:00:00 -04:00
19
19
  default_executable: djatoka_url
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -47,9 +47,23 @@ dependencies:
47
47
  type: :development
48
48
  version_requirements: *id002
49
49
  - !ruby/object:Gem::Dependency
50
- name: addressable
50
+ name: fakeweb
51
51
  prerelease: false
52
52
  requirement: &id003 !ruby/object:Gem::Requirement
53
+ none: false
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ hash: 3
58
+ segments:
59
+ - 0
60
+ version: "0"
61
+ type: :development
62
+ version_requirements: *id003
63
+ - !ruby/object:Gem::Dependency
64
+ name: addressable
65
+ prerelease: false
66
+ requirement: &id004 !ruby/object:Gem::Requirement
53
67
  none: false
54
68
  requirements:
55
69
  - - "="
@@ -61,11 +75,11 @@ dependencies:
61
75
  - 2
62
76
  version: 2.1.2
63
77
  type: :runtime
64
- version_requirements: *id003
78
+ version_requirements: *id004
65
79
  - !ruby/object:Gem::Dependency
66
80
  name: curb
67
81
  prerelease: false
68
- requirement: &id004 !ruby/object:Gem::Requirement
82
+ requirement: &id005 !ruby/object:Gem::Requirement
69
83
  none: false
70
84
  requirements:
71
85
  - - ">="
@@ -75,11 +89,11 @@ dependencies:
75
89
  - 0
76
90
  version: "0"
77
91
  type: :development
78
- version_requirements: *id004
92
+ version_requirements: *id005
79
93
  - !ruby/object:Gem::Dependency
80
94
  name: json
81
95
  prerelease: false
82
- requirement: &id005 !ruby/object:Gem::Requirement
96
+ requirement: &id006 !ruby/object:Gem::Requirement
83
97
  none: false
84
98
  requirements:
85
99
  - - ">="
@@ -89,11 +103,11 @@ dependencies:
89
103
  - 0
90
104
  version: "0"
91
105
  type: :runtime
92
- version_requirements: *id005
106
+ version_requirements: *id006
93
107
  - !ruby/object:Gem::Dependency
94
108
  name: trollop
95
109
  prerelease: false
96
- requirement: &id006 !ruby/object:Gem::Requirement
110
+ requirement: &id007 !ruby/object:Gem::Requirement
97
111
  none: false
98
112
  requirements:
99
113
  - - ">="
@@ -103,11 +117,11 @@ dependencies:
103
117
  - 0
104
118
  version: "0"
105
119
  type: :runtime
106
- version_requirements: *id006
120
+ version_requirements: *id007
107
121
  - !ruby/object:Gem::Dependency
108
122
  name: hashie
109
123
  prerelease: false
110
- requirement: &id007 !ruby/object:Gem::Requirement
124
+ requirement: &id008 !ruby/object:Gem::Requirement
111
125
  none: false
112
126
  requirements:
113
127
  - - ">="
@@ -117,7 +131,7 @@ dependencies:
117
131
  - 0
118
132
  version: "0"
119
133
  type: :runtime
120
- version_requirements: *id007
134
+ version_requirements: *id008
121
135
  description: The djatoka library provides some simple methods for creation of the OpenURLs needed to communicate with the Djatoka image server.
122
136
  email: jronallo@gmail.com
123
137
  executables:
@@ -153,13 +167,13 @@ files:
153
167
  - lib/djatoka/region.rb
154
168
  - lib/djatoka/resolver.rb
155
169
  - lib/djatoka/view_helpers.rb
156
- - test/test_common.rb
157
- - test/test_region.rb
158
- - test/helper.rb
159
170
  - test/test_metadata.rb
171
+ - test/test_djatoka.rb
160
172
  - test/test_resolver.rb
161
173
  - test/test_view_helpers.rb
162
- - test/test_djatoka.rb
174
+ - test/test_region.rb
175
+ - test/helper.rb
176
+ - test/test_common.rb
163
177
  has_rdoc: true
164
178
  homepage: http://github.com/jronallo/djatoka
165
179
  licenses: []
@@ -195,10 +209,10 @@ signing_key:
195
209
  specification_version: 3
196
210
  summary: Djatoka image server helpers for Ruby and Rails.
197
211
  test_files:
198
- - test/test_common.rb
199
- - test/test_region.rb
200
- - test/helper.rb
201
212
  - test/test_metadata.rb
213
+ - test/test_djatoka.rb
202
214
  - test/test_resolver.rb
203
215
  - test/test_view_helpers.rb
204
- - test/test_djatoka.rb
216
+ - test/test_region.rb
217
+ - test/helper.rb
218
+ - test/test_common.rb