musicgraph 0.0.1 → 0.0.2

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.
@@ -2859,4 +2859,133 @@ http_interactions:
2859
2859
  {"id": "e4de0d41-a6b5-11e0-b446-00251188dd67", "name": "Beck"}}'
2860
2860
  http_version:
2861
2861
  recorded_at: Sun, 22 Feb 2015 21:12:33 GMT
2862
+ - request:
2863
+ method: get
2864
+ uri: http://api.musicgraph.com/api/v2/album/suggest?api_key=<API_KEY>&prefix=Emotion
2865
+ body:
2866
+ encoding: US-ASCII
2867
+ string: ''
2868
+ headers:
2869
+ User-Agent:
2870
+ - Faraday v0.9.1
2871
+ Accept-Encoding:
2872
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
2873
+ Accept:
2874
+ - "*/*"
2875
+ response:
2876
+ status:
2877
+ code: 200
2878
+ message: OK
2879
+ headers:
2880
+ Access-Control-Allow-Headers:
2881
+ - accept, origin, content-type, x-requested-with, x-requested-by
2882
+ Access-Control-Allow-Methods:
2883
+ - GET, POST, PUT, DELETE, OPTIONS
2884
+ Access-Control-Allow-Origin:
2885
+ - "*"
2886
+ Content-Type:
2887
+ - application/json; charset=UTF-8
2888
+ Date:
2889
+ - Sun, 12 Apr 2015 22:06:59 GMT
2890
+ Server:
2891
+ - nginx/1.5.11
2892
+ X-App-Box:
2893
+ - prod.v3.1d.api.musicgraph.com
2894
+ X-Branch:
2895
+ - 0bb18cbb3d226d8f0d560fb2ca551a5fe504e506
2896
+ X-Environment:
2897
+ - prod
2898
+ Content-Length:
2899
+ - '7015'
2900
+ Connection:
2901
+ - keep-alive
2902
+ body:
2903
+ encoding: UTF-8
2904
+ string: '{"status": {"api": "v2", "message": "Success", "code": 0}, "pagination":
2905
+ {"count": 20, "offset": 1}, "data": [{"artist_name": "Mariah Carey", "name":
2906
+ "Emotions", "entity_type": "album", "album_artist_id": "b9fae655-9741-b873-9cd0-834c2a9c3e34",
2907
+ "main_genre": "pop", "album_ref_id": "1449939", "performer_name": "Mariah
2908
+ Carey", "id": "7869a003-ec31-37f6-7369-4e500de1f577", "slug": "emotions",
2909
+ "product_form": "Single", "release_year": 2002}, {"artist_name": "Mariah Carey",
2910
+ "name": "Emotions", "entity_type": "album", "album_artist_id": "b9fae655-9741-b873-9cd0-834c2a9c3e34",
2911
+ "main_genre": "pop", "album_ref_id": "14842599", "performer_name": "Mariah
2912
+ Carey", "id": "22a84035-7c3c-5268-e762-68ead77136b3", "slug": "emotions",
2913
+ "product_form": "Album", "release_year": 1991}, {"artist_name": "The Rolling
2914
+ Stones", "name": "Mixed Emotions", "entity_type": "album", "album_artist_id":
2915
+ "e88b6841-a6b5-11e0-b446-00251188dd67", "main_genre": "rock", "album_ref_id":
2916
+ "15890455", "performer_name": "The Rolling Stones", "id": "78fe2b64-8497-1060-bcc0-de924734bff9",
2917
+ "slug": "mixed emotions", "product_form": "Single", "release_year": 1990},
2918
+ {"artist_name": "The Rolling Stones", "name": "Emotional Rescue", "entity_type":
2919
+ "album", "album_artist_id": "e88b6841-a6b5-11e0-b446-00251188dd67", "main_genre":
2920
+ "rock", "album_ref_id": "32202849", "performer_name": "The Rolling Stones",
2921
+ "id": "7cfb88ac-1d50-f210-42d6-57a718fa141c", "slug": "emotional rescue",
2922
+ "product_form": "Album", "release_year": 1980}, {"artist_name": "Dahlia",
2923
+ "name": "Emotion Cycles", "entity_type": "album", "album_artist_id": "2d8fb76a-f893-51ec-19c9-572bd3c33c7a",
2924
+ "main_genre": "electronica/dance", "album_ref_id": "2280143", "performer_name":
2925
+ "Dahlia", "id": "d3dd87c4-b87a-e0ab-eb9a-4e598a65a71b", "slug": "emotion cycles",
2926
+ "product_form": "Album", "release_year": 2001}, {"artist_name": "Whitney Houston",
2927
+ "name": "So Emotional", "entity_type": "album", "album_artist_id": "e398f5d4-a6b5-11e0-b446-00251188dd67",
2928
+ "main_genre": "pop", "album_ref_id": "69577767", "performer_name": "Whitney
2929
+ Houston", "id": "16a652e2-d62b-e7d4-2645-b5b68b8c71fb", "slug": "so emotional",
2930
+ "product_form": "Single", "release_year": 1988}, {"artist_name": "Dinah Washington",
2931
+ "name": "Mixed Emotions", "entity_type": "album", "album_artist_id": "e3577cbb-a6b5-11e0-b446-00251188dd67",
2932
+ "main_genre": "jazz", "album_ref_id": "40552099", "performer_name": "Dinah
2933
+ Washington", "id": "36b97c82-cd64-c754-41be-5b41812395df", "slug": "mixed
2934
+ emotions", "product_form": "Album", "release_year": 2002}, {"artist_name":
2935
+ "Tim McGraw", "name": "Emotional Traffic", "entity_type": "album", "album_artist_id":
2936
+ "8aff6b3e-a023-cead-c16e-5c39d0dedfba", "main_genre": "country", "album_ref_id":
2937
+ "63234357", "performer_name": "Tim McGraw", "id": "0dae7300-90cb-8c86-db64-1be3a17a2401",
2938
+ "slug": "emotional traffic", "product_form": "Album", "release_year": 2012},
2939
+ {"artist_name": "Destiny''s Child", "name": "Emotion [US 12\"]", "entity_type":
2940
+ "album", "album_artist_id": "ab03f3c2-dc65-d333-406b-0e4dddda1407", "main_genre":
2941
+ "pop", "album_ref_id": "30914135", "performer_name": "Destiny''s Child", "id":
2942
+ "f2708bb9-2a65-696b-7f96-3715064096c5", "slug": "emotion us 12", "product_form":
2943
+ "Single", "release_year": 2001}, {"artist_name": "Oscar Peterson", "name":
2944
+ "Motions & Emotions", "entity_type": "album", "album_artist_id": "e2cf1db0-a6b5-11e0-b446-00251188dd67",
2945
+ "main_genre": "jazz", "album_ref_id": "5303273", "performer_name": "Oscar
2946
+ Peterson", "id": "e698b9f2-0107-5d26-d1d9-9e0a3feced2d", "slug": "motions
2947
+ emotions", "product_form": "Album", "release_year": 1969}, {"artist_name":
2948
+ "Brenda Lee", "name": "Emotions", "entity_type": "album", "album_artist_id":
2949
+ "31fef68f-ebaf-b1a9-6e67-e1ceeb5e8dec", "main_genre": "jazz", "album_ref_id":
2950
+ "64721737", "performer_name": "Brenda Lee", "id": "10a17706-d760-6784-1c3c-48b1697b679c",
2951
+ "slug": "emotions", "product_form": "Album", "release_year": 1961}, {"artist_name":
2952
+ "Barbra Streisand", "name": "Emotion", "entity_type": "album", "album_artist_id":
2953
+ "e32c6c9d-a6b5-11e0-b446-00251188dd67", "main_genre": "vocals", "album_ref_id":
2954
+ "527847", "performer_name": "Barbra Streisand", "id": "2207ded9-a5e5-3b8d-1d36-8e969d26564a",
2955
+ "slug": "emotion", "product_form": "Album", "release_year": 1984}, {"name":
2956
+ "Emotions", "entity_type": "album", "album_artist_id": "ee25f6da-a6b5-11e0-b446-00251188dd67",
2957
+ "slug": "emotions", "artist_name": "Sila", "performer_name": "Sila", "id":
2958
+ "237292d9-12fc-3933-f717-4524ca827daf", "main_genre": "pop", "product_form":
2959
+ "Single", "album_ref_id": "41154039"}, {"artist_name": "Rosemary Clooney",
2960
+ "name": "Mixed Emotions", "entity_type": "album", "album_artist_id": "e3c55782-a6b5-11e0-b446-00251188dd67",
2961
+ "main_genre": "pop", "album_ref_id": "55612349", "performer_name": "Rosemary
2962
+ Clooney", "id": "d3008d94-17a9-0c86-4ce8-4723f969368b", "slug": "mixed emotions",
2963
+ "product_form": "Album", "release_year": 1986}, {"artist_name": "The O''Jays",
2964
+ "name": "Emotionally Yours", "entity_type": "album", "album_artist_id": "e68df63a-a6b5-11e0-b446-00251188dd67",
2965
+ "main_genre": "soul/r&b", "album_ref_id": "57553", "performer_name": "The
2966
+ O''Jays", "id": "677bab38-114d-0b4c-049c-70730fe48685", "slug": "emotionally
2967
+ yours", "product_form": "Album", "release_year": 1991}, {"artist_name": "The
2968
+ Avett Brothers", "name": "Emotionalism", "entity_type": "album", "album_artist_id":
2969
+ "f064adc4-a6b5-11e0-b446-00251188dd67", "main_genre": "rock", "album_ref_id":
2970
+ "10416045", "performer_name": "The Avett Brothers", "id": "4866b11f-6328-4d9d-55e4-641e3573ff52",
2971
+ "slug": "emotionalism", "product_form": "Album", "release_year": 2007}, {"artist_name":
2972
+ "TJR", "name": "Mixed Emotions", "entity_type": "album", "album_artist_id":
2973
+ "f03535e4-a6b5-11e0-b446-00251188dd67", "main_genre": "blues", "album_ref_id":
2974
+ "86560409", "performer_name": "TJR", "id": "0bb03327-7d28-9784-1197-4a4bf1ab1e7f",
2975
+ "slug": "mixed emotions", "product_form": "Album", "release_year": 2003},
2976
+ {"artist_name": "BT", "name": "Emotional Technology", "entity_type": "album",
2977
+ "album_artist_id": "e2969b62-a6b5-11e0-b446-00251188dd67", "main_genre": "electronica/dance",
2978
+ "album_ref_id": "46155395", "performer_name": "BT", "id": "3ee8d4d4-03eb-2128-b3ee-dec9cda7c4d0",
2979
+ "slug": "emotional technology", "product_form": "Album", "release_year": 2003},
2980
+ {"artist_name": "Chris de Burgh", "name": "Into the Light/High on Emotion",
2981
+ "entity_type": "album", "album_artist_id": "3edb3f6a-3cda-2ad5-af2d-ff763c197f52",
2982
+ "main_genre": "rock", "album_ref_id": "4078507", "performer_name": "Chris
2983
+ De Burgh", "id": "b5626855-2766-17e6-31ba-42398b93c314", "slug": "into the
2984
+ lighthigh on emotion", "product_form": "Album", "release_year": 2000}, {"artist_name":
2985
+ "Jeff Beck", "name": "Emotion & Commotion", "entity_type": "album", "album_artist_id":
2986
+ "e6c88da8-a6b5-11e0-b446-00251188dd67", "main_genre": "rock", "album_ref_id":
2987
+ "38767673", "performer_name": "Jeff Beck", "id": "7f1f7fb1-1906-ae57-de35-446b4566287b",
2988
+ "slug": "emotion commotion", "product_form": "Album", "release_year": 2010}]}'
2989
+ http_version:
2990
+ recorded_at: Sun, 12 Apr 2015 22:06:54 GMT
2862
2991
  recorded_with: VCR 2.9.3
