muri 0.0.13 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/test/flickr_test.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'lib/muri.rb'
2
2
  shared_examples_for "Flickr parse" do
3
3
  it "should be Flickr service" do
4
- @a.service.should == 'Flickr'
4
+ @a.media_service.should == 'Flickr'
5
5
  end
6
6
  it "should be valid" do
7
7
  @a.valid?.should == true
@@ -22,60 +22,60 @@ shared_examples_for "Flickr parse set" do
22
22
  end
23
23
  end
24
24
 
25
- describe "Flickr parse first" do
26
- before(:all) do
27
- @a = Muri.parse 'http://www.flickr.com/photos/bananastalktome/2088436532/'
28
- end
29
- it_should_behave_like "Flickr parse photo"
30
- it "should have media id" do
31
- @a.media_id.should == '2088436532'
32
- end
33
-
34
- it "should have a website" do
35
- @a.website.should == 'http://flic.kr/p/4bxMqq'
36
- end
37
-
38
- it "should have media api id" do
39
- @a.media_api_id.should == '2088436532'
40
- end
41
- end
42
- describe "Flickr parse second" do
43
- before(:all) do
44
- @a = Muri.parse 'http://farm3.static.flickr.com/2178/2088436532_ee07b4474e_m.jpg'
45
- end
46
- it_should_behave_like "Flickr parse photo"
47
- it "should have media id" do
48
- @a.media_id.should == '2088436532'
49
- end
25
+ {'http://www.flickr.com/photos/bananastalktome/2088436532/' =>
26
+ { :type => :photo,
27
+ :media_id => '2088436532',
28
+ :media_website => 'http://flic.kr/p/4bxMqq',
29
+ :media_api_id => '2088436532'
30
+ },
31
+ 'http://farm3.static.flickr.com/2178/2088436532_ee07b4474e_m.jpg' =>
32
+ { :type => :photo,
33
+ :media_id => '2088436532',
34
+ :media_website => 'http://flic.kr/p/4bxMqq',
35
+ :media_api_id => '2088436532',
36
+ :media_thumbnail => 'http://farm3.static.flickr.com/2178/2088436532_ee07b4474e_t.jpg'
37
+ },
38
+ 'http://www.flickr.com/photos/bananastalktome/sets/72157623467777820/' =>
39
+ { :type => :set,
40
+ :media_id => '72157623467777820',
41
+ :media_website => 'http://www.flickr.com/photos/bananastalktome/sets/72157623467777820',
42
+ :media_api_id => '72157623467777820'
43
+ }
44
+ }.each do |url, values|
50
45
 
51
- it "should have a website" do
52
- @a.website.should == 'http://flic.kr/p/4bxMqq'
53
- end
54
-
55
- it "should have media api id" do
56
- @a.media_api_id.should == '2088436532'
57
- end
58
- it "should have media thumbnail" do
59
- @a.media_thumbnail.should == 'http://farm3.static.flickr.com/2178/2088436532_ee07b4474e_t.jpg'
46
+ describe "Flickr parse #{values[:type]} #{url}" do
47
+ before(:all) do
48
+ @a = Muri.parse url
49
+ end
50
+
51
+ if values[:type] == :photo
52
+ it_should_behave_like "Flickr parse photo"
53
+ elsif values[:type] == :set
54
+ it_should_behave_like "Flickr parse set"
55
+ end
56
+
57
+ if values[:media_id]
58
+ it "should have media id" do
59
+ @a.media_id.should == values[:media_id]
60
+ end
61
+ end
62
+
63
+ if values[:media_website]
64
+ it "should have a website" do
65
+ @a.media_website.should == values[:media_website]
66
+ end
67
+ end
68
+
69
+ if values[:media_api_id]
70
+ it "should have media api id" do
71
+ @a.media_api_id.should == values[:media_api_id]
72
+ end
73
+ end
74
+
75
+ if values[:media_thumbnail]
76
+ it "should have media thumbnail" do
77
+ @a.media_thumbnail.should == values[:media_thumbnail]
78
+ end
79
+ end
60
80
  end
