bento_search 0.0.1

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 (122) hide show
  1. data/MIT-LICENSE +20 -0
  2. data/README.md +299 -0
  3. data/Rakefile +40 -0
  4. data/app/assets/images/bento_search/large_loader.gif +0 -0
  5. data/app/assets/javascripts/bento_search.js +3 -0
  6. data/app/assets/javascripts/bento_search/ajax_load.js +22 -0
  7. data/app/assets/stylesheets/bento_search/bento.css +4 -0
  8. data/app/controllers/bento_search/bento_search_controller.rb +7 -0
  9. data/app/controllers/bento_search/search_controller.rb +72 -0
  10. data/app/helpers/bento_search_helper.rb +138 -0
  11. data/app/item_decorators/bento_search/only_premade_openurl.rb +16 -0
  12. data/app/item_decorators/bento_search/openurl_add_other_link.rb +35 -0
  13. data/app/item_decorators/bento_search/openurl_main_link.rb +30 -0
  14. data/app/models/bento_search/author.rb +25 -0
  15. data/app/models/bento_search/link.rb +30 -0
  16. data/app/models/bento_search/multi_searcher.rb +109 -0
  17. data/app/models/bento_search/openurl_creator.rb +128 -0
  18. data/app/models/bento_search/registrar.rb +70 -0
  19. data/app/models/bento_search/result_item.rb +203 -0
  20. data/app/models/bento_search/results.rb +54 -0
  21. data/app/models/bento_search/results/pagination.rb +67 -0
  22. data/app/models/bento_search/search_engine.rb +219 -0
  23. data/app/models/bento_search/search_engine/capabilities.rb +65 -0
  24. data/app/search_engines/bento_search/#Untitled-1# +11 -0
  25. data/app/search_engines/bento_search/ebsco_host_engine.rb +356 -0
  26. data/app/search_engines/bento_search/eds_engine.rb +557 -0
  27. data/app/search_engines/bento_search/google_books_engine.rb +184 -0
  28. data/app/search_engines/bento_search/primo_engine.rb +231 -0
  29. data/app/search_engines/bento_search/scopus_engine.rb +295 -0
  30. data/app/search_engines/bento_search/summon_engine.rb +398 -0
  31. data/app/search_engines/bento_search/xerxes_engine.rb +168 -0
  32. data/app/views/bento_search/_link.html.erb +4 -0
  33. data/app/views/bento_search/_search_error.html.erb +22 -0
  34. data/app/views/bento_search/_std_item.html.erb +39 -0
  35. data/app/views/bento_search/search/search.html.erb +1 -0
  36. data/config/locales/en.yml +25 -0
  37. data/lib/bento_search.rb +29 -0
  38. data/lib/bento_search/engine.rb +5 -0
  39. data/lib/bento_search/routes.rb +45 -0
  40. data/lib/bento_search/version.rb +3 -0
  41. data/lib/generators/bento_search/pull_ebsco_dbs_generator.rb +24 -0
  42. data/lib/generators/bento_search/templates/ebsco_global_var.erb +6 -0
  43. data/lib/http_client_patch/include_client.rb +86 -0
  44. data/lib/tasks/bento_search_tasks.rake +4 -0
  45. data/test/dummy/README.rdoc +261 -0
  46. data/test/dummy/Rakefile +7 -0
  47. data/test/dummy/app/assets/javascripts/application.js +15 -0
  48. data/test/dummy/app/assets/stylesheets/application.css +13 -0
  49. data/test/dummy/app/controllers/application_controller.rb +3 -0
  50. data/test/dummy/app/helpers/application_helper.rb +2 -0
  51. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  52. data/test/dummy/config.ru +4 -0
  53. data/test/dummy/config/application.rb +56 -0
  54. data/test/dummy/config/boot.rb +10 -0
  55. data/test/dummy/config/database.yml +25 -0
  56. data/test/dummy/config/environment.rb +5 -0
  57. data/test/dummy/config/environments/development.rb +37 -0
  58. data/test/dummy/config/environments/production.rb +67 -0
  59. data/test/dummy/config/environments/test.rb +37 -0
  60. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  61. data/test/dummy/config/initializers/inflections.rb +15 -0
  62. data/test/dummy/config/initializers/mime_types.rb +5 -0
  63. data/test/dummy/config/initializers/secret_token.rb +7 -0
  64. data/test/dummy/config/initializers/session_store.rb +8 -0
  65. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  66. data/test/dummy/config/locales/en.yml +5 -0
  67. data/test/dummy/config/routes.rb +6 -0
  68. data/test/dummy/db/test.sqlite3 +0 -0
  69. data/test/dummy/log/test.log +3100 -0
  70. data/test/dummy/public/404.html +26 -0
  71. data/test/dummy/public/422.html +26 -0
  72. data/test/dummy/public/500.html +25 -0
  73. data/test/dummy/public/favicon.ico +0 -0
  74. data/test/dummy/script/rails +6 -0
  75. data/test/functional/bento_search/search_controller_test.rb +81 -0
  76. data/test/helper/bento_search_helper_test.rb +125 -0
  77. data/test/integration/navigation_test.rb +10 -0
  78. data/test/support/mock_engine.rb +23 -0
  79. data/test/support/test_with_cassette.rb +38 -0
  80. data/test/test_helper.rb +52 -0
  81. data/test/unit/#vcr_test.rb# +68 -0
  82. data/test/unit/ebsco_host_engine_test.rb +134 -0
  83. data/test/unit/eds_engine_test.rb +105 -0
  84. data/test/unit/google_books_engine_test.rb +93 -0
  85. data/test/unit/item_decorators_test.rb +66 -0
  86. data/test/unit/multi_searcher_test.rb +49 -0
  87. data/test/unit/openurl_creator_test.rb +111 -0
  88. data/test/unit/pagination_test.rb +59 -0
  89. data/test/unit/primo_engine_test.rb +37 -0
  90. data/test/unit/register_engine_test.rb +50 -0
  91. data/test/unit/result_item_display_test.rb +39 -0
  92. data/test/unit/result_item_test.rb +36 -0
  93. data/test/unit/scopus_engine_test.rb +130 -0
  94. data/test/unit/search_engine_base_test.rb +178 -0
  95. data/test/unit/search_engine_test.rb +95 -0
  96. data/test/unit/summon_engine_test.rb +161 -0
  97. data/test/unit/xerxes_engine_test.rb +70 -0
  98. data/test/vcr_cassettes/ebscohost/error_bad_db.yml +45 -0
  99. data/test/vcr_cassettes/ebscohost/error_bad_password.yml +45 -0
  100. data/test/vcr_cassettes/ebscohost/get_info.yml +3626 -0
  101. data/test/vcr_cassettes/ebscohost/live_search.yml +45 -0
  102. data/test/vcr_cassettes/ebscohost/live_search_smoke_test.yml +1311 -0
  103. data/test/vcr_cassettes/eds/basic_search_smoke_test.yml +1811 -0
  104. data/test/vcr_cassettes/eds/get_auth_token.yml +75 -0
  105. data/test/vcr_cassettes/eds/get_auth_token_failure.yml +39 -0
  106. data/test/vcr_cassettes/eds/get_with_auth.yml +243 -0
  107. data/test/vcr_cassettes/eds/get_with_auth_recovers_from_bad_auth.yml +368 -0
  108. data/test/vcr_cassettes/gbs/error_condition.yml +40 -0
  109. data/test/vcr_cassettes/gbs/pagination.yml +702 -0
  110. data/test/vcr_cassettes/gbs/search.yml +340 -0
  111. data/test/vcr_cassettes/primo/search_smoke_test.yml +1112 -0
  112. data/test/vcr_cassettes/scopus/bad_api_key_should_return_error_response.yml +60 -0
  113. data/test/vcr_cassettes/scopus/escaped_chars.yml +187 -0
  114. data/test/vcr_cassettes/scopus/fielded_search.yml +176 -0
  115. data/test/vcr_cassettes/scopus/simple_search.yml +227 -0
  116. data/test/vcr_cassettes/scopus/zero_results_search.yml +67 -0
  117. data/test/vcr_cassettes/summon/bad_auth.yml +54 -0
  118. data/test/vcr_cassettes/summon/proper_tags_for_snippets.yml +216 -0
  119. data/test/vcr_cassettes/summon/search.yml +242 -0
  120. data/test/vcr_cassettes/xerxes/live_search.yml +2580 -0
  121. data/test/view/std_item_test.rb +98 -0
  122. metadata +421 -0
