lyrics_finder 0.2.6 → 0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 7687aa59df44d91c4cd3f53290eae5a53125f25a
4
- data.tar.gz: 08de33c09c38c33264cfdc5e4ba592843f2e3d31
2
+ SHA256:
3
+ metadata.gz: bd316c197ee6999b1dd1f45b20630a3adaae9a67c363f95fe878dd0942ec0ec1
4
+ data.tar.gz: a49b0b7534d0b82a8234d8b98d399910af308577445aa4a053754e831946689a
5
5
  SHA512:
6
- metadata.gz: 046b9bbc64a9c059b6f92c584d18ff340afb1dad91c8342815d614d6face705fab414da93c0c4b9c20b18761fee1851d15e7ffc758c58f34a119bf45f5470901
7
- data.tar.gz: 4121f9282103d2889b7e8e378347a797edc801efe651c579673f7e2544640a14cbb49b8130629e0314a7628338235313250b0ed71de125c00c61d3f0590479fb
6
+ metadata.gz: 0d3f4926056b7b18f00cb62ea27f224c2be26945aefc906cb11c3d0eef397bba03ad4bcd8a19bc772bc2fae196040ea7c3b3624bef4aefca24dce5e69f17b37e
7
+ data.tar.gz: 45efc437640a98c360572fe5a9651d7f653acbf206c33a8eb7cda77d78a392a7fa021f591aa58a51f17f111068bcc8634aa19df9289a498b6ef140f9334a3a42
data/.travis.yml CHANGED
@@ -3,9 +3,9 @@ cache: bundler
3
3
 
4
4
  rvm:
5
5
  - ruby
6
- - 2.1.0
6
+ - 2.5.0
7
7
 
8
8
  notifications:
9
9
  email:
10
10
  recipients:
11
- - dromveg@gmail.com
11
+ - hi@danielromero.com
data/lib/lyrics_finder.rb CHANGED
@@ -1,17 +1,11 @@
1
1
  require 'open-uri'
2
2
  require 'nokogiri'
3
- require 'active_support/core_ext'
4
3
  require 'i18n'
5
4
  I18n.enforce_available_locales = false
6
5
  require_relative 'lyrics_finder/version'
7
6
  require_relative 'lyrics_finder/song'
8
7
  require_relative 'lyrics_finder/provider'
9
8
 
10
- require 'pry'
11
- require 'pry-byebug'
12
- require 'awesome_print'
13
-
14
-
15
9
  module LyricsFinder
16
10
 
17
11
  def self.search(author, title)
@@ -1,7 +1,7 @@
1
1
  module LyricsFinder
2
2
  module Provider
3
3
  def self.list
4
- [LyricsWikia, LyricsMania, SongLyrics, Azlyrics]
4
+ [LyricsWikia, SongLyrics]
5
5
  end
6
6
 
7
7
  def self.url_for_song(provider, song)
@@ -29,14 +29,6 @@ module LyricsFinder
29
29
  def css_element; ".lyricbox"; end
30
30
  end
31
31
 
32
- LyricsMania = Struct.new(:song) do
33
- def format_url
34
- song.format_attributes_with_separator!("_")
35
- "http://www.lyricsmania.com/#{song.title}_lyrics_#{song.author}.html"
36
- end
37
- def css_element; ".lyrics-body"; end
38
- end
39
-
40
32
  SongLyrics = Struct.new(:song) do
41
33
  def format_url
42
34
  song.format_attributes_with_separator!("-")
@@ -44,13 +36,5 @@ module LyricsFinder
44
36
  end
45
37
  def css_element; "#songLyricsDiv"; end
46
38
  end
47
-
48
- Azlyrics = Struct.new(:song) do
49
- def format_url
50
- song.format_attributes_with_separator!("")
51
- "http://www.azlyrics.com/lyrics/#{song.author}/#{song.title}.html"
52
- end
53
- def css_element; "div:nth-child(7)"; end
54
- end
55
39
  end
56
40
  end
@@ -1,3 +1,3 @@
1
1
  module LyricsFinder
2
- VERSION = "0.2.6"
2
+ VERSION = "0.3"
3
3
  end
@@ -18,18 +18,13 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ['lib']
20
20
 
21
- spec.add_development_dependency 'bundler', '~> 1.6'
21
+ spec.add_development_dependency 'bundler', '~> 1.16'
22
22
  spec.add_development_dependency 'rake'