@@ -4,5 +4,245 @@ module MusicGraph
4
4
  it "exists" do
5
5
  expect(MusicGraph::Album)
6
6
  end
7
+
8
+ describe "#search" do
9
+ it "returns album title search results" do
10
+ VCR.use_cassette("album", record: :new_episodes) do
11
+ album_name = "either/or"
12
+ albums = MusicGraph::Album.search(album_name)
13
+
14
+ expect(albums).to_not be_empty
15
+ expect(albums.first).to be_an Album
16
+ expect(albums.first.title).to eql("Either/Or")
17
+ end
18
+ end
19
+
20
+ it "accepts hash and returns album title search results" do
21
+ VCR.use_cassette("album", record: :new_episodes) do
22
+ params = {
23
+ title: "i and love and you"
24
+ }
25
+ albums = MusicGraph::Album.search(params)
26
+
27
+ expect(albums).to_not be_empty
28
+ expect(albums.first).to be_an Album
29
+ expect(albums.first.title).to eql("I and Love and You")
30
+ end
31
+ end
32
+
33
+ it "accepts hash and returns artist name search results" do
34
+ VCR.use_cassette("album", record: :new_episodes) do
35
+ params = {
36
+ artist_name: "led zeppelin"
37
+ }
38
+ albums = MusicGraph::Album.search(params)
39
+
40
+ expect(albums).to_not be_empty
41
+ expect(albums.length).to eql(20)
42
+ expect(albums.first).to be_an Album
43
+ expect(albums.first.title).to eql("C'mon Everybody")
44
+ expect(albums.last.title).to eql("Led Zeppelin [Box Set]")
45
+ end
46
+ end
47
+
48
+ it "accepts hash and returns similar to albums" do
49
+ VCR.use_cassette("album", record: :new_episodes) do
50
+ params = {
51
+ similar_to: "grace"
52
+ }
53
+ albums = MusicGraph::Album.search(params)
54
+
55
+ expect(albums).to_not be_empty
56
+ expect(albums.length).to eql(7)
57
+ expect(albums.first).to be_an Album
58
+ expect(albums.first.title).to eql("Tidal")
59
+ expect(albums.last.title).to eql("Greater Than")
60
+ end
61
+ end
62
+
63
+ it "accepts hash and returns country search results" do
64
+ VCR.use_cassette("album", record: :new_episodes) do
65
+ params = {
66
+ country: "iceland"
67
+ }
68
+ albums = MusicGraph::Album.search(params)
69
+
70
+ expect(albums).to_not be_empty
71
+ expect(albums.length).to eql(20)
72
+ expect(albums.first).to be_an Album
73
+ expect(albums.first.title).to eql("For Now I Am Winter")
74
+ expect(albums.last.title).to eql("My Head Is an Animal")
75
+ end
76
+ end
77
+
78
+ it "accepts hash and returns decade search results" do
79
+ VCR.use_cassette("album", record: :new_episodes) do
80
+ params = {
81
+ decade: "1960s"
82
+ }
83
+ albums = MusicGraph::Album.search(params)
84
+
85
+ expect(albums).to_not be_empty
86
+ expect(albums.length).to eql(20)
87
+ expect(albums.first).to be_an Album
88
+ expect(albums.first.title).to eql("Soul Shakedown")
89
+ expect(albums.last.title).to eql("At Carnegie Hall")
90
+ end
91
+ end
92
+
93
+ it "accepts hash and returns genre search results" do
94
+ VCR.use_cassette("album", record: :new_episodes) do
95
+ params = {
96
+ genre: "rock"
97
+ }
98
+ albums = MusicGraph::Album.search(params)
99
+
100
+ expect(albums).to_not be_empty
101
+ expect(albums.length).to eql(20)
102
+ expect(albums.first).to be_an Album
103
+ expect(albums.first.title).to eql("You Are the Night")
104
+ expect(albums.last.title).to eql("Safety")
105
+ end
106
+ end
107
+
108
+ it "accepts hash and returns limited results" do
109
+ VCR.use_cassette("album", record: :new_episodes) do
110
+ params = {
111
+ similar_to: "Sgt. Pepper's Lonely Hearts Club Band",
112
+ limit: 5
113
+ }
114
+ albums = MusicGraph::Album.search(params)
115
+
116
+ expect(albums).to_not be_empty
117
+ expect(albums.length).to eql(5)
118
+ expect(albums.first).to be_an Album
119
+ expect(albums.first.title).to eql("Doors")
120
+ expect(albums.last.title).to eql("Days of Future Passed")
121
+ end
122
+ end
123
+
124
+ it "accepts hash and returns offset results" do
125
+ VCR.use_cassette("album", record: :new_episodes) do
126
+ params = {
127
+ similar_to: "Sgt. Pepper's Lonely Hearts Club Band",
128
+ offset: 2
129
+ }
130
+ albums = MusicGraph::Album.search(params)
131
+
132
+ expect(albums).to_not be_empty
133
+ expect(albums.length).to eql(11)
134
+ expect(albums.first).to be_an Album
135
+ expect(albums.first.title).to_not eql("Doors")
136
+ expect(albums.last.title).to eql("Odessa")
137
+ end
138
+ end
139
+ end
140
+
141
+ describe "#suggest" do
142
+ it "returns a list of matches" do
143
+ VCR.use_cassette("album", record: :new_episodes) do
144
+ query = "Emotion"
145
+ albums = MusicGraph::Album.suggest(query)
146
+
147
+ expect(albums.length).to eql(20)
148
+ expect(albums).to be_an Array
149
+ expect(albums.first).to be_an Album
150
+ expect(albums.first.title).to eql("Emotions")
151
+ end
152
+ end
153
+
154
+ it "accepts hash and returns suggestions" do
155
+ VCR.use_cassette("artist", record: :new_episodes) do
156
+ params = {
157
+ prefix: "Emotion"
158
+ }
159
+ albums = MusicGraph::Album.suggest(params)
160
+
161
+ expect(albums.length).to eql(20)
162
+ expect(albums).to be_an Array
163
+ expect(albums.first).to be_an Album
164
+ expect(albums.first.title).to eql("Emotions")
165
+ end
166
+ end
167
+ end
168
+
169
+ describe "#find" do
170
+ it "returns a single album" do
171
+ VCR.use_cassette("album", record: :new_episodes) do
172
+ album_id = "7cfb88ac-1d50-f210-42d6-57a718fa141c"
173
+ album = MusicGraph::Album.find(album_id)
174
+
175
+ expect(album).to be_an Album
176
+ expect(album.release_year).to eql(1980)
177
+ expect(album.title).to eql("Emotional Rescue")
178
+ expect(album.entity_type).to eql("album")
179
+ expect(album.album_artist_id).to eql("e88b6841-a6b5-11e0-b446-00251188dd67")
180
+ expect(album.id).to eql("7cfb88ac-1d50-f210-42d6-57a718fa141c")
181
+ expect(album.number_of_tracks).to eql("10")
182
+ expect(album.album_ref_id).to eql("32202849")
183
+ expect(album.performer_name).to eql("The Rolling Stones")
184
+ expect(album.main_genre).to eql("rock")
185
+ expect(album.product_form).to eql("Album")
186
+ end
187
+ end
188
+ end
189
+
190
+ describe "#edges" do
191
+ it "returns edges for an album" do
192
+ VCR.use_cassette("album", record: :new_episodes) do
193
+ album_id = "7cfb88ac-1d50-f210-42d6-57a718fa141c"
194
+ album = MusicGraph::Album.find(album_id)
195
+
196
+ expect(album.edges).to be_an Array
197
+ expect(album.edges).to eql(["artists", "tracks"])
198
+ end
199
+ end
200
+ end
201
+
202
+ describe "#metadata" do
203
+ it "returns metadata for an album" do
204
+ VCR.use_cassette("album", record: :new_episodes) do
205
+ album_id = "7cfb88ac-1d50-f210-42d6-57a718fa141c"
206
+ album = MusicGraph::Album.find(album_id)
207
+
208
+ expect(album.metadata).to be_a Hash
209
+ end
210
+ end
211
+
212
+ it "filters by given fields" do
213
+ VCR.use_cassette("album", record: :new_episodes) do
214
+ filters = ["id", "title"]
215
+ album_id = "7cfb88ac-1d50-f210-42d6-57a718fa141c"
216
+ album = MusicGraph::Album.find(album_id, filters)
217
+
218
+ expect(album.title).to eql("Emotional Rescue")
219
+ expect(album.performer_name).to be(nil)
220
+ end
221
+ end
222
+ end
223
+
224
+ describe "#artists" do
225
+ it "returns artists for an album" do
226
+ VCR.use_cassette("album", record: :new_episodes) do
227
+ album_id = "7cfb88ac-1d50-f210-42d6-57a718fa141c"
228
+ album = MusicGraph::Album.find(album_id)
229
+
230
+ expect(album.artists).to be_an Array
231
+ expect(album.artists.first).to be_an Artist
232
+ end
233
+ end
234
+ end
235
+
236
+ describe "#tracks" do
237
+ it "returns tracks for an album" do
238
+ VCR.use_cassette("album", record: :new_episodes) do
239
+ album_id = "7cfb88ac-1d50-f210-42d6-57a718fa141c"
240
+ album = MusicGraph::Album.find(album_id)
241
+
242
+ expect(album.tracks).to be_an Array
243
+ expect(album.tracks.first).to be_a Track
244
+ end
245
+ end
246
+ end
7
247
  end