@@ -0,0 +1,75 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://eds-api.ebscohost.com/authservice/rest/uidauth
6
+ body:
7
+ encoding: UTF-8
8
+ string: ! " {\n \"UserId\":\"DUMMY_USER_ID\",\n \"Password\":\"DUMMY_PWD\"\n
9
+ \ }\n"
10
+ headers:
11
+ Accept:
12
+ - application/json
13
+ Content-Type:
14
+ - application/json
15
+ response:
16
+ status:
17
+ code: 200
18
+ message: OK
19
+ headers:
20
+ Cache-Control:
21
+ - private
22
+ Content-Length:
23
+ - '73'
24
+ Content-Type:
25
+ - application/JSON; charset=utf-8
26
+ Server:
27
+ - Microsoft-IIS/7.5
28
+ X-Aspnet-Version:
29
+ - 4.0.30319
30
+ X-Powered-By:
31
+ - ASP.NET
32
+ Date:
33
+ - Mon, 06 Aug 2012 23:07:54 GMT
34
+ body:
35
+ encoding: US-ASCII
36
+ string: ! '{"AuthToken":"8a5ad95a-cc1d-408c-8f14-af5016a8d146","AuthTimeout":"1800"}'
37
+ http_version:
38
+ recorded_at: Mon, 06 Aug 2012 23:07:54 GMT
39
+ - request:
40
+ method: post
41
+ uri: https://eds-api.ebscohost.com/authservice/rest/uidauth
42
+ body:
43
+ encoding: UTF-8
44
+ string: ! " {\n \"UserId\":\"DUMMY_USER_ID\",\n \"Password\":\"DUMMY_PWD\"\n
45
+ \ }\n"
46
+ headers:
47
+ Accept:
48
+ - application/json
49
+ Content-Type:
50
+ - application/json
51
+ response:
52
+ status:
53
+ code: 200
54
+ message: OK
55
+ headers:
56
+ Cache-Control:
57
+ - private
58
+ Content-Length:
59
+ - '73'
60
+ Content-Type:
61
+ - application/JSON; charset=utf-8
62
+ Server:
63
+ - Microsoft-IIS/7.5
64
+ X-Aspnet-Version:
65
+ - 4.0.30319
66
+ X-Powered-By:
67
+ - ASP.NET
68
+ Date:
69
+ - Mon, 06 Aug 2012 23:08:26 GMT
70
+ body:
71
+ encoding: US-ASCII
72
+ string: ! '{"AuthToken":"76529f8e-ad33-419d-8315-a383b1fa57d9","AuthTimeout":"1800"}'
73
+ http_version:
74
+ recorded_at: Mon, 06 Aug 2012 23:08:26 GMT
75
+ recorded_with: VCR 2.2.4
@@ -0,0 +1,39 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://eds-api.ebscohost.com/authservice/rest/uidauth
6
+ body:
7
+ encoding: UTF-8
8
+ string: ! " {\n \"UserId\":\"bad\",\n \"Password\":\"bad\"\n
9
+ \ }\n"
10
+ headers:
11
+ Accept:
12
+ - application/json
13
+ Content-Type:
14
+ - application/json
15
+ response:
16
+ status:
17
+ code: 400
18
+ message: Bad Request
19
+ headers:
20
+ Cache-Control:
21
+ - private
22
+ Content-Length:
23
+ - '74'
24
+ Content-Type:
25
+ - application/json; charset=utf-8
26
+ Server:
27
+ - Microsoft-IIS/7.5
28
+ X-Aspnet-Version:
29
+ - 4.0.30319
30
+ X-Powered-By:
31
+ - ASP.NET
32
+ Date:
33
+ - Mon, 06 Aug 2012 23:07:54 GMT
34
+ body:
35
+ encoding: US-ASCII
36
+ string: ! '{"ErrorCode":1102,"Reason":"Invalid Credentials.","AdditionalDetail":null}'
37
+ http_version:
38
+ recorded_at: Mon, 06 Aug 2012 23:07:54 GMT
39
+ recorded_with: VCR 2.2.4
@@ -0,0 +1,243 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://eds-api.ebscohost.com/authservice/rest/uidauth
6
+ body:
7
+ encoding: UTF-8
8
+ string: ! " {\n \"UserId\":\"DUMMY_USER_ID\",\n \"Password\":\"DUMMY_PWD\"\n
9
+ \ }\n"
10
+ headers:
11
+ Accept:
12
+ - application/json
13
+ Content-Type:
14
+ - application/json
15
+ response:
16
+ status:
17
+ code: 200
18
+ message: OK
19
+ headers:
20
+ Cache-Control:
21
+ - private
22
+ Content-Length:
23
+ - '73'
24
+ Content-Type:
25
+ - application/JSON; charset=utf-8
26
+ Server:
27
+ - Microsoft-IIS/7.5
28
+ X-Aspnet-Version:
29
+ - 4.0.30319
30
+ X-Powered-By:
31
+ - ASP.NET
32
+ Date:
33
+ - Mon, 06 Aug 2012 23:07:54 GMT
34
+ body:
35
+ encoding: US-ASCII
36
+ string: ! '{"AuthToken":"2c9aa2a4-61b0-471c-9e85-a0cb306c296d","AuthTimeout":"1800"}'
37
+ http_version:
38
+ recorded_at: Mon, 06 Aug 2012 23:07:54 GMT
39
+ - request:
40
+ method: get
41
+ uri: http://eds-api.ebscohost.com/edsapi/rest/createsession?guest=y&profile=edsapi
42
+ body:
43
+ encoding: US-ASCII
44
+ string: ''
45
+ headers:
46
+ X-Authenticationtoken:
47
+ - 2c9aa2a4-61b0-471c-9e85-a0cb306c296d
48
+ Accept:
49
+ - application/xml
50
+ response:
51
+ status:
52
+ code: 200
53
+ message: !binary |-
54
+ T0s=
55
+ headers:
56
+ !binary "Q2FjaGUtQ29udHJvbA==":
57
+ - !binary |-
58
+ cHJpdmF0ZQ==
59
+ !binary "Q29udGVudC1MZW5ndGg=":
60
+ - !binary |-
61
+ Mjc5
62
+ !binary "Q29udGVudC1UeXBl":
63
+ - !binary |-
64
+ YXBwbGljYXRpb24veG1sOyBjaGFyc2V0PXV0Zi04
65
+ !binary "U2VydmVy":
66
+ - !binary |-
67
+ TWljcm9zb2Z0LUlJUy83LjU=
68
+ !binary "WC1EeW5hdHJhY2U=":
69
+ - !binary |-
70
+ UFQ9MjgwNjQzO1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
71
+ !binary "RHluYXRyYWNl":
72
+ - !binary |-
73
+ UFQ9MjgwNjQzO1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
74
+ !binary "WC1Bc3BuZXQtVmVyc2lvbg==":
75
+ - !binary |-
76
+ NC4wLjMwMzE5
77
+ !binary "WC1Qb3dlcmVkLUJ5":
78
+ - !binary |-
79
+ QVNQLk5FVA==
80
+ !binary "RGF0ZQ==":
81
+ - !binary |-
82
+ TW9uLCAwNiBBdWcgMjAxMiAyMzowNzo1NSBHTVQ=
83
+ body:
84
+ encoding: US-ASCII
85
+ string: <CreateSessionResponseMessage xmlns="http://epnet.com/webservices/EbscoApi/Contracts"
86
+ xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><SessionToken>c6f7d532-8726-47a7-8e75-b3851a615c68.lS/LBviHYcah4372jECVTkM/b4/DpExjKLExBuNU0eA=</SessionToken></CreateSessionResponseMessage>
87
+ http_version:
88
+ recorded_at: Mon, 06 Aug 2012 23:07:55 GMT
89
+ - request:
90
+ method: get
91
+ uri: http://eds-api.ebscohost.com/edsapi/rest/info
92
+ body:
93
+ encoding: US-ASCII
94
+ string: ''
95
+ headers:
96
+ X-Authenticationtoken:
97
+ - 2c9aa2a4-61b0-471c-9e85-a0cb306c296d
98
+ Accept:
99
+ - application/xml
100
+ X-Sessiontoken:
101
+ - c6f7d532-8726-47a7-8e75-b3851a615c68.lS/LBviHYcah4372jECVTkM/b4/DpExjKLExBuNU0eA=
102
+ response:
103
+ status:
104
+ code: 200
105
+ message: !binary |-
106
+ T0s=
107
+ headers:
108
+ !binary "Q2FjaGUtQ29udHJvbA==":
109
+ - !binary |-
110
+ cHJpdmF0ZQ==
111
+ !binary "Q29udGVudC1MZW5ndGg=":
112
+ - !binary |-
113
+ MjU4Nw==
114
+ !binary "Q29udGVudC1UeXBl":
115
+ - !binary |-
116
+ YXBwbGljYXRpb24veG1sOyBjaGFyc2V0PXV0Zi04
117
+ !binary "U2VydmVy":
118
+ - !binary |-
119
+ TWljcm9zb2Z0LUlJUy83LjU=
120
+ !binary "WC1EeW5hdHJhY2U=":
121
+ - !binary |-
122
+ UFQ9MjgwNjQ0O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
123
+ !binary "RHluYXRyYWNl":
124
+ - !binary |-
125
+ UFQ9MjgwNjQ0O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
126
+ !binary "WC1Bc3BuZXQtVmVyc2lvbg==":
127
+ - !binary |-
128
+ NC4wLjMwMzE5
129
+ !binary "WC1Qb3dlcmVkLUJ5":
130
+ - !binary |-
131
+ QVNQLk5FVA==
132
+ !binary "RGF0ZQ==":
133
+ - !binary |-
134
+ TW9uLCAwNiBBdWcgMjAxMiAyMzowNzo1NSBHTVQ=
135
+ body:
136
+ encoding: US-ASCII
137
+ string: <InfoResponseMessage xmlns="http://epnet.com/webservices/EbscoApi/Contracts"
138
+ xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><AvailableSearchCriteria><AvailableSorts><AvailableSort><Id>date</Id><Label>Date
139
+ Descending</Label><AddAction>setsort(date)</AddAction></AvailableSort><AvailableSort><Id>relevance</Id><Label>Relevance</Label><AddAction>setsort(relevance)</AddAction></AvailableSort><AvailableSort><Id>date2</Id><Label>Date
140
+ Ascending</Label><AddAction>setsort(date2)</AddAction></AvailableSort></AvailableSorts><AvailableSearchFields><AvailableSearchField><FieldCode>TX</FieldCode><Label>All
141
+ Text</Label></AvailableSearchField><AvailableSearchField><FieldCode>AU</FieldCode><Label>Author</Label></AvailableSearchField><AvailableSearchField><FieldCode>TI</FieldCode><Label>Title</Label></AvailableSearchField><AvailableSearchField><FieldCode>SU</FieldCode><Label>Subject
142
+ Terms</Label></AvailableSearchField><AvailableSearchField><FieldCode>SO</FieldCode><Label>Source</Label></AvailableSearchField><AvailableSearchField><FieldCode>AB</FieldCode><Label>Abstract</Label></AvailableSearchField><AvailableSearchField><FieldCode>IS</FieldCode><Label>ISSN</Label></AvailableSearchField><AvailableSearchField><FieldCode>IB</FieldCode><Label>ISBN</Label></AvailableSearchField></AvailableSearchFields><AvailableExpanders><AvailableExpander><Id>thesaurus</Id><Label>Apply
143
+ related words</Label><AddAction>addexpander(thesaurus)</AddAction></AvailableExpander><AvailableExpander><Id>fulltext</Id><Label>Also
144
+ search within the full text of the articles</Label><AddAction>addexpander(fulltext)</AddAction></AvailableExpander></AvailableExpanders><AvailableLimiters><AvailableLimiter><Id>FT</Id><Label>Full
145
+ Text</Label><Type>select</Type><AddAction>addlimiter(FT:value)</AddAction><LimiterValues
146
+ i:nil="true"/></AvailableLimiter><AvailableLimiter><Id>RV</Id><Label>Peer
147
+ Reviewed</Label><Type>select</Type><AddAction>addlimiter(RV:value)</AddAction><LimiterValues
148
+ i:nil="true"/></AvailableLimiter><AvailableLimiter><Id>SO</Id><Label>Journal
149
+ Name</Label><Type>text</Type><AddAction>addlimiter(SO:value)</AddAction><LimiterValues
150
+ i:nil="true"/></AvailableLimiter><AvailableLimiter><Id>DT1</Id><Label>Date
151
+ Published from</Label><Type>ymrange</Type><AddAction>addlimiter(DT1:value)</AddAction><LimiterValues
152
+ i:nil="true"/></AvailableLimiter><AvailableLimiter><Id>FT1</Id><Label>Available
153
+ in Library Collection</Label><Type>select</Type><AddAction>addlimiter(FT1:value)</AddAction><LimiterValues
154
+ i:nil="true"/></AvailableLimiter></AvailableLimiters></AvailableSearchCriteria></InfoResponseMessage>
155
+ http_version:
156
+ recorded_at: Mon, 06 Aug 2012 23:07:55 GMT
157
+ - request:
158
+ method: get
159
+ uri: http://eds-api.ebscohost.com/edsapi/rest/endsession?sessiontoken=c6f7d532-8726-47a7-8e75-b3851a615c68.lS/LBviHYcah4372jECVTkM/b4/DpExjKLExBuNU0eA=
160
+ body:
161
+ encoding: US-ASCII
162
+ string: ''
163
+ headers:
164
+ X-Authenticationtoken:
165
+ - 2c9aa2a4-61b0-471c-9e85-a0cb306c296d
166
+ Accept:
167
+ - application/xml
168
+ response:
169
+ status:
170
+ code: 200
171
+ message: !binary |-
172
+ T0s=
173
+ headers:
174
+ !binary "Q2FjaGUtQ29udHJvbA==":
175
+ - !binary |-
176
+ cHJpdmF0ZQ==
177
+ !binary "Q29udGVudC1MZW5ndGg=":
178
+ - !binary |-
179
+ MTc5
180
+ !binary "Q29udGVudC1UeXBl":
181
+ - !binary |-
182
+ YXBwbGljYXRpb24veG1sOyBjaGFyc2V0PXV0Zi04
183
+ !binary "U2VydmVy":
184
+ - !binary |-
185
+ TWljcm9zb2Z0LUlJUy83LjU=
186
+ !binary "WC1EeW5hdHJhY2U=":
187
+ - !binary |-
188
+ UFQ9MjgwNjQ1O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
189
+ !binary "RHluYXRyYWNl":
190
+ - !binary |-
191
+ UFQ9MjgwNjQ1O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
192
+ !binary "WC1Bc3BuZXQtVmVyc2lvbg==":
193
+ - !binary |-
194
+ NC4wLjMwMzE5
195
+ !binary "WC1Qb3dlcmVkLUJ5":
196
+ - !binary |-
197
+ QVNQLk5FVA==
198
+ !binary "RGF0ZQ==":
199
+ - !binary |-
200
+ TW9uLCAwNiBBdWcgMjAxMiAyMzowNzo1NSBHTVQ=
201
+ body:
202
+ encoding: US-ASCII
203
+ string: <EndSessionResponse xmlns="http://epnet.com/webservices/EbscoApi/Contracts"
204
+ xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><IsSuccessful>y</IsSuccessful></EndSessionResponse>
205
+ http_version:
206
+ recorded_at: Mon, 06 Aug 2012 23:07:55 GMT
207
+ - request:
208
+ method: post
209
+ uri: https://eds-api.ebscohost.com/authservice/rest/uidauth
210
+ body:
211
+ encoding: UTF-8
212
+ string: ! " {\n \"UserId\":\"DUMMY_USER_ID\",\n \"Password\":\"DUMMY_PWD\"\n
213
+ \ }\n"
214
+ headers:
215
+ Accept:
216
+ - application/json
217
+ Content-Type:
218
+ - application/json
219
+ response:
220
+ status:
221
+ code: 200
222
+ message: OK
223
+ headers:
224
+ Cache-Control:
225
+ - private
226
+ Content-Length:
227
+ - '73'
228
+ Content-Type:
229
+ - application/JSON; charset=utf-8
230
+ Server:
231
+ - Microsoft-IIS/7.5
232
+ X-Aspnet-Version:
233
+ - 4.0.30319
234
+ X-Powered-By:
235
+ - ASP.NET
236
+ Date:
237
+ - Mon, 06 Aug 2012 23:08:26 GMT
238
+ body:
239
+ encoding: US-ASCII
240
+ string: ! '{"AuthToken":"a4a67610-357d-4691-97a9-7ee1b88857a7","AuthTimeout":"1800"}'
241
+ http_version:
242
+ recorded_at: Mon, 06 Aug 2012 23:08:26 GMT
243
+ recorded_with: VCR 2.2.4
@@ -0,0 +1,368 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://eds-api.ebscohost.com/authservice/rest/uidauth
6
+ body:
7
+ encoding: UTF-8
8
+ string: ! " {\n \"UserId\":\"DUMMY_USER_ID\",\n \"Password\":\"DUMMY_PWD\"\n
9
+ \ }\n"
10
+ headers:
11
+ Accept:
12
+ - application/json
13
+ Content-Type:
14
+ - application/json
15
+ response:
16
+ status:
17
+ code: 200
18
+ message: OK
19
+ headers:
20
+ Cache-Control:
21
+ - private
22
+ Content-Length:
23
+ - '73'
24
+ Content-Type:
25
+ - application/JSON; charset=utf-8
26
+ Server:
27
+ - Microsoft-IIS/7.5
28
+ X-Aspnet-Version:
29
+ - 4.0.30319
30
+ X-Powered-By:
31
+ - ASP.NET
32
+ Date:
33
+ - Mon, 06 Aug 2012 23:07:55 GMT
34
+ body:
35
+ encoding: US-ASCII
36
+ string: ! '{"AuthToken":"b4220769-046b-4c99-9262-f1dd130706c9","AuthTimeout":"1800"}'
37
+ http_version:
38
+ recorded_at: Mon, 06 Aug 2012 23:07:55 GMT
39
+ - request:
40
+ method: get
41
+ uri: http://eds-api.ebscohost.com/edsapi/rest/createsession?guest=y&profile=edsapi
42
+ body:
43
+ encoding: US-ASCII
44
+ string: ''
45
+ headers:
46
+ X-Authenticationtoken:
47
+ - b4220769-046b-4c99-9262-f1dd130706c9
48
+ Accept:
49
+ - application/xml
50
+ response:
51
+ status:
52
+ code: 200
53
+ message: !binary |-
54
+ T0s=
55
+ headers:
56
+ !binary "Q2FjaGUtQ29udHJvbA==":
57
+ - !binary |-
58
+ cHJpdmF0ZQ==
59
+ !binary "Q29udGVudC1MZW5ndGg=":
60
+ - !binary |-
61
+ Mjc5
62
+ !binary "Q29udGVudC1UeXBl":
63
+ - !binary |-
64
+ YXBwbGljYXRpb24veG1sOyBjaGFyc2V0PXV0Zi04
65
+ !binary "U2VydmVy":
66
+ - !binary |-
67
+ TWljcm9zb2Z0LUlJUy83LjU=
68
+ !binary "WC1EeW5hdHJhY2U=":
69
+ - !binary |-
70
+ UFQ9MjgwNjQ2O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
71
+ !binary "RHluYXRyYWNl":
72
+ - !binary |-
73
+ UFQ9MjgwNjQ2O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
74
+ !binary "WC1Bc3BuZXQtVmVyc2lvbg==":
75
+ - !binary |-
76
+ NC4wLjMwMzE5
77
+ !binary "WC1Qb3dlcmVkLUJ5":
78
+ - !binary |-
79
+ QVNQLk5FVA==
80
+ !binary "RGF0ZQ==":
81
+ - !binary |-
82
+ TW9uLCAwNiBBdWcgMjAxMiAyMzowNzo1NSBHTVQ=
83
+ body:
84
+ encoding: US-ASCII
85
+ string: <CreateSessionResponseMessage xmlns="http://epnet.com/webservices/EbscoApi/Contracts"
86
+ xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><SessionToken>d389e524-95ea-4518-bd4a-6b0eb7c0af44.kEvPxolRdsxALTno8ChwQHJ3j2LNLih2ApF64T4yK4w=</SessionToken></CreateSessionResponseMessage>
87
+ http_version:
88
+ recorded_at: Mon, 06 Aug 2012 23:07:55 GMT
89
+ - request:
90
+ method: get
91
+ uri: http://eds-api.ebscohost.com/edsapi/rest/info
92
+ body:
93
+ encoding: US-ASCII
94
+ string: ''
95
+ headers:
96
+ X-Authenticationtoken:
97
+ - BAD
98
+ Accept:
99
+ - application/xml
100
+ X-Sessiontoken:
101
+ - d389e524-95ea-4518-bd4a-6b0eb7c0af44.kEvPxolRdsxALTno8ChwQHJ3j2LNLih2ApF64T4yK4w=
102
+ response:
103
+ status:
104
+ code: 400
105
+ message: !binary |-
106
+ QmFkIFJlcXVlc3Q=
107
+ headers:
108
+ !binary "Q2FjaGUtQ29udHJvbA==":
109
+ - !binary |-
110
+ cHJpdmF0ZQ==
111
+ !binary "Q29udGVudC1MZW5ndGg=":
112
+ - !binary |-
113
+ MzI5
114
+ !binary "Q29udGVudC1UeXBl":
115
+ - !binary |-
116
+ YXBwbGljYXRpb24veG1sOyBjaGFyc2V0PXV0Zi04
117
+ !binary "U2VydmVy":
118
+ - !binary |-
119
+ TWljcm9zb2Z0LUlJUy83LjU=
120
+ !binary "WC1EeW5hdHJhY2U=":
121
+ - !binary |-
122
+ UFQ9MjgwNjQ3O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
123
+ !binary "RHluYXRyYWNl":
124
+ - !binary |-
125
+ UFQ9MjgwNjQ3O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
126
+ !binary "WC1Bc3BuZXQtVmVyc2lvbg==":
127
+ - !binary |-
128
+ NC4wLjMwMzE5
129
+ !binary "WC1Qb3dlcmVkLUJ5":
130
+ - !binary |-
131
+ QVNQLk5FVA==
132
+ !binary "RGF0ZQ==":
133
+ - !binary |-
134
+ TW9uLCAwNiBBdWcgMjAxMiAyMzowNzo1NSBHTVQ=
135
+ body:
136
+ encoding: UTF-8
137
+ string: <APIErrorMessage xmlns="http://epnet.com/webservices/EbscoApi" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><DetailedErrorDescription>Invalid Authentication Token.
138
+ Please generate a new one.</DetailedErrorDescription><ErrorDescription>Auth
139
+ Token Invalid</ErrorDescription><ErrorNumber>104</ErrorNumber></APIErrorMessage>
140
+ http_version:
141
+ recorded_at: Mon, 06 Aug 2012 23:07:55 GMT
142
+ - request:
143
+ method: post
144
+ uri: https://eds-api.ebscohost.com/authservice/rest/uidauth
145
+ body:
146
+ encoding: UTF-8
147
+ string: ! " {\n \"UserId\":\"DUMMY_USER_ID\",\n \"Password\":\"DUMMY_PWD\"\n
148
+ \ }\n"
149
+ headers:
150
+ Accept:
151
+ - application/json
152
+ Content-Type:
153
+ - application/json
154
+ response:
155
+ status:
156
+ code: 200
157
+ message: OK
158
+ headers:
159
+ Cache-Control:
160
+ - private
161
+ Content-Length:
162
+ - '73'
163
+ Content-Type:
164
+ - application/JSON; charset=utf-8
165
+ Server:
166
+ - Microsoft-IIS/7.5
167
+ X-Aspnet-Version:
168
+ - 4.0.30319
169
+ X-Powered-By:
170
+ - ASP.NET
171
+ Date:
172
+ - Mon, 06 Aug 2012 23:07:55 GMT
173
+ body:
174
+ encoding: US-ASCII
175
+ string: ! '{"AuthToken":"078087ad-6ddb-438f-a42d-68073cb00f02","AuthTimeout":"1800"}'
176
+ http_version:
177
+ recorded_at: Mon, 06 Aug 2012 23:07:55 GMT
178
+ - request:
179
+ method: get
180
+ uri: http://eds-api.ebscohost.com/edsapi/rest/info
181
+ body:
182
+ encoding: US-ASCII
183
+ string: ''
184
+ headers:
185
+ X-Authenticationtoken:
186
+ - 078087ad-6ddb-438f-a42d-68073cb00f02
187
+ Accept:
188
+ - application/xml
189
+ X-Sessiontoken:
190
+ - d389e524-95ea-4518-bd4a-6b0eb7c0af44.kEvPxolRdsxALTno8ChwQHJ3j2LNLih2ApF64T4yK4w=
191
+ response:
192
+ status:
193
+ code: 200
194
+ message: !binary |-
195
+ T0s=
196
+ headers:
197
+ !binary "Q2FjaGUtQ29udHJvbA==":
198
+ - !binary |-
199
+ cHJpdmF0ZQ==
200
+ !binary "Q29udGVudC1MZW5ndGg=":
201
+ - !binary |-
202
+ MjU4Nw==
203
+ !binary "Q29udGVudC1UeXBl":
204
+ - !binary |-
205
+ YXBwbGljYXRpb24veG1sOyBjaGFyc2V0PXV0Zi04
206
+ !binary "U2VydmVy":
207
+ - !binary |-
208
+ TWljcm9zb2Z0LUlJUy83LjU=
209
+ !binary "WC1EeW5hdHJhY2U=":
210
+ - !binary |-
211
+ UFQ9MjgwNjQ4O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
212
+ !binary "RHluYXRyYWNl":
213
+ - !binary |-
214
+ UFQ9MjgwNjQ4O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
215
+ !binary "WC1Bc3BuZXQtVmVyc2lvbg==":
216
+ - !binary |-
217
+ NC4wLjMwMzE5
218
+ !binary "WC1Qb3dlcmVkLUJ5":
219
+ - !binary |-
220
+ QVNQLk5FVA==
221
+ !binary "RGF0ZQ==":
222
+ - !binary |-
223
+ TW9uLCAwNiBBdWcgMjAxMiAyMzowNzo1NSBHTVQ=
224
+ body:
225
+ encoding: US-ASCII
226
+ string: <InfoResponseMessage xmlns="http://epnet.com/webservices/EbscoApi/Contracts"
227
+ xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><AvailableSearchCriteria><AvailableSorts><AvailableSort><Id>date</Id><Label>Date
228
+ Descending</Label><AddAction>setsort(date)</AddAction></AvailableSort><AvailableSort><Id>relevance</Id><Label>Relevance</Label><AddAction>setsort(relevance)</AddAction></AvailableSort><AvailableSort><Id>date2</Id><Label>Date
229
+ Ascending</Label><AddAction>setsort(date2)</AddAction></AvailableSort></AvailableSorts><AvailableSearchFields><AvailableSearchField><FieldCode>TX</FieldCode><Label>All
230
+ Text</Label></AvailableSearchField><AvailableSearchField><FieldCode>AU</FieldCode><Label>Author</Label></AvailableSearchField><AvailableSearchField><FieldCode>TI</FieldCode><Label>Title</Label></AvailableSearchField><AvailableSearchField><FieldCode>SU</FieldCode><Label>Subject
231
+ Terms</Label></AvailableSearchField><AvailableSearchField><FieldCode>SO</FieldCode><Label>Source</Label></AvailableSearchField><AvailableSearchField><FieldCode>AB</FieldCode><Label>Abstract</Label></AvailableSearchField><AvailableSearchField><FieldCode>IS</FieldCode><Label>ISSN</Label></AvailableSearchField><AvailableSearchField><FieldCode>IB</FieldCode><Label>ISBN</Label></AvailableSearchField></AvailableSearchFields><AvailableExpanders><AvailableExpander><Id>thesaurus</Id><Label>Apply
232
+ related words</Label><AddAction>addexpander(thesaurus)</AddAction></AvailableExpander><AvailableExpander><Id>fulltext</Id><Label>Also
233
+ search within the full text of the articles</Label><AddAction>addexpander(fulltext)</AddAction></AvailableExpander></AvailableExpanders><AvailableLimiters><AvailableLimiter><Id>FT</Id><Label>Full
234
+ Text</Label><Type>select</Type><AddAction>addlimiter(FT:value)</AddAction><LimiterValues
235
+ i:nil="true"/></AvailableLimiter><AvailableLimiter><Id>RV</Id><Label>Peer
236
+ Reviewed</Label><Type>select</Type><AddAction>addlimiter(RV:value)</AddAction><LimiterValues
237
+ i:nil="true"/></AvailableLimiter><AvailableLimiter><Id>SO</Id><Label>Journal
238
+ Name</Label><Type>text</Type><AddAction>addlimiter(SO:value)</AddAction><LimiterValues
239
+ i:nil="true"/></AvailableLimiter><AvailableLimiter><Id>DT1</Id><Label>Date
240
+ Published from</Label><Type>ymrange</Type><AddAction>addlimiter(DT1:value)</AddAction><LimiterValues
241
+ i:nil="true"/></AvailableLimiter><AvailableLimiter><Id>FT1</Id><Label>Available
242
+ in Library Collection</Label><Type>select</Type><AddAction>addlimiter(FT1:value)</AddAction><LimiterValues
243
+ i:nil="true"/></AvailableLimiter></AvailableLimiters></AvailableSearchCriteria></InfoResponseMessage>
244
+ http_version:
245
+ recorded_at: Mon, 06 Aug 2012 23:07:55 GMT
246
+ - request:
247
+ method: get
248
+ uri: http://eds-api.ebscohost.com/edsapi/rest/endsession?sessiontoken=d389e524-95ea-4518-bd4a-6b0eb7c0af44.kEvPxolRdsxALTno8ChwQHJ3j2LNLih2ApF64T4yK4w=
249
+ body:
250
+ encoding: US-ASCII
251
+ string: ''
252
+ headers:
253
+ X-Authenticationtoken:
254
+ - 078087ad-6ddb-438f-a42d-68073cb00f02
255
+ Accept:
256
+ - application/xml
257
+ response:
258
+ status:
259
+ code: 200
260
+ message: !binary |-
261
+ T0s=
262
+ headers:
263
+ !binary "Q2FjaGUtQ29udHJvbA==":
264
+ - !binary |-
265
+ cHJpdmF0ZQ==
266
+ !binary "Q29udGVudC1MZW5ndGg=":
267
+ - !binary |-
268
+ MTc5
269
+ !binary "Q29udGVudC1UeXBl":
270
+ - !binary |-
271
+ YXBwbGljYXRpb24veG1sOyBjaGFyc2V0PXV0Zi04
272
+ !binary "U2VydmVy":
273
+ - !binary |-
274
+ TWljcm9zb2Z0LUlJUy83LjU=
275
+ !binary "WC1EeW5hdHJhY2U=":
276
+ - !binary |-
277
+ UFQ9MjgwNjQ5O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
278
+ !binary "RHluYXRyYWNl":
279
+ - !binary |-
280
+ UFQ9MjgwNjQ5O1BBPS0xNDcyMTU5NDk5O1BTPS03NjAxOTQ0MDc=
281
+ !binary "WC1Bc3BuZXQtVmVyc2lvbg==":
282
+ - !binary |-
283
+ NC4wLjMwMzE5
284
+ !binary "WC1Qb3dlcmVkLUJ5":
285
+ - !binary |-
286
+ QVNQLk5FVA==
287
+ !binary "RGF0ZQ==":
288
+ - !binary |-
289
+ TW9uLCAwNiBBdWcgMjAxMiAyMzowNzo1NSBHTVQ=
290
+ body:
291
+ encoding: US-ASCII
292
+ string: <EndSessionResponse xmlns="http://epnet.com/webservices/EbscoApi/Contracts"
293
+ xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><IsSuccessful>y</IsSuccessful></EndSessionResponse>
294
+ http_version:
295
+ recorded_at: Mon, 06 Aug 2012 23:07:55 GMT
296
+ - request:
297
+ method: post
298
+ uri: https://eds-api.ebscohost.com/authservice/rest/uidauth
299
+ body:
300
+ encoding: UTF-8
301
+ string: ! " {\n \"UserId\":\"DUMMY_USER_ID\",\n \"Password\":\"DUMMY_PWD\"\n
302
+ \ }\n"
303
+ headers:
304
+ Accept:
305
+ - application/json
306
+ Content-Type:
307
+ - application/json
308
+ response:
309
+ status:
310
+ code: 200
311
+ message: OK
312
+ headers:
313
+ Cache-Control:
314
+ - private
315
+ Content-Length:
316
+ - '73'
317
+ Content-Type:
318
+ - application/JSON; charset=utf-8
319
+ Server:
320
+ - Microsoft-IIS/7.5
321
+ X-Aspnet-Version:
322
+ - 4.0.30319
323
+ X-Powered-By:
324
+ - ASP.NET
325
+ Date:
326
+ - Mon, 06 Aug 2012 23:08:26 GMT
327
+ body:
328
+ encoding: US-ASCII
329
+ string: ! '{"AuthToken":"af1c9dbe-fbf1-4226-929c-6727d12ea795","AuthTimeout":"1800"}'
330
+ http_version:
331
+ recorded_at: Mon, 06 Aug 2012 23:08:27 GMT
332
+ - request:
333
+ method: post
334
+ uri: https://eds-api.ebscohost.com/authservice/rest/uidauth
335
+ body:
336
+ encoding: UTF-8
337
+ string: ! " {\n \"UserId\":\"DUMMY_USER_ID\",\n \"Password\":\"DUMMY_PWD\"\n
338
+ \ }\n"
339
+ headers:
340
+ Accept:
341
+ - application/json
342
+ Content-Type:
343
+ - application/json
344
+ response:
345
+ status:
346
+ code: 200
347
+ message: OK
348
+ headers:
349
+ Cache-Control:
350
+ - private
351
+ Content-Length:
352
+ - '73'
353
+ Content-Type:
354
+ - application/JSON; charset=utf-8
355
+ Server:
356
+ - Microsoft-IIS/7.5
357
+ X-Aspnet-Version:
358
+ - 4.0.30319
359
+ X-Powered-By:
360
+ - ASP.NET
361
+ Date:
362
+ - Mon, 06 Aug 2012 23:08:26 GMT
363
+ body:
364
+ encoding: US-ASCII
365
+ string: ! '{"AuthToken":"2ab4330a-399b-4ce1-b0bc-22597960ce7a","AuthTimeout":"1800"}'
366
+ http_version:
367
+ recorded_at: Mon, 06 Aug 2012 23:08:27 GMT
368
+ recorded_with: VCR 2.2.4