23
- spec.add_development_dependency 'rspec', '~> 3.1'
24
- spec.add_development_dependency 'vcr', '~> 2.9.2'
25
- spec.add_development_dependency 'webmock', '~> 1.19.0'
26
- spec.add_development_dependency 'coveralls', '~> 0.7.0'
27
- spec.add_development_dependency 'pry', '~> 0.10.1'
28
- spec.add_development_dependency 'pry-byebug', '~> 2.0.0'
29
- spec.add_development_dependency 'awesome_print', '~> 1.6.1'
30
-
31
- spec.add_dependency 'nokogiri', '~> 1.6.0'
32
- spec.add_dependency 'activesupport', '~> 4.1.0' # Not working with activesupport 4.2
33
- spec.add_dependency 'i18n', '~> 0.6'
34
- spec.add_dependency 'thor', '~> 0.19.1'
23
+ spec.add_development_dependency 'rspec', '~> 3.7'
24
+ spec.add_development_dependency 'vcr', '~> 4.0'
25
+ spec.add_development_dependency 'webmock', '~> 3.2'
26
+ spec.add_development_dependency 'coveralls', '~> 0.8'
27
+ spec.add_dependency 'nokogiri', '~> 1.8'
28
+ spec.add_dependency 'i18n', '~> 0.9'
29
+ spec.add_dependency 'thor', '~> 0.19'
35
30
  end
@@ -18,23 +18,6 @@ describe LyricsFinder do
18
18
  end
19
19
  end
20
20
 
21
- context 'With LyricsMania as the provider' do
22
- before :each do
23
- allow(LyricsFinder::Provider).to receive(:list).and_return([LyricsFinder::Provider::LyricsMania])
24
- VCR.use_cassette 'LyricsMania 200 search' do
25
- @song = LyricsFinder.search("american authors", "best day of my life")
26
- end
27
- end
28
-
29
- it 'returns an instance of Array' do
30
- expect(@song.class).to eq Array
31
- end
32
-
33
- it 'returns the desired song' do
34
- expect(@song).to eq SampleSongs::LYRICS_MANIA_EXAMPLE
35
- end
36
- end
37
-
38
21
  context 'With SongLyrics as the provider' do
39
22
  before :each do
40
23
  allow(LyricsFinder::Provider).to receive(:list).and_return([LyricsFinder::Provider::SongLyrics])
@@ -52,23 +35,6 @@ describe LyricsFinder do
52
35
  end
53
36
  end
54
37
 
55
- context 'With Azlyrics as the provider' do
56
- before :each do
57
- allow(LyricsFinder::Provider).to receive(:list).and_return([LyricsFinder::Provider::Azlyrics])
58
- VCR.use_cassette 'Azlyrics 200 search' do
59
- @song = LyricsFinder.search("american authors", "best day of my life")
60
- end
61
- end
62
-
63
- it 'returns an instance of Array' do
64
- expect(@song.class).to eq Array
65
- end
66
-
67
- it 'returns the desired song' do
68
- expect(@song).to eq SampleSongs::AZ_LYRICS_EXAMPLE
69
- end
70
- end
71
-
72
38
  context 'with a song that does not exist yet in any provider' do
73
39
  # it 'raises HTTP Error' do
74
40
  # expect{
@@ -44,57 +44,6 @@ module SampleSongs
44
44
  "This is gonna be the best day of my life",
45
45
  "My life-ah-ah-ah-ah-ah-ife"]
46
46
 