8
248
  end
@@ -12,7 +12,7 @@ module MusicGraph
12
12
  artists = MusicGraph::Artist.search(artist_name)
13
13
 
14
14
  expect(artists).to_not be_empty
15
- expect(artists.first).to be_a Artist
15
+ expect(artists.first).to be_an Artist
16
16
  expect(artists.first.name).to eql("Wilco")
17
17
  end
18
18
  end
@@ -25,7 +25,7 @@ module MusicGraph
25
25
  artists = MusicGraph::Artist.search(params)
26
26
 
27
27
  expect(artists).to_not be_empty
28
- expect(artists.first).to be_a Artist
28
+ expect(artists.first).to be_an Artist
29
29
  expect(artists.first.name).to eql("Local Natives")
30
30
  end
31
31
  end
@@ -39,7 +39,7 @@ module MusicGraph
39
39
 
40
40
  expect(artists).to_not be_empty
41
41
  expect(artists.length).to eql(20)
42
- expect(artists.first).to be_a Artist
42
+ expect(artists.first).to be_an Artist
43
43
  expect(artists.first.name).to eql("David Gilmour")
44
44
  expect(artists.last.name).to eql("Eric Clapton")
45
45
  end
@@ -54,7 +54,7 @@ module MusicGraph
54
54
 
