twingly-search 5.0.1 → 5.1.0

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.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -2
  3. data/CHANGELOG.md +16 -0
  4. data/README.md +33 -34
  5. data/Rakefile +0 -6
  6. data/examples/find_all_posts_mentioning_github.rb +3 -3
  7. data/examples/hello_world.rb +2 -2
  8. data/examples/livefeed_loop.rb +24 -0
  9. data/lib/twingly/livefeed/client.rb +121 -0
  10. data/lib/twingly/livefeed/error.rb +28 -0
  11. data/lib/twingly/livefeed/parser.rb +96 -0
  12. data/lib/twingly/livefeed/post.rb +66 -0
  13. data/lib/twingly/livefeed/result.rb +39 -0
  14. data/lib/twingly/livefeed/version.rb +5 -0
  15. data/lib/twingly/livefeed.rb +6 -0
  16. data/lib/twingly/search/client.rb +3 -2
  17. data/lib/twingly/search/error.rb +6 -5
  18. data/lib/twingly/search/parser.rb +39 -13
  19. data/lib/twingly/search/post.rb +65 -21
  20. data/lib/twingly/search/query.rb +46 -16
  21. data/lib/twingly/search/result.rb +11 -0
  22. data/lib/twingly/search/version.rb +1 -1
  23. data/spec/client_spec.rb +2 -2
  24. data/spec/error_spec.rb +27 -7
  25. data/spec/fixtures/incomplete_result.xml +2 -0
  26. data/spec/fixtures/livefeed/empty_api_key_result.xml +3 -0
  27. data/spec/fixtures/livefeed/non_xml_result.xml +1 -0
  28. data/spec/fixtures/livefeed/not_found_result.xml +3 -0
  29. data/spec/fixtures/livefeed/service_unavailable_result.xml +3 -0
  30. data/spec/fixtures/livefeed/unauthorized_api_key_result.xml +3 -0
  31. data/spec/fixtures/livefeed/valid_empty_result.xml +2 -0
  32. data/spec/fixtures/livefeed/valid_result.xml +79 -0
  33. data/spec/fixtures/minimal_valid_result.xml +81 -52
  34. data/spec/fixtures/nonexistent_api_key_result.xml +3 -3
  35. data/spec/fixtures/service_unavailable_result.xml +3 -3
  36. data/spec/fixtures/unauthorized_api_key_result.xml +3 -3
  37. data/spec/fixtures/undefined_error_result.xml +3 -3
  38. data/spec/fixtures/valid_empty_result.xml +2 -2
  39. data/spec/fixtures/valid_links_result.xml +36 -0
  40. data/spec/fixtures/vcr_cassettes/livefeed_valid_request.yml +169 -0
  41. data/spec/fixtures/vcr_cassettes/search_for_spotify_on_sv_blogs.yml +578 -447
  42. data/spec/fixtures/vcr_cassettes/search_without_valid_api_key.yml +15 -14
  43. data/spec/livefeed/client_spec.rb +135 -0
  44. data/spec/livefeed/error_spec.rb +51 -0
  45. data/spec/livefeed/parser_spec.rb +351 -0
  46. data/spec/livefeed/post_spec.rb +26 -0
  47. data/spec/livefeed/result_spec.rb +18 -0
  48. data/spec/parser_spec.rb +191 -94
  49. data/spec/post_spec.rb +25 -6
  50. data/spec/query_spec.rb +41 -34
  51. data/spec/result_spec.rb +1 -0
  52. data/spec/spec_helper.rb +10 -0
  53. data/twingly-search-api-ruby.gemspec +2 -3
  54. metadata +44 -24
  55. data/spec/fixtures/valid_non_blog_result.xml +0 -26
  56. data/spec/fixtures/valid_result.xml +0 -22975
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twingly-search
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.1
4
+ version: 5.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Twingly AB
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-03 00:00:00.000000000 Z
11
+ date: 2017-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -106,28 +106,14 @@ dependencies:
106
106
  requirements:
