flickrmocks 0.8.13 → 0.8.14
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/flickrmocks.gemspec +3 -2
- data/lib/flickr_mocks/fixtures.rb +6 -2
- data/lib/flickr_mocks/stubs.rb +8 -8
- data/spec/api/api_spec.rb +8 -8
- data/spec/api/flickr_spec.rb +1 -1
- data/spec/base/fixtures_spec.rb +17 -2
- data/spec/base/flickraw/custom_clone_spec.rb +1 -1
- data/spec/base/flickraw/custom_compare_spec.rb +5 -5
- data/spec/base/flickraw/custom_marshal_spec.rb +1 -1
- data/spec/base/helpers_spec.rb +1 -1
- data/spec/base/stubs_spec.rb +2 -1
- data/spec/fixtures/author_photos.marshal +0 -0
- data/spec/fixtures/commons_institution_photos.marshal +0 -0
- data/spec/fixtures/expected_methods.marshal +3 -2
- data/spec/fixtures/photo.marshal +0 -0
- data/spec/fixtures/photo_details.marshal +0 -0
- data/spec/fixtures/photo_size.marshal +0 -0
- data/spec/fixtures/photo_sizes.marshal +0 -0
- data/spec/fixtures/photos.marshal +0 -0
- data/spec/models/commons_institution_spec.rb +1 -1
- data/spec/models/commons_institutions_spec.rb +1 -1
- data/spec/models/photo_details_spec.rb +1 -1
- data/spec/models/photo_search_spec.rb +1 -1
- data/spec/models/photo_size_spec.rb +1 -1
- data/spec/models/photo_sizes_spec.rb +1 -1
- data/spec/models/photo_spec.rb +1 -1
- data/spec/models/photos_spec.rb +1 -2
- data/spec/spec_helper.rb +1 -3
- data/tasks/fixtures.rb +17 -5
- metadata +4 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.8.
|
1
|
+
0.8.14
|
data/flickrmocks.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{flickrmocks}
|
8
|
-
s.version = "0.8.
|
8
|
+
s.version = "0.8.14"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Takaltoo"]
|
12
|
-
s.date = %q{2010-12-
|
12
|
+
s.date = %q{2010-12-08}
|
13
13
|
s.description = %q{FlickrMocks makes it possible to Marshal responses
|
14
14
|
generated from the FLickRaw gem. This is useful for
|
15
15
|
Mocking/Stubbing the Flickr interface for testing purposes.
|
@@ -67,6 +67,7 @@ Gem::Specification.new do |s|
|
|
67
67
|
"spec/base/stubs_spec.rb",
|
68
68
|
"spec/base/version_spec.rb",
|
69
69
|
"spec/fixtures/author_photos.marshal",
|
70
|
+
"spec/fixtures/commons_institution_photos.marshal",
|
70
71
|
"spec/fixtures/commons_institutions.marshal",
|
71
72
|
"spec/fixtures/empty_photos.marshal",
|
72
73
|
"spec/fixtures/expected_methods.marshal",
|
@@ -1,9 +1,12 @@
|
|
1
1
|
require 'ostruct'
|
2
|
+
require 'singleton'
|
2
3
|
|
3
4
|
module FlickrMocks
|
4
5
|
class Fixtures
|
6
|
+
include Singleton
|
5
7
|
attr_accessor :photos,:interesting_photos,:author_photos,:photo,:photo_details,
|
6
|
-
:photo_sizes,:photo_size,:expected_methods,:empty_photos
|
8
|
+
:photo_sizes,:photo_size,:expected_methods,:empty_photos,
|
9
|
+
:commons_institutions,:commons_institution_photos
|
7
10
|
|
8
11
|
def initialize
|
9
12
|
@photos = load_fixture(:photos)
|
@@ -17,7 +20,8 @@ module FlickrMocks
|
|
17
20
|
@photo_size = load_fixture(:photo_size)
|
18
21
|
|
19
22
|
@commons_institutions = load_fixture(:commons_institutions)
|
20
|
-
|
23
|
+
@commons_institution_photos = load_fixture(:commons_institution_photos)
|
24
|
+
|
21
25
|
@empty_photos = load_fixture(:empty_photos)
|
22
26
|
|
23
27
|
@expected_methods = load_fixture(:expected_methods)
|
data/lib/flickr_mocks/stubs.rb
CHANGED
@@ -9,7 +9,7 @@ module FlickrMocks
|
|
9
9
|
|
10
10
|
|
11
11
|
def self.stub_search
|
12
|
-
fixtures = Fixtures.
|
12
|
+
fixtures = Fixtures.instance
|
13
13
|
Proc.new { flickr.photos.stub(:search) do |params|
|
14
14
|
if !params.is_a?(Hash)
|
15
15
|
raise FlickRaw::FailedResponse.new('Parameterless searches have been disabled. Please use flickr.photos.getRecent instead.',
|
@@ -45,7 +45,7 @@ module FlickrMocks
|
|
45
45
|
raise FlickRaw::FailedResponse.new('Photo "%s" not found (invalid ID)' % params[:photo_id],
|
46
46
|
'code','flickr.photos.getInfo')
|
47
47
|
else
|
48
|
-
Fixtures.
|
48
|
+
Fixtures.instance.photo_details
|
49
49
|
end
|
50
50
|
end
|
51
51
|
}.call
|
@@ -64,7 +64,7 @@ module FlickrMocks
|
|
64
64
|
raise FlickRaw::FailedResponse.new('Photo not found',
|
65
65
|
'code','flickr.photos.getSizes')
|
66
66
|
else
|
67
|
-
Fixtures.
|
67
|
+
Fixtures.instance.photo_sizes
|
68
68
|
end
|
69
69
|
end
|
70
70
|
}.call
|
@@ -74,17 +74,17 @@ module FlickrMocks
|
|
74
74
|
Proc.new {
|
75
75
|
flickr.interestingness.stub(:getList) do |params|
|
76
76
|
if !params.is_a?(Hash)
|
77
|
-
Fixtures.
|
77
|
+
Fixtures.instance.interesting_photos
|
78
78
|
elsif !params.has_key?(:date)
|
79
|
-
Fixtures.
|
79
|
+
Fixtures.instance.interesting_photos
|
80
80
|
elsif params[:date] == 'garbage'
|
81
81
|
raise FlickRaw::FailedResponse.new('Not a valid date string',
|
82
82
|
'code','flickr.interestingness.getList'
|
83
83
|
)
|
84
84
|
elsif params[:date] == '2000-01-01'
|
85
|
-
Fixtures.
|
85
|
+
Fixtures.instance.empty_photos
|
86
86
|
else
|
87
|
-
Fixtures.
|
87
|
+
Fixtures.instance.interesting_photos
|
88
88
|
end
|
89
89
|
end
|
90
90
|
}.call
|
@@ -93,7 +93,7 @@ module FlickrMocks
|
|
93
93
|
def self.stub_commons_institutions
|
94
94
|
Proc.new {
|
95
95
|
flickr.commons.stub(:getInstitutions) do
|
96
|
-
Fixtures.
|
96
|
+
Fixtures.instance.commons_institutions
|
97
97
|
end
|
98
98
|
}.call
|
99
99
|
end
|
data/spec/api/api_spec.rb
CHANGED
@@ -3,13 +3,13 @@ require 'ruby-debug'
|
|
3
3
|
describe APP::Api do
|
4
4
|
let(:klass) { APP::Api }
|
5
5
|
|
6
|
-
let(:fixtures)
|
7
|
-
let(:photo)
|
8
|
-
let(:photos)
|
9
|
-
let(:sizes)
|
10
|
-
let(:photo_details)
|
11
|
-
let(:interesting_photos)
|
12
|
-
let(:commons_institutions)
|
6
|
+
let(:fixtures){APP::Fixtures.instance}
|
7
|
+
let(:photo){fixtures.photo}
|
8
|
+
let(:photos){fixtures.photos}
|
9
|
+
let(:sizes){fixtures.photo_sizes}
|
10
|
+
let(:photo_details){fixtures.photo_details}
|
11
|
+
let(:interesting_photos){fixtures.interesting_photos}
|
12
|
+
let(:commons_institutions){fixtures.commons_institutions}
|
13
13
|
|
14
14
|
|
15
15
|
context "class instance variables" do
|
@@ -91,4 +91,4 @@ describe APP::Api do
|
|
91
91
|
end
|
92
92
|
|
93
93
|
end
|
94
|
-
end
|
94
|
+
end
|
data/spec/api/flickr_spec.rb
CHANGED
data/spec/base/fixtures_spec.rb
CHANGED
@@ -4,9 +4,18 @@ require 'ruby-debug'
|
|
4
4
|
describe APP::Fixtures do
|
5
5
|
|
6
6
|
let(:klass) {APP::Fixtures}
|
7
|
-
let(:fixtures) {
|
7
|
+
let(:fixtures) {klass.instance}
|
8
8
|
let(:subject) {fixtures}
|
9
|
-
|
9
|
+
|
10
|
+
context "singleton behavior" do
|
11
|
+
specify {klass.should respond_to(:instance)}
|
12
|
+
it "returns an instance of the fixtures class" do
|
13
|
+
klass.instance.should == fixtures
|
14
|
+
end
|
15
|
+
it "raises an error when new called" do
|
16
|
+
expect {klass.new}.to raise_error(NoMethodError)
|
17
|
+
end
|
18
|
+
end
|
10
19
|
context "class methods" do
|
11
20
|
specify {klass.should respond_to(:repository)}
|
12
21
|
context "repository" do
|
@@ -84,6 +93,12 @@ describe APP::Fixtures do
|
|
84
93
|
let(:fixture){:commons_institutions}
|
85
94
|
it_behaves_like "a flickraw fixture"
|
86
95
|
end
|
96
|
+
|
97
|
+
specify {subject.should respond_to(:commons_institution_photos)}
|
98
|
+
context "commons_institutions_photos" do
|
99
|
+
let(:fixture){:commons_institution_photos}
|
100
|
+
it_behaves_like "a flickraw fixture"
|
101
|
+
end
|
87
102
|
end
|
88
103
|
|
89
104
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe APP::CustomCompare do
|
4
|
-
let(:fixtures){APP::Fixtures.
|
4
|
+
let(:fixtures){APP::Fixtures.instance}
|
5
5
|
|
6
6
|
let(:photo){fixtures.photo}
|
7
7
|
let(:photos){fixtures.photos}
|
@@ -45,7 +45,7 @@ describe APP::CustomCompare do
|
|
45
45
|
context "photos flickraw responselist" do
|
46
46
|
let(:subject){photos}
|
47
47
|
let(:other){photo_details}
|
48
|
-
|
48
|
+
|
49
49
|
it_behaves_like "flickraw response for =="
|
50
50
|
|
51
51
|
it "returns false when object is compared with object that is slightly different" do
|
@@ -62,9 +62,9 @@ describe APP::CustomCompare do
|
|
62
62
|
it_behaves_like "flickraw response for =="
|
63
63
|
|
64
64
|
it "returns false when object is compared with object that is slightly different" do
|
65
|
-
|
66
|
-
|
67
|
-
|
65
|
+
other = subject.clone
|
66
|
+
other.stub(:farm).and_return(123421)
|
67
|
+
subject.should_not == other
|
68
68
|
end
|
69
69
|
end
|
70
70
|
|
@@ -3,7 +3,7 @@ require 'spec_helper'
|
|
3
3
|
describe APP::CustomMarshal do
|
4
4
|
let(:klass) {APP::CustomMarshal}
|
5
5
|
let(:helpers) {APP::Helpers}
|
6
|
-
let(:fixtures) {APP::Fixtures.
|
6
|
+
let(:fixtures) {APP::Fixtures.instance}
|
7
7
|
|
8
8
|
shared_examples_for "marshalling and unmarshalling flickraw objects" do
|
9
9
|
it "should properly marshal/unmarshal Photos object" do
|
data/spec/base/helpers_spec.rb
CHANGED
data/spec/base/stubs_spec.rb
CHANGED
@@ -2,7 +2,7 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe APP::Stubs do
|
4
4
|
let(:klass) {APP::Stubs}
|
5
|
-
let(:fixtures) {APP::Fixtures.
|
5
|
+
let(:fixtures) {APP::Fixtures.instance}
|
6
6
|
|
7
7
|
context "class methods" do
|
8
8
|
|
@@ -27,6 +27,7 @@ describe APP::Stubs do
|
|
27
27
|
it "stubs flickr.commons.getInstitutions" do
|
28
28
|
flickr.commons.getInstitutions.should == fixtures.commons_institutions
|
29
29
|
end
|
30
|
+
|
30
31
|
end
|
31
32
|
|
32
33
|
specify {klass.should respond_to(:stub_search)}
|
Binary file
|
Binary file
|
@@ -1,4 +1,4 @@
|
|
1
|
-
U:OpenStruct{
|
1
|
+
U:OpenStruct{:photos[: page:
|
2
2
|
pages:perpage:
|
3
3
|
total:
|
4
4
|
photo:flickr_type:empty_photos[;;; ;
|
@@ -14,4 +14,5 @@ notes: tags:
|
|
14
14
|
media;:photo_sizes[
|
15
15
|
:canblog:
|
16
16
|
label:
|
17
|
-
width:height:source:url;-;:commons_institutions[:institution;
|
17
|
+
width:height:source:url;-;:commons_institutions[:institution;:commons_institution_photos[;;; ;
|
18
|
+
;;
|
data/spec/fixtures/photo.marshal
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -3,7 +3,7 @@ require 'spec_helper'
|
|
3
3
|
describe APP::CommonsInstitution do
|
4
4
|
let(:api) {APP::Api}
|
5
5
|
let(:klass) {APP::CommonsInstitution}
|
6
|
-
let(:fixtures){APP::Fixtures.
|
6
|
+
let(:fixtures){APP::Fixtures.instance}
|
7
7
|
let(:fixture){fixtures.commons_institutions[0]}
|
8
8
|
subject {klass.new(fixture)}
|
9
9
|
|
@@ -3,7 +3,7 @@ require 'spec_helper'
|
|
3
3
|
describe APP::CommonsInstitutions do
|
4
4
|
let(:api) {APP::Api}
|
5
5
|
let(:klass) {APP::CommonsInstitutions}
|
6
|
-
let(:fixtures){APP::Fixtures.
|
6
|
+
let(:fixtures){APP::Fixtures.instance}
|
7
7
|
let(:fixture){fixtures.commons_institutions}
|
8
8
|
subject {klass.new(fixture)}
|
9
9
|
|
@@ -2,7 +2,7 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe APP::PhotoDetails do
|
4
4
|
let(:klass){APP::PhotoDetails}
|
5
|
-
let(:fixtures){APP::Fixtures.
|
5
|
+
let(:fixtures){APP::Fixtures.instance}
|
6
6
|
|
7
7
|
let(:basic_photo) { APP::Photo.new fixtures.photo }
|
8
8
|
let(:extended_photo) { APP::Photo.new fixtures.photo_details }
|
@@ -3,7 +3,7 @@ require 'spec_helper'
|
|
3
3
|
describe APP::PhotoSearch do
|
4
4
|
let(:api) {APP::Api}
|
5
5
|
let(:klass) {APP::PhotoSearch}
|
6
|
-
let(:fixtures){APP::Fixtures.
|
6
|
+
let(:fixtures){APP::Fixtures.instance}
|
7
7
|
let(:options) {{:search_terms => 'iran', :page => '20', :date => '2010-10-03'}}
|
8
8
|
|
9
9
|
subject { klass.new fixtures.photos,options }
|
data/spec/models/photo_spec.rb
CHANGED
data/spec/models/photos_spec.rb
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
|
4
3
|
describe APP::Photos do
|
5
4
|
let(:api) {APP::Api}
|
6
5
|
let(:klass) {APP::Photos}
|
7
|
-
let(:fixtures){APP::Fixtures.
|
6
|
+
let(:fixtures){APP::Fixtures.instance}
|
8
7
|
let(:photos_fixture) {fixtures.photos}
|
9
8
|
let(:interesting_photos_fixture){fixtures.interesting_photos}
|
10
9
|
|
data/spec/spec_helper.rb
CHANGED
data/tasks/fixtures.rb
CHANGED
@@ -6,8 +6,9 @@ require 'ruby-debug'
|
|
6
6
|
# used for providing fixtures to users of the gem
|
7
7
|
namespace :fixtures do
|
8
8
|
desc 'generate all fixtures for USERS of the GEM'
|
9
|
-
task :all => [:photos,:empty_photos,:interesting_photos,:author_photos
|
10
|
-
|
9
|
+
task :all => [:photos,:empty_photos,:interesting_photos,:author_photos,
|
10
|
+
:photo,:photo_details,:photo_sizes,:photo_size,:expected_methods,
|
11
|
+
:commons_institutions,:commons_institution_photos]
|
11
12
|
|
12
13
|
desc 'generate fixture for flickr.photos.search'
|
13
14
|
task :photos => :repository do
|
@@ -64,6 +65,13 @@ namespace :fixtures do
|
|
64
65
|
dump default_commons_institutions, :commons_institutions
|
65
66
|
end
|
66
67
|
|
68
|
+
desc 'generate fixture for commons institution photos'
|
69
|
+
task :commons_institution_photos => :repository do
|
70
|
+
config_flickr
|
71
|
+
dump default_commons_institution_photos, :commons_institution_photos
|
72
|
+
end
|
73
|
+
|
74
|
+
|
67
75
|
desc 'expected methods'
|
68
76
|
task :expected_methods => :repository do
|
69
77
|
data = OpenStruct.new
|
@@ -77,6 +85,7 @@ namespace :fixtures do
|
|
77
85
|
data.photo_sizes = default_methods(default_photo_sizes)
|
78
86
|
data.photo_size = default_methods(default_photo_size)
|
79
87
|
data.commons_institutions = default_methods(default_commons_institutions)
|
88
|
+
data.commons_institution_photos = default_methods(default_commons_institution_photos)
|
80
89
|
dump data,:expected_methods
|
81
90
|
end
|
82
91
|
|
@@ -166,11 +175,14 @@ namespace :fixtures do
|
|
166
175
|
@default_commons_institutions ||= flickr.commons.getInstitutions
|
167
176
|
@default_commons_institutions
|
168
177
|
end
|
178
|
+
|
179
|
+
def default_commons_institution_photos
|
180
|
+
@default_commons_institution_photos ||= flickr.photos.search :user_id => '35532303@N08', :per_page => '200', :extras=>'license'
|
181
|
+
@default_commons_institution_photos
|
182
|
+
end
|
169
183
|
|
170
184
|
def default_methods(obj)
|
171
|
-
obj.methods(false).push(:flickr_type)
|
185
|
+
obj.methods.include?(:flickr_type) ? obj.methods(false).push(:flickr_type) : obj.methods(false)
|
172
186
|
end
|
173
|
-
|
174
|
-
|
175
187
|
|
176
188
|
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 8
|
8
|
-
-
|
9
|
-
version: 0.8.
|
8
|
+
- 14
|
9
|
+
version: 0.8.14
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Takaltoo
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-12-
|
17
|
+
date: 2010-12-08 00:00:00 -08:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -165,6 +165,7 @@ files:
|
|
165
165
|
- spec/base/stubs_spec.rb
|
166
166
|
- spec/base/version_spec.rb
|
167
167
|
- spec/fixtures/author_photos.marshal
|
168
|
+
- spec/fixtures/commons_institution_photos.marshal
|
168
169
|
- spec/fixtures/commons_institutions.marshal
|
169
170
|
- spec/fixtures/empty_photos.marshal
|
170
171
|
- spec/fixtures/expected_methods.marshal
|