55
55
  expect(artists).to_not be_empty
56
56
  expect(artists.length).to eql(20)
57
- expect(artists.first).to be_a Artist
57
+ expect(artists.first).to be_an Artist
58
58
  expect(artists.first.name).to eql("Lil Wayne")
59
59
  expect(artists.last.name).to eql("Juicy J")
60
60
  end
@@ -69,7 +69,7 @@ module MusicGraph
69
69
 
70
70
  expect(artists).to_not be_empty
71
71
  expect(artists.length).to eql(20)
72
- expect(artists.first).to be_a Artist
72
+ expect(artists.first).to be_an Artist
73
73
  expect(artists.first.name).to eql("Chris Brown")
74
74
  expect(artists.last.name).to eql("Amy Winehouse")
75
75
  end
@@ -84,7 +84,7 @@ module MusicGraph
84
84
 
85
85
  expect(artists).to_not be_empty
86
86
  expect(artists.length).to eql(20)
87
- expect(artists.first).to be_a Artist
87
+ expect(artists.first).to be_an Artist
88
88
  expect(artists.first.name).to eql("Sasha")
89
89
  expect(artists.last.name).to eql("Shakira")
90
90
  end
@@ -99,7 +99,7 @@ module MusicGraph
99
99
 
100
100
  expect(artists).to_not be_empty