107
107
  - - "~>"
108
108
  - !ruby/object:Gem::Version
109
- version: '0'
109
+ version: '11'
110
110
  type: :development
111
111
  prerelease: false
112
112
  version_requirements: !ruby/object:Gem::Requirement
113
113
  requirements:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
- version: '0'
117
- - !ruby/object:Gem::Dependency
118
- name: github_changelog_generator
119
- requirement: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - "~>"
122
- - !ruby/object:Gem::Version
123
- version: '1.8'
124
- type: :development
125
- prerelease: false
126
- version_requirements: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - "~>"
129
- - !ruby/object:Gem::Version
130
- version: '1.8'
116
+ version: '11'
131
117
  - !ruby/object:Gem::Dependency
132
118
  name: yard
133
119
  requirement: !ruby/object:Gem::Requirement
@@ -159,6 +145,14 @@ files:
159
145
  - examples/Gemfile
160
146
  - examples/find_all_posts_mentioning_github.rb
161
147
  - examples/hello_world.rb
148
+ - examples/livefeed_loop.rb
149
+ - lib/twingly/livefeed.rb
150
+ - lib/twingly/livefeed/client.rb
151
+ - lib/twingly/livefeed/error.rb
152
+ - lib/twingly/livefeed/parser.rb
153
+ - lib/twingly/livefeed/post.rb
154
+ - lib/twingly/livefeed/result.rb
155
+ - lib/twingly/livefeed/version.rb
162
156
  - lib/twingly/search.rb
163
157
  - lib/twingly/search/client.rb
164
158
  - lib/twingly/search/error.rb
@@ -169,6 +163,14 @@ files:
169
163
  - lib/twingly/search/version.rb
170
164
  - spec/client_spec.rb
171
165
  - spec/error_spec.rb
166
+ - spec/fixtures/incomplete_result.xml
167
+ - spec/fixtures/livefeed/empty_api_key_result.xml
168
+ - spec/fixtures/livefeed/non_xml_result.xml
169
+ - spec/fixtures/livefeed/not_found_result.xml
170
+ - spec/fixtures/livefeed/service_unavailable_result.xml
171
+ - spec/fixtures/livefeed/unauthorized_api_key_result.xml
172
+ - spec/fixtures/livefeed/valid_empty_result.xml
173
+ - spec/fixtures/livefeed/valid_result.xml
172
174
  - spec/fixtures/minimal_valid_result.xml
173
175
  - spec/fixtures/non_xml_result.xml
174
176
  - spec/fixtures/nonexistent_api_key_result.xml
@@ -176,10 +178,15 @@ files:
176
178
  - spec/fixtures/unauthorized_api_key_result.xml
177
179
  - spec/fixtures/undefined_error_result.xml
178
180
  - spec/fixtures/valid_empty_result.xml
179
- - spec/fixtures/valid_non_blog_result.xml
180
- - spec/fixtures/valid_result.xml
181
+ - spec/fixtures/valid_links_result.xml
182
+ - spec/fixtures/vcr_cassettes/livefeed_valid_request.yml
181
183
  - spec/fixtures/vcr_cassettes/search_for_spotify_on_sv_blogs.yml
182
184
  - spec/fixtures/vcr_cassettes/search_without_valid_api_key.yml
185
+ - spec/livefeed/client_spec.rb
186
+ - spec/livefeed/error_spec.rb
187
+ - spec/livefeed/parser_spec.rb
188
+ - spec/livefeed/post_spec.rb
189
+ - spec/livefeed/result_spec.rb
183
190
  - spec/parser_spec.rb
184
191
  - spec/post_spec.rb
185
192
  - spec/query_spec.rb
@@ -199,7 +206,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
199
206
  requirements:
200
207
  - - ">="
201
208
  - !ruby/object:Gem::Version