47
- LYRICS_MANIA_EXAMPLE = ["Wo-o-o-o-o-oh Wooh",
48
- "I had a dream so big and loud",
49
- "I jumped so high I touched the clouds",
50
- "Wo-o-o-o-o-oh",
51
- "Wo-o-o-o-o-oh",
52
- "I stretched my hands out to the sky",
53
- "We danced with monsters through the night",
54
- "Wo-o-o-o-o-oh",
55
- "Wo-o-o-o-o-oh",
56
- "I'm never gonna look back",
57
- "Woah, I'm never gonna give it up",
58
- "No, please don't wake me now",
59
- "Oo-o-o-o-oo",
60
- "This is gonna be the best day of my life",
61
- "My li-i-i-i-i-ife",
62
- "Oo-o-o-o-oo",
63
- "This is gonna be the best day of my life",
64
- "My li-i-i-i-i-ife",
65
- "I howled at the moon with friends",
66
- "And then the sun came crashing in",
67
- "Wo-o-o-o-o-oh",
68
- "Wo-o-o-o-o-oh",
69
- "But all the possibilities",
70
- "No limits just epiphanies",
71
- "Wo-o-o-o-o-oh",
72
- "Wo-o-o-o-o-oh",
73
- "I'm never gonna look back",
74
- "Woah, I'm never gonna give it up",
75
- "No, just don't wake me now",
76
- "Oo-o-o-o-oo",
77
- "This is gonna be the best day of my life",
78
- "My li-i-i-i-i-ife",
79
- "Oo-o-o-o-oo",
80
- "This is gonna be the best day of my life",
81
- "My li-i-i-i-i-ife",
82
- "I hear it calling outside my window",
83
- "I feel it in my soul (soul)",
84
- "The stars were burning so bright",
85
- "The sun was out 'til midnight",
86
- "I say we lose control (control)",
87
- "This is gonna be the best day of my life",
88
- "My li-i-i-i-i-ife",
89
- "Oo-o-o-o-o",
90
- "This is gonna be the best day of my life",
91
- "My li-i-i-i-i-ife",
92
- "This is gonna be, this is gonna be, this is gonna be",
93
- "The best day of my life",
94
- "Everything is looking up, everybody up now",
95
- "This is gonna be the best day of my life",
96
- "My li-i-i-i-i-ife"]
97
-
98
47
  SONG_LYRICS_EXAMPLE = ["(Ooh, Ooh-Ooh, Ooh)",
99
48
  "I had a dream so big and loud",
100
49
  "I jumped so high I touched the clouds",
@@ -149,51 +98,4 @@ SONG_LYRICS_EXAMPLE = ["(Ooh, Ooh-Ooh, Ooh)",
149
98
  "(Ooh, Ooh-Ooh, Ooh)",
150
99
  "This is gonna be the best day of my liife",
151
100
  "(Ooh, Ooh-Ooh, Ooh) My li-i-i-i-i-ife"]
152
-
153
- AZ_LYRICS_EXAMPLE = ["I had a dream so big and loud",
154
- "I jumped so high I touched the clouds",
155
- "Wo-o-o-o-o-oh",
156
- "I stretched my hands out to the sky",
157
- "We danced with monsters through the night",
158
- "Wo-o-o-o-o-oh",
159
- "I'm never gonna look back",
160
- "Whoa, I'm never gonna give it up",
161
- "No, please don't wake me now",
162
- "Oo-o-o-o-oo",
163
- "This is gonna be the best day of my life",
164
- "My life",
165
- "Oo-o-o-o-oo",
166
- "This is gonna be the best day of my life",
167
- "My life",
168
- "I howled at the moon with friends",
169
- "And then the sun came crashing in",
170
- "Wo-o-o-o-o-oh",
171
- "But all the possibilities",
172
- "No limits just epiphanies",
173
- "Wo-o-o-o-o-oh",
174
- "I'm never gonna look back",
175
- "Whoa, I'm never gonna give it up",
176
- "No, just don't wake me now",
177
- "Oo-o-o-o-oo",
178
- "This is gonna be the best day of my life",
179
- "My life",
180
- "Oo-o-o-o-oo",
181
- "This is gonna be the best day of my life",
182
- "My life",
183
- "I hear it calling outside my window",
184
- "I feel it in my soul (soul)",
185
- "The stars were burning so bright",
186
- "The sun was out 'til midnight",
187
- "I say we lose control (control)",
188
- "This is gonna be the best day of my life",
189
- "My life",
190
- "Oo-o-o-o-o",
191
- "This is gonna be the best day of my life",
192
- "My life",
193
- "This is gonna be, this is gonna be, this is gonna be",
194
- "The best day of my life",
195
- "Everything is looking up, everybody up now",
196
- "This is gonna be the best day of my life",
197
- "My life"]
198
-
199
101
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lyrics_finder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: '0.3'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Romero
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-22 00:00:00.000000000 Z
11
+ date: 2018-01-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.6'
19
+ version: '1.16'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.6'
26
+ version: '1.16'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,154 +44,98 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '3.1'
47
+ version: '3.7'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '3.1'
54
+ version: '3.7'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: vcr
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 2.9.2
61
+ version: '4.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 2.9.2
68
+ version: '4.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: webmock
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 1.19.0
75
+ version: '3.2'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 1.19.0
82
+ version: '3.2'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: coveralls
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.7.0
89
+ version: '0.8'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.7.0
97
- - !ruby/object:Gem::Dependency
98
- name: pry
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: 0.10.1
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: 0.10.1
111
- - !ruby/object:Gem::Dependency
112
- name: pry-byebug
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: 2.0.0
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: 2.0.0
125
- - !ruby/object:Gem::Dependency
126
- name: awesome_print
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: 1.6.1
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - "~>"
137
- - !ruby/object:Gem::Version
138
- version: 1.6.1
96
+ version: '0.8'
139
97
  - !ruby/object:Gem::Dependency
140
98
  name: nokogiri
141
99
  requirement: !ruby/object:Gem::Requirement
142
100
  requirements:
143
101
  - - "~>"
144
102
  - !ruby/object:Gem::Version
145
- version: 1.6.0
146
- type: :runtime
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - "~>"
151
- - !ruby/object:Gem::Version
152
- version: 1.6.0
153
- - !ruby/object:Gem::Dependency
154
- name: activesupport
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - "~>"
158
- - !ruby/object:Gem::Version
159
- version: 4.1.0
103
+ version: '1.8'
160
104
  type: :runtime
161
105
  prerelease: false
162
106
  version_requirements: !ruby/object:Gem::Requirement
163
107
  requirements:
164
108
  - - "~>"
165
109
  - !ruby/object:Gem::Version
166
- version: 4.1.0
110
+ version: '1.8'
167
111
  - !ruby/object:Gem::Dependency
168
112
  name: i18n
169
113
  requirement: !ruby/object:Gem::Requirement
170
114
  requirements:
171
115
  - - "~>"
172
116
  - !ruby/object:Gem::Version
173
- version: '0.6'
117
+ version: '0.9'
174
118
  type: :runtime
175
119
  prerelease: false
176
120
  version_requirements: !ruby/object:Gem::Requirement
177
121
  requirements:
178
122
  - - "~>"
179
123
  - !ruby/object:Gem::Version
180
- version: '0.6'
124
+ version: '0.9'
181
125
  - !ruby/object:Gem::Dependency
182
126
  name: thor
183
127
  requirement: !ruby/object:Gem::Requirement
184
128
  requirements:
185
129
  - - "~>"
186
130
  - !ruby/object:Gem::Version
187
- version: 0.19.1
131
+ version: '0.19'
188
132
  type: :runtime
189
133
  prerelease: false
190
134
  version_requirements: !ruby/object:Gem::Requirement
191
135
  requirements:
192
136
  - - "~>"
193
137
  - !ruby/object:Gem::Version
194
- version: 0.19.1
138
+ version: '0.19'
195
139
  description: Simple library for finding song lyrics
196
140
  email:
197
141
  - dromveg@gmail.com
@@ -217,8 +161,6 @@ files:
217
161
  - lib/lyrics_finder/version.rb
218
162
  - lyrics_finder.gemspec
219
163
  - spec/lyrics_finder/lyrics_finder_spec.rb
220
- - spec/lyrics_finder/providers/azlyrics_spec.rb
221
- - spec/lyrics_finder/providers/lyrics_mania_spec.rb
222
164
  - spec/lyrics_finder/providers/lyrics_wikia_spec.rb
223
165
  - spec/lyrics_finder/providers/song_lyrics_spec.rb
224
166
  - spec/spec_helper.rb
@@ -244,14 +186,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
244
186
  version: '0'
245
187
  requirements: []
246
188
  rubyforge_project:
247
- rubygems_version: 2.4.5
189
+ rubygems_version: 2.7.3
248
190
  signing_key:
249
191
  specification_version: 4
250
192
  summary: Solution for finding song lyrics
251
193
  test_files:
252
194
  - spec/lyrics_finder/lyrics_finder_spec.rb
253
- - spec/lyrics_finder/providers/azlyrics_spec.rb
254
- - spec/lyrics_finder/providers/lyrics_mania_spec.rb
255
195
  - spec/lyrics_finder/providers/lyrics_wikia_spec.rb
256
196
  - spec/lyrics_finder/providers/song_lyrics_spec.rb
257
197
  - spec/spec_helper.rb
@@ -1,16 +0,0 @@
1
- # encoding: UTF-8
2
- describe LyricsFinder::Provider::Azlyrics do
3
-
4
- describe '.format_url' do
5
- context 'with valid author and title' do
6
- let(:song) { Song.new("amêricàn authors", "best day of my life") }
7
- let(:az_lyrics) { LyricsFinder::Provider::Azlyrics.new(song) }
8
- let(:valid_url) { "http://www.azlyrics.com/lyrics/americanauthors/bestdayofmylife.html" }
9
-
10
- it 'returns a properly formatted url' do
11
- expect(az_lyrics.format_url).to eq valid_url
12
- end
13
- end
14
- end
15
-
16
- end
@@ -1,16 +0,0 @@
1
- # encoding: UTF-8
2
- describe LyricsFinder::Provider::LyricsMania do
3
-
4
- describe '.format_url' do
5
- context 'with valid author and title' do
6
- let(:song) { Song.new("amêricàn authors", "best day of my life") }
7
- let(:lyrics_mania) { LyricsFinder::Provider::LyricsMania.new(song) }
8
- let(:valid_url) { "http://www.lyricsmania.com/best_day_of_my_life_lyrics_american_authors.html" }
9
-
10
- it 'returns a properly formatted url' do
11
- expect(lyrics_mania.format_url).to eq valid_url
12
- end
13
- end
14
- end
15
-
16
- end