101
101
  expect(artists.length).to eql(20)
102
- expect(artists.first).to be_a Artist
102
+ expect(artists.first).to be_an Artist
103
103
  expect(artists.first.name).to eql("Lil Wayne")
104
104
  expect(artists.last.name).to eql("Juicy J")
105
105
  end
@@ -115,7 +115,7 @@ module MusicGraph
115
115
 
116
116
  expect(artists).to_not be_empty
117
117
  expect(artists.length).to eql(5)
118
- expect(artists.first).to be_a Artist
118
+ expect(artists.first).to be_an Artist
119
119
  expect(artists.first.name).to eql("David Gilmour")
120
120
  expect(artists.last.name).to_not eql("Eric Clapton")
121
121
  end
@@ -131,7 +131,7 @@ module MusicGraph
131
131
 
132
132
  expect(artists).to_not be_empty
133
133
  expect(artists.length).to eql(7)
134
- expect(artists.first).to be_a Artist
134
+ expect(artists.first).to be_an Artist
135
135
  expect(artists.first.name).to_not eql("David Gilmour")
136
136
  expect(artists.last.name).to eql("Hess Is More")
137
137
  end
@@ -145,8 +145,8 @@ module MusicGraph
145
145
  artists = MusicGraph::Artist.suggest(query)