61
81
  end
62
-
63
- describe "Flickr parse set first" do
64
- before(:all) do
65
- @a = Muri.parse 'http://www.flickr.com/photos/bananastalktome/sets/72157623467777820/'
66
- end
67
- it_should_behave_like "Flickr parse set"
68
-
69
- it "should have media id" do
70
- @a.media_id.should == '72157623467777820'
71
- end
72
-
73
- it "should have a website" do
74
- @a.website.should == 'http://www.flickr.com/photos/bananastalktome/sets/72157623467777820'
75
- end
76
-
77
- it "should have media api id" do
78
- @a.media_api_id.should == '72157623467777820'
79
- end
80
- end
81
-
@@ -2,50 +2,54 @@ require 'lib/muri.rb'
2
2
 
3
3
  shared_examples_for "Imageshack parse" do
4
4
  it "should be Imageshack service" do
5
- @a.service.should == 'Imageshack'
5
+ @a.media_service.should == 'Imageshack'
6
6
  end
7
7
  it "should be valid" do
8
8
  @a.valid?.should == true
9
9
  end
10
10
  end
11
11
 
12
- describe "Imageshack parse first" do
13
- before(:all) do
14
- @a = Muri.parse 'http://img178.imageshack.us/i/dsc01576lo7.jpg/'
15
- end
16
- it_should_behave_like "Imageshack parse"
17
-
18
- it "should have media id" do
19
- @a.media_id.should == 'dsc01576lo7'
20
- end
21
-
22
- it "should have website" do
23
- @a.website.should == 'http://img178.imageshack.us/i/dsc01576lo7.jpg/'
24
- end
25
-
26
- it "should have content_type" do
27
- @a.content_type.should == 'jpg'
28
- end
29
- end
30
- describe "Imageshack parse second" do
31
- before(:all) do
32
- @a = Muri.parse 'http://img178.imageshack.us/img178/773/dsc01576lo7.jpg'
33
- end
34
- it_should_behave_like "Imageshack parse"
35
-
36
- it "should have media id" do
37
- @a.media_id.should == 'dsc01576lo7'
38
- end
39
-
40
- it "should have website" do
41
- @a.website.should == 'http://img178.imageshack.us/i/dsc01576lo7.jpg/'
42
- end
43
-
44
- it "should have content_type" do
45
- @a.content_type.should == 'jpg'
46
- end
12
+ {'http://img178.imageshack.us/i/dsc01576lo7.jpg/' =>
13
+ { :media_id => 'dsc01576lo7',
14
+ :media_website => 'http://img178.imageshack.us/i/dsc01576lo7.jpg/',
15
+ :media_content_type => 'jpg'
16
+ },
17
+ 'http://img178.imageshack.us/img178/773/dsc01576lo7.jpg' =>
18
+ { :media_id => 'dsc01576lo7',
19
+ :media_website => 'http://img178.imageshack.us/i/dsc01576lo7.jpg/',
20
+ :media_content_type => 'jpg',
21
+ :media_url => 'http://img178.imageshack.us/img178/773/dsc01576lo7.jpg'
22
+ }
23
+ }.each do |url, values|
47
24
 
48
- it "should have website" do
49
- @a.media_url.should == 'http://img178.imageshack.us/img178/773/dsc01576lo7.jpg'
25
+ describe "Imageshack parse #{url}" do
26
+ before(:all) do
27
+ @a = Muri.parse url
28
+ end
29
+ it_should_behave_like "Imageshack parse"
30
+
31
+ if values[:media_id]
32
+ it "should have media id" do
33
+ @a.media_id.should == values[:media_id]
34
+ end
35
+ end
36
+
37
+ if values[:media_website]
38
+ it "should have website" do
39
+ @a.media_website.should == values[:media_website]
40
+ end
41
+ end
42
+
43
+ if values[:media_content_type]
44
+ it "should have content_type" do
45
+ @a.media_content_type.should == values[:media_content_type]
46
+ end
47
+ end
48
+
49
+ if values[:media_url]
50
+ it "should have media_url" do
51
+ @a.media_url.should == values[:media_url]
52
+ end
53
+ end
50
54
  end