202
- version: 1.9.3
209
+ version: 2.1.0
203
210
  required_rubygems_version: !ruby/object:Gem::Requirement
204
211
  requirements:
205
212
  - - ">="
@@ -207,13 +214,21 @@ required_rubygems_version: !ruby/object:Gem::Requirement
207
214
  version: '0'
208
215
  requirements: []
209
216
  rubyforge_project:
210
- rubygems_version: 2.5.0
217
+ rubygems_version: 2.5.2
211
218
  signing_key:
212
219
  specification_version: 4
213
220
  summary: Ruby API client for Twingly Search
214
221
  test_files:
215
222
  - spec/client_spec.rb
216
223
  - spec/error_spec.rb
224
+ - spec/fixtures/incomplete_result.xml
225
+ - spec/fixtures/livefeed/empty_api_key_result.xml
226
+ - spec/fixtures/livefeed/non_xml_result.xml
227
+ - spec/fixtures/livefeed/not_found_result.xml
228
+ - spec/fixtures/livefeed/service_unavailable_result.xml
229
+ - spec/fixtures/livefeed/unauthorized_api_key_result.xml
230
+ - spec/fixtures/livefeed/valid_empty_result.xml
231
+ - spec/fixtures/livefeed/valid_result.xml
217
232
  - spec/fixtures/minimal_valid_result.xml
218
233
  - spec/fixtures/non_xml_result.xml
219
234
  - spec/fixtures/nonexistent_api_key_result.xml
@@ -221,10 +236,15 @@ test_files:
221
236
  - spec/fixtures/unauthorized_api_key_result.xml
222
237
  - spec/fixtures/undefined_error_result.xml
223
238
  - spec/fixtures/valid_empty_result.xml
224
- - spec/fixtures/valid_non_blog_result.xml
225
- - spec/fixtures/valid_result.xml
239
+ - spec/fixtures/valid_links_result.xml
240
+ - spec/fixtures/vcr_cassettes/livefeed_valid_request.yml
226
241
  - spec/fixtures/vcr_cassettes/search_for_spotify_on_sv_blogs.yml
227
242
  - spec/fixtures/vcr_cassettes/search_without_valid_api_key.yml
243
+ - spec/livefeed/client_spec.rb
244
+ - spec/livefeed/error_spec.rb
245
+ - spec/livefeed/parser_spec.rb
246
+ - spec/livefeed/post_spec.rb
247
+ - spec/livefeed/result_spec.rb
228
248
  - spec/parser_spec.rb
229
249
  - spec/post_spec.rb
230
250
  - spec/query_spec.rb
@@ -1,26 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?><twinglydata numberOfMatchesReturned="2" secondsElapsed="0.022" numberOfMatchesTotal="2">
2
- <post contentType="newspaper">
3
- <url>http://www.someurl.com/post</url>
4
- <title>Title</title>
5
- <summary>Summary</summary>
6
- <languageCode>sv</languageCode>
7
- <published>2013-01-29 15:26:33Z</published>
8
- <indexed>2013-01-29 15:27:07Z</indexed>
9
- <blogUrl>http://www.someurl.com/</blogUrl>
10
- <blogName>Newspaper Name</blogName>
11
- <authority>0</authority>
12
- <blogRank>1</blogRank>
13
- </post>
14
- <post contentType="blog">
15
- <url>http://www.someotherurl.com/post</url>
16
- <title>Title</title>
17
- <summary>Summary</summary>
18
- <languageCode>sv</languageCode>
19
- <published>2013-01-29 15:26:33Z</published>
20
- <indexed>2013-01-29 15:27:07Z</indexed>
21
- <blogUrl>http://www.someotherurl.com/</blogUrl>
22
- <blogName>Blog Name</blogName>
23
- <authority>0</authority>
24
- <blogRank>1</blogRank>
25
- </post>
26
- </twinglydata>