146
146
 
147
147
  expect(artists.length).to eql(20)
148
- expect(artists).to be_a Array
149
- expect(artists.first).to be_a Artist
148
+ expect(artists).to be_an Array
149
+ expect(artists.first).to be_an Artist
150
150
  expect(artists.first.name).to eql("Green Day")
151
151
  end
152
152
  end
@@ -160,8 +160,8 @@ module MusicGraph
160
160
  artists = MusicGraph::Artist.suggest(params)
161
161
 
162
162
  expect(artists.length).to eql(20)
163
- expect(artists).to be_a Array
164
- expect(artists.first).to be_a Artist
163
+ expect(artists).to be_an Array
164
+ expect(artists.first).to be_an Artist
165
165
  expect(artists.first.name).to eql("Green Day")
166
166
  end
167
167
  end
@@ -173,7 +173,7 @@ module MusicGraph
173
173
  artist_id = "e4de0d41-a6b5-11e0-b446-00251188dd67"
174
174
  artist = MusicGraph::Artist.find(artist_id)
175
175
 
176
- expect(artist).to be_a Artist
176
+ expect(artist).to be_an Artist
177
177
  expect(artist.seven_digital_id).to eql("5843")
178
178
  expect(artist.main_genre).to eql("alternative/indie")
179
179
  expect(artist.country_of_origin).to eql("United States of America")