51
55
  end
@@ -2,7 +2,7 @@ require 'lib/muri.rb'
2
2
 
3
3
  shared_examples_for "Photobucket parse" do
4
4
  it "should be Photobucket service" do
5
- @a.service.should == 'Photobucket'
5
+ @a.media_service.should == 'Photobucket'
6
6
  end
7
7
 
8
8
  it "should be valid" do
@@ -12,18 +12,12 @@ end
12
12
 
13
13
  shared_examples_for "Photobucket parse photo" do
14
14
  it_should_behave_like "Photobucket parse"
15
- it "should be Photobucket service" do
16
- @a.service.should == 'Photobucket'
17
- end
18
-
19
- it "should be valid" do
20
- @a.valid?.should == true
21
- end
22
15
 
23
16
  it "should have media api type = PHOTOBUCKET_MEDIA" do
24
17
  @a.media_api_type.should == Muri::PHOTOBUCKET_MEDIA
25
18
  end
26
19
  end
20
+
27
21
  shared_examples_for "Photobucket parse album" do
28
22
  it_should_behave_like "Photobucket parse"
29
23
 
@@ -39,124 +33,111 @@ shared_examples_for "Photobucket parse group album" do
39
33
  end
40
34
  end
41
35
 
42
- describe "Photobucket parse group album first" do
43
- before(:all) do
44
- @a = Muri.parse 'http://gs0001.photobucket.com/groups/0001/F9P8EG7YR8/'
45
- end
46
- it_should_behave_like "Photobucket parse group album"
47
-
48
- it "should have media id" do
49
- @a.media_id.should == 'F9P8EG7YR8'
50
- end
51
- it "should have media api id" do
52
- @a.media_id.should == 'F9P8EG7YR8'
53
- end
54
-
55
- it "shoud have website" do
56
- @a.website.should == 'http://gs0001.photobucket.com/groups/0001/F9P8EG7YR8/'
57
- end
58
- end
59
-
60
- describe "Photobucket parse album first" do
61
- before(:all) do
62
- @a = Muri.parse 'http://s244.photobucket.com/albums/gg17/pbapi/api-test/api-test-subalbum/'
63
- end
64
- it_should_behave_like "Photobucket parse album"
36
+ {'http://gs0001.photobucket.com/groups/0001/F9P8EG7YR8/' =>
37
+ { :type => :group_album,
38
+ :media_id => 'F9P8EG7YR8',
39
+ :media_api_id => 'F9P8EG7YR8',
40
+ :media_website => 'http://gs0001.photobucket.com/groups/0001/F9P8EG7YR8/'
41
+ },
42
+ 'http://s244.photobucket.com/albums/gg17/pbapi/api-test/api-test-subalbum/' =>
43
+ { :type => :album,
44
+ :media_id => 'pbapi/api-test/api-test-subalbum',
45
+ :media_api_id => 'pbapi/api-test/api-test-subalbum',
46
+ :media_website => 'http://s244.photobucket.com/albums/gg17/pbapi/api-test/api-test-subalbum/'
47
+ },
48
+ 'http://i587.photobucket.com/albums/ss319/bananastalktome/API%20Testing/bananastalktomegmailcom_6c337a91.jpg' =>
49
+ { :type => :photo,
50
+ :media_id => 'bananastalktomegmailcom_6c337a91',
51
+ :media_content_type => 'jpg',
52
+ :media_url => "http://i587.photobucket.com/albums/ss319/bananastalktome/API%20Testing/bananastalktomegmailcom_6c337a91.jpg",
53
+ :media_api_id => "http://i587.photobucket.com/albums/ss319/bananastalktome/API%20Testing/bananastalktomegmailcom_6c337a91.jpg"
54
+ },
55
+ 'http://i244.photobucket.com/albums/gg17/pbapi/file.jpg' =>
56
+ { :type => :photo,
57
+ :media_id => 'file',
58
+ :media_content_type => 'jpg',
59
+ :media_website => "http://s244.photobucket.com/albums/gg17/pbapi/?action=view&current=file.jpg",
60
+ :media_url => "http://i244.photobucket.com/albums/gg17/pbapi/file.jpg",
61
+ :media_api_id => "http://i244.photobucket.com/albums/gg17/pbapi/file.jpg",
62
+ :media_thumbnail => 'http://mobth244.photobucket.com/albums/gg17/pbapi/file.jpg'
63
+ },
64
+ 'http://gi0006.photobucket.com/groups/0006/G5PAK3TBQS/DSCF0015-1-1.jpg' =>
65
+ { :type => :photo,
66
+ :media_id => 'DSCF0015-1-1',
67
+ :media_content_type => "jpg",
68
+ :media_website => "http://gs0006.photobucket.com/groups/0006/G5PAK3TBQS/?action=view&current=DSCF0015-1-1.jpg",
69
+ :media_url => "http://gi0006.photobucket.com/groups/0006/G5PAK3TBQS/DSCF0015-1-1.jpg",
70
+ :media_thumbnail => 'http://mobth0006.photobucket.com/groups/0006/G5PAK3TBQS/DSCF0015-1-1.jpg',
71
+ :media_api_id => "http://gi0006.photobucket.com/groups/0006/G5PAK3TBQS/DSCF0015-1-1.jpg"
72
+ },
73
+ "http://i391.photobucket.com/albums/oo351/ariawei/h006.jpg" =>
74
+ { :type => :photo,
75
+ :media_api_id => 'http://i391.photobucket.com/albums/oo351/ariawei/h006.jpg'
76
+ },
77
+ "http://i163.photobucket.com/albums/t294/hollywoodaflame/Macro%20Photography/PhotoClass010.jpg" =>
78
+ { :type => :photo,
79
+ :media_api_id => 'http://i163.photobucket.com/albums/t294/hollywoodaflame/Macro%20Photography/PhotoClass010.jpg'
80
+ },
81
+ "http://s391.photobucket.com/albums/oo351/ariawei/canon%20epoca135/?action=view&current=Negative0-08-081.jpg" =>
82
+ { :type => :photo,
83
+ :media_api_id => 'http://i391.photobucket.com/albums/oo351/ariawei/canon%20epoca135/Negative0-08-081.jpg'
84
+ },
85
+ "http://s391.photobucket.com/albums/oo351/ariawei/canon%20epoca135/" =>
86
+ { :type => :album,
87
+ :media_api_id => 'ariawei/canon%20epoca135'
88
+ },
89
+ "http://gs0001.photobucket.com/groups/0001/F9P8EG7YR8/?action=view&current=357krdd.jpg" =>
90
+ { :type => :photo,
91
+ :media_api_id => 'http://gi0001.photobucket.com/groups/0001/F9P8EG7YR8/357krdd.jpg'
92
+ }
93
+ }.each do |url, values|
94
+
95
+ describe "Photobucket parse #{values[:type]} #{url}" do
96
+ before(:all) do
97
+ @a = Muri.parse url
98
+ end
99
+ if values[:type] == :photo
100
+ it_should_behave_like "Photobucket parse photo"
101
+ elsif values[:type] == :album
102
+ it_should_behave_like "Photobucket parse album"
103
+ elsif values[:type] == :group_album
104
+ it_should_behave_like "Photobucket parse group album"
105
+ end
65
106
 
