lyrics_finder 0.2.6 → 0.3

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.
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