@@ -196,7 +196,7 @@ module MusicGraph
196
196
  VCR.use_cassette("artist", record: :new_episodes) do
197
197
  artist = MusicGraph::Artist.find("e4de0d41-a6b5-11e0-b446-00251188dd67")
198
198
 
199
- expect(artist.edges).to be_a Array
199
+ expect(artist.edges).to be_an Array
200
200
  expect(artist.edges).to eql(["albums", "similar", "tracks"])
201
201
  end
202
202
  end
@@ -227,8 +227,8 @@ module MusicGraph
227
227
  VCR.use_cassette("artist", record: :new_episodes) do
228
228
  artist = MusicGraph::Artist.find("e4de0d41-a6b5-11e0-b446-00251188dd67")
229
229
 
230
- expect(artist.similar).to be_a Array
231
- expect(artist.similar.first).to be_a Artist
230
+ expect(artist.similar).to be_an Array
231
+ expect(artist.similar.first).to be_an Artist
232
232
  expect(artist.similar.first.name).to eql("Bob Forrest")
233
233
  end
234
234
  end
@@ -239,8 +239,8 @@ module MusicGraph
239
239
  VCR.use_cassette("artist", record: :new_episodes) do
240
240
  artist = MusicGraph::Artist.find("e4de0d41-a6b5-11e0-b446-00251188dd67")
241
241
 
242
- expect(artist.albums).to be_a Array
243
- expect(artist.albums.first).to be_a Album
242
+ expect(artist.albums).to be_an Array
243
+ expect(artist.albums.first).to be_an Album
244
244
  end
245
245
  end
246
246
  end
@@ -250,7 +250,7 @@ module MusicGraph
250
250
  VCR.use_cassette("artist", record: :new_episodes) do
251
251
  artist = MusicGraph::Artist.find("e4de0d41-a6b5-11e0-b446-00251188dd67")
252
252
 
253
- expect(artist.tracks).to be_a Array
253
+ expect(artist.tracks).to be_an Array
254
254
  expect(artist.tracks.first).to be_a Track
255
255
  end
256
256
  end