66
- it "should have media id" do
67
- @a.media_id.should == 'pbapi/api-test/api-test-subalbum'
68
- end
69
- it "should have media api id" do
70
- @a.media_id.should == 'pbapi/api-test/api-test-subalbum'
71
- end
72
-
73
- it "shoud have website" do
74
- @a.website.should == 'http://s244.photobucket.com/albums/gg17/pbapi/api-test/api-test-subalbum/'
75
- end
76
- end
77
-
78
- describe "Photobucket parse first" do
79
- before(:all) do
80
- @a = Muri.parse 'http://i587.photobucket.com/albums/ss319/bananastalktome/API%20Testing/bananastalktomegmailcom_6c337a91.jpg'
81
- end
82
- it_should_behave_like "Photobucket parse photo"
83
-
84
- it "should have media id" do
85
- @a.media_id.should == 'bananastalktomegmailcom_6c337a91'
86
- end
87
-
88
- it "should have content type" do
89
- @a.content_type.should == "jpg"
90
- end
91
-
92
- it "should have media url" do
93
- @a.media_url.should == "http://i587.photobucket.com/albums/ss319/bananastalktome/API%20Testing/bananastalktomegmailcom_6c337a91.jpg"
94
- end
107
+ if values[:media_id]
108
+ it "should have media id" do
109
+ @a.media_id.should == values[:media_id]
110
+ end
111
+ end
95
112
 
96
- it "should have media api id" do
97
- @a.media_api_id.should == "http://i587.photobucket.com/albums/ss319/bananastalktome/API%20Testing/bananastalktomegmailcom_6c337a91.jpg"
98
- end
99
-
100
- end
101
-
102
- describe "Photobucket parse first" do
103
- before(:all) do
104
- @a = Muri.parse 'http://i244.photobucket.com/albums/gg17/pbapi/file.jpg'
105
- end
106
- it_should_behave_like "Photobucket parse photo"
107
-
108
- it "should have media id" do
109
- @a.media_id.should == 'file'
110
- end
111
-
112
- it "should have content type" do
113
- @a.content_type.should == "jpg"
114
- end
115
-
116
- it "should have a website" do
117
- @a.website.should == "http://s244.photobucket.com/albums/gg17/pbapi/?action=view&current=file.jpg"
118
- end
119
-
120
- it "should have media url" do
121
- @a.media_url.should == "http://i244.photobucket.com/albums/gg17/pbapi/file.jpg"
122
- end
113
+ if values[:media_content_type]
114
+ it "should have content type" do
115
+ @a.media_content_type.should ==values[:media_content_type]
116
+ end
117
+ end
123
118
 
124
- it "should have media api id" do
125
- @a.media_api_id.should == "http://i244.photobucket.com/albums/gg17/pbapi/file.jpg"
126
- end
119
+ if values[:media_website]
120
+ it "should have a website" do
121
+ @a.media_website.should == values[:media_website]
122
+ end
123
+ end
127
124
 
128
- it "should have media thumbnail" do
129
- @a.media_thumbnail.should == 'http://mobth244.photobucket.com/albums/gg17/pbapi/file.jpg'
130
- end
131
- end
132
-
133
- describe "Photobucket parse second" do
134
- before(:all) do
135
- @a = Muri.parse 'http://gi0006.photobucket.com/groups/0006/G5PAK3TBQS/DSCF0015-1-1.jpg'
136
- end
137
- it_should_behave_like "Photobucket parse photo"
125
+ if values[:media_url]
126
+ it "should have media url" do
127
+ @a.media_url.should == values[:media_url]
128
+ end
129
+ end
138
130
 
139
- it "should have media id" do
140
- @a.media_id.should == 'DSCF0015-1-1'
141
- end
142
-
143
- it "should have content type" do
144
- @a.content_type.should == "jpg"
145
- end
146
-
147
- it "should have a website" do
148
- @a.website.should == "http://gs0006.photobucket.com/groups/0006/G5PAK3TBQS/?action=view&current=DSCF0015-1-1.jpg"
149
- end
150
-
151
- it "should have media url" do
152
- @a.media_url.should == "http://gi0006.photobucket.com/groups/0006/G5PAK3TBQS/DSCF0015-1-1.jpg"
153
- end
154
-
155
- it "should have media thumbnail" do
156
- @a.media_thumbnail.should == 'http://mobth0006.photobucket.com/groups/0006/G5PAK3TBQS/DSCF0015-1-1.jpg'
157
- end
158
-
159
- it "should have media api id" do
160
- @a.media_api_id.should == "http://gi0006.photobucket.com/groups/0006/G5PAK3TBQS/DSCF0015-1-1.jpg"
131
+ if values[:media_thumbnail]
132
+ it "should have media thumbnail" do
133
+ @a.media_thumbnail.should == values[:media_thumbnail]
134
+ end
135
+ end
136
+
137
+ if values[:media_api_id]
138
+ it "should have media api id" do
139
+ @a.media_api_id.should == values[:media_api_id]
140
+ end
141
+ end
161
142
  end
162
- end
143
+ end
data/test/twitpic_test.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'lib/muri.rb'
2
2
  shared_examples_for "Twitpic parse" do
3
3
  it "should be Twitpic service" do
4
- @a.service.should == 'Twitpic'
4
+ @a.media_service.should == 'Twitpic'
5
5
  end
6
6
  it "should be valid" do
7
7
  @a.valid?.should == true
@@ -14,29 +14,48 @@ shared_examples_for "Twitpic parse photo" do
14
14
  @a.media_api_type.should == Muri::TWITPIC_PHOTO
15
15
  end
16
16
  end
17
-
18
- describe "Twitpic parse first" do
19
- before(:all) do
20
- @a = Muri.parse 'http://twitpic.com/17d7th'
21
- end
22
- it_should_behave_like "Twitpic parse photo"
23
- it "should have media id" do
24
- @a.media_id.should == '17d7th'
25
- end
26
-
27
- it "should have a website" do
28
- @a.website.should == "http://twitpic.com/17d7th"
29
- end
30
-
31
- it "should have media api id" do
32
- @a.media_api_id.should == '17d7th'
33
- end
34
-
35
- it "should have media url" do
36
- @a.media_url.should == "http://twitpic.com/show/large/17d7th"
37
- end
38
-
39
- it "should have a media thumbnail" do
40
- @a.media_thumbnail.should == "http://twitpic.com/show/thumb/17d7th"
17
+ {'http://twitpic.com/17d7th' =>
18
+ { :media_id => '17d7th',
19
+ :media_website => "http://twitpic.com/17d7th",
20
+ :media_api_id => '17d7th',
21
+ :media_url => "http://twitpic.com/show/large/17d7th",
22
+ :media_thumbnail => "http://twitpic.com/show/thumb/17d7th"
23
+ }
24
+ }.each do |url, values|
25
+ describe "Twitpic parse #{url}" do
26
+ before(:all) do
27
+ @a = Muri.parse url
28
+ end
29
+ it_should_behave_like "Twitpic parse photo"
30
+
31
+ if values[:media_id]
32
+ it "should have media id" do
33
+ @a.media_id.should == values[:media_id]
34
+ end
35
+ end
36
+
37
+ if values[:media_website]
38
+ it "should have a website" do
39
+ @a.media_website.should == values[:media_website]
40
+ end
41
+ end
42
+
43
+ if values[:media_api_id]
44
+ it "should have media api id" do
45
+ @a.media_api_id.should == values[:media_api_id]
46
+ end
47
+ end
48
+
49
+ if values[:media_url]
50
+ it "should have media url" do
51
+ @a.media_url.should == values[:media_url]
52
+ end
53
+ end
54
+
55
+ if values[:media_thumbnail]
56
+ it "should have a media thumbnail" do
57
+ @a.media_thumbnail.should == values[:media_thumbnail]
58
+ end
59
+ end
41
60
  end
42
61
  end