borrow_direct 1.1.0 → 1.2.0.pre1

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 (91) hide show
  1. checksums.yaml +5 -13
  2. data/.travis.yml +6 -0
  3. data/Gemfile +2 -0
  4. data/README.md +19 -6
  5. data/bd_metrics/finditem_measure.rb +8 -1
  6. data/borrow_direct.gemspec +1 -1
  7. data/lib/borrow_direct/authentication.rb +16 -8
  8. data/lib/borrow_direct/defaults.rb +4 -1
  9. data/lib/borrow_direct/encryption.rb +34 -0
  10. data/lib/borrow_direct/error.rb +17 -0
  11. data/lib/borrow_direct/find_item.rb +32 -18
  12. data/lib/borrow_direct/pickup_location.rb +32 -0
  13. data/lib/borrow_direct/request.rb +30 -8
  14. data/lib/borrow_direct/request_item.rb +15 -7
  15. data/lib/borrow_direct/request_query.rb +18 -4
  16. data/lib/borrow_direct/version.rb +1 -1
  17. data/test/authentication_test.rb +40 -12
  18. data/test/encryption_test.rb +58 -0
  19. data/test/find_item_test.rb +66 -11
  20. data/test/request_item_test.rb +65 -8
  21. data/test/request_query_test.rb +23 -27
  22. data/test/request_test.rb +40 -27
  23. data/test/test_helper.rb +10 -1
  24. data/test/vcr_cassettes/Authentication/Makes_a_request_succesfully.yml +11 -23
  25. data/test/vcr_cassettes/Authentication/Raises_for_bad_library_symbol.yml +12 -23
  26. data/test/vcr_cassettes/Authentication/Raises_for_bad_patron_barcode.yml +12 -24
  27. data/test/vcr_cassettes/Authentication/get_auth_id/Raises_for_bad_api_key.yml +41 -0
  28. data/test/vcr_cassettes/Authentication/get_auth_id/raises_for_a_bad_library_symbol.yml +12 -23
  29. data/test/vcr_cassettes/Authentication/get_auth_id/raises_for_a_bad_patron_barcode.yml +12 -24
  30. data/test/vcr_cassettes/Authentication/get_auth_id/returns_an_auth_id_for_a_good_request.yml +11 -23
  31. data/test/vcr_cassettes/Authentication/get_auth_id/returns_auth_id_with_API_key_from_defaults.yml +40 -0
  32. data/test/vcr_cassettes/Authentication/raw_request_to_verify_HTTP_api/works.yml +11 -23
  33. data/test/vcr_cassettes/FindItem/_find_item_request/Raises_with_bad_api_key.yml +41 -0
  34. data/test/vcr_cassettes/FindItem/_find_item_request/finds_a_locally_available_item.yml +47 -18
  35. data/test/vcr_cassettes/FindItem/_find_item_request/finds_a_requestable_item.yml +66 -18
  36. data/test/vcr_cassettes/FindItem/_find_item_request/finds_an_item_that_does_not_exist_in_BD.yml +66 -19
  37. data/test/vcr_cassettes/FindItem/_find_item_request/raises_proper_error_on_bad_AID.yml +40 -0
  38. data/test/vcr_cassettes/FindItem/_find_item_request/uses_manually_set_auth_id.yml +97 -0
  39. data/test/vcr_cassettes/FindItem/_find_item_request/with_expected_error_PUBFI002/returns_result.yml +46 -9
  40. data/test/vcr_cassettes/FindItem/_find_item_request/works_with_multiple_values.yml +66 -18
  41. data/test/vcr_cassettes/FindItem/find_with_Response/_pickup_location_data/returns_array_of_PickupLocations.yml +97 -0
  42. data/test/vcr_cassettes/FindItem/find_with_Response/has_an_auth_id.yml +66 -18
  43. data/test/vcr_cassettes/FindItem/find_with_Response/has_nil_pickup_locations_when_BD_doesn_t_want_to_give_us_them.yml +46 -9
  44. data/test/vcr_cassettes/FindItem/find_with_Response/has_pickup_locations.yml +66 -18
  45. data/test/vcr_cassettes/FindItem/find_with_Response/knows_locally_available_.yml +47 -18
  46. data/test/vcr_cassettes/FindItem/find_with_Response/not_requestable_for_item_that_BD_returns_PUBFI002.yml +46 -9
  47. data/test/vcr_cassettes/FindItem/find_with_Response/not_requestable_for_item_that_does_not_exist_in_BD.yml +46 -19
  48. data/test/vcr_cassettes/FindItem/find_with_Response/not_requestable_for_item_that_no_libraries_will_lend.yml +275 -18
  49. data/test/vcr_cassettes/FindItem/find_with_Response/not_requestable_for_locally_available_item.yml +47 -18
  50. data/test/vcr_cassettes/FindItem/find_with_Response/requestable_for_requestable_item.yml +66 -18
  51. data/test/vcr_cassettes/FindItem/find_with_Response/requestable_with_multiple_items_if_at_least_one_is_requestable.yml +66 -18
  52. data/test/vcr_cassettes/Request/authentication_id/automatically_fetches_one_when_needed.yml +47 -22
  53. data/test/vcr_cassettes/Request/authentication_id/can_refetch_when_instructed.yml +47 -22
  54. data/test/vcr_cassettes/Request/authentication_id/manually_set_one_will_be_used_without_fetch.yml +40 -0
  55. data/test/vcr_cassettes/Request/authentication_id/starts_out_nil.yml +40 -0
  56. data/test/vcr_cassettes/Request/authentication_id/takes_with_auth_id.yml +40 -0
  57. data/test/vcr_cassettes/Request/can_make_a_succesful_request_with_AID.yml +97 -0
  58. data/test/vcr_cassettes/Request/gets_BD_error_info.yml +49 -12
  59. data/test/vcr_cassettes/Request/gets_BD_error_info_from_a_bad_AID.yml +77 -0
  60. data/test/vcr_cassettes/Request/raises_exception_on_timeout_live.yml +40 -0
  61. data/test/vcr_cassettes/Request/raises_on_bad_path.yml +61 -24
  62. data/test/vcr_cassettes/Request/raises_on_bad_request_hash.yml +50 -35
  63. data/test/vcr_cassettes/Request/uses_timeout_for_HttpClient.yml +40 -0
  64. data/test/vcr_cassettes/Request/with_expected_errors/still_returns_result.yml +47 -10
  65. data/test/vcr_cassettes/RequestItem/make_request/make_request_for_a_locally_available_item.yml +21 -33
  66. data/test/vcr_cassettes/RequestItem/make_request/make_request_for_a_requestable_item.yml +20 -32
  67. data/test/vcr_cassettes/RequestItem/make_request/make_request_for_an_unrequestable_item.yml +21 -33
  68. data/test/vcr_cassettes/RequestItem/make_request/says_no_for_item_that_BD_returns_PUBRI003.yml +77 -0
  69. data/test/vcr_cassettes/RequestItem/make_request/sets_an_auth_id.yml +77 -0
  70. data/test/vcr_cassettes/RequestItem/make_request_/raises_for_unrequestable.yml +21 -33
  71. data/test/vcr_cassettes/RequestItem/make_request_/returns_number_for_succesful_request.yml +20 -32
  72. data/test/vcr_cassettes/RequestItem/raises_proper_error_on_bad_AID.yml +40 -0
  73. data/test/vcr_cassettes/RequestItem/raw_RequestItem_sanity_check.yml +134 -0
  74. data/test/vcr_cassettes/RequestItem/raw_requests_an_unrequestable_item.yml +21 -33
  75. data/test/vcr_cassettes/RequestItem/uses_manually_set_auth_id.yml +20 -32
  76. data/test/vcr_cassettes/RequestItem/with_pickup_location_and_requestable_item/works_with_String_pickup_location.yml +78 -0
  77. data/test/vcr_cassettes/RequestItem/with_pickup_location_and_requestable_item/works_with_structured_PickupLocation.yml +77 -0
  78. data/test/vcr_cassettes/RequestQuery/raises_proper_error_on_bad_AID.yml +40 -0
  79. data/test/vcr_cassettes/RequestQuery/raw_request_query_request/returns_results.yml +117 -325
  80. data/test/vcr_cassettes/RequestQuery/raw_request_to_verify_the_BD_HTTP_API.yml +30 -325
  81. data/test/vcr_cassettes/RequestQuery/requests/fetches_default_records.yml +117 -328
  82. data/test/vcr_cassettes/RequestQuery/requests/fetches_full_records.yml +148 -425
  83. metadata +67 -38
  84. data/test/vcr_cassettes/Authentication/raw_request_to_verify_HTTP_api/.yml +0 -52
  85. data/test/vcr_cassettes/FindItem/find_with_Response/has_nil_auth_id_when_BD_doesn_t_want_to_give_us_one.yml +0 -40
  86. data/test/vcr_cassettes/Request/can_make_a_succesful_request.yml +0 -49
  87. data/test/vcr_cassettes/RequestItem/make_request/raises_for_unrequestable.yml +0 -91
  88. data/test/vcr_cassettes/RequestItem/make_request/returns_number_for_succesful_request.yml +0 -89
  89. data/test/vcr_cassettes/RequestItem/make_request/says_no_for_item_that_BD_returns_PUBRI004.yml +0 -89
  90. data/test/vcr_cassettes/RequestItem/with_pickup_location_and_requestable_item/still_works.yml +0 -90
  91. data/test/vcr_cassettes/top_level_describe/an_inner_describe/.yml +0 -76
@@ -0,0 +1,97 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://rc.relais-host.com/portal-service/user/authentication
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"ApiKey":"DUMMY_BD_API_KEY","PartnershipId":"BD","UserGroup":"patron","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","PatronId":"DUMMY_BD_PATRON"}'
9
+ headers:
10
+ User-Agent:
11
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
12
+ Accept:
13
+ - "*/*"
14
+ Date:
15
+ - Thu, 15 Oct 2015 15:14:09 GMT
16
+ Content-Type:
17
+ - application/json
18
+ Accept-Language:
19
+ - en
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Server:
26
+ - nginx/1.4.1
27
+ Date:
28
+ - Thu, 15 Oct 2015 15:14:10 GMT
29
+ Content-Type:
30
+ - application/json;charset=UTF-8
31
+ Content-Length:
32
+ - '269'
33
+ Connection:
34
+ - keep-alive
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"AuthorizationId":"2lYjAZaoPeu4KD9nl1YN1Ln7vxc","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Iso639_2_LangCode":"ENG","FirstName":"Jonathan","LastName":"Rochkind","AllowLoanAddRequest":true,"AllowCopyAddRequest":false,"AllowSelDelivLoanChange":true,"AllowSelDelivCopyChange":false}'
38
+ http_version:
39
+ recorded_at: Thu, 15 Oct 2015 15:14:10 GMT
40
+ - request:
41
+ method: post
42
+ uri: https://rc.relais-host.com/dws/item/available?aid=2lYjAZaoPeu4KD9nl1YN1Ln7vxc
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"PartnershipId":"BD","ExactSearch":[{"Type":"ISBN","Value":"9810743734"}]}'
46
+ headers:
47
+ User-Agent:
48
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
49
+ Accept:
50
+ - "*/*"
51
+ Date:
52
+ - Thu, 15 Oct 2015 15:14:10 GMT
53
+ Content-Type:
54
+ - application/json
55
+ Accept-Language:
56
+ - en
57
+ response:
58
+ status:
59
+ code: 200
60
+ message: OK
61
+ headers:
62
+ Server:
63
+ - nginx/1.4.1
64
+ Date:
65
+ - Thu, 15 Oct 2015 15:14:13 GMT
66
+ Content-Type:
67
+ - application/json;charset=UTF-8
68
+ Transfer-Encoding:
69
+ - chunked
70
+ Connection:
71
+ - keep-alive
72
+ body:
73
+ encoding: UTF-8
74
+ string: '{"Available":true,"SearchTerm":"isbn=9810743734","RequestLink":{"ButtonLink":"AddRequest","ButtonLabel":"Request","RequestMessage":"Request
75
+ this item"},"PickupLocation":[{"PickupLocationCode":"E","PickupLocationDescription":"*Milton
76
+ S. Eisenhower Library"},{"PickupLocationCode":"A","PickupLocationDescription":"Arthur
77
+ Friedheim Library"},{"PickupLocationCode":"B","PickupLocationDescription":"Columbia
78
+ Center"},{"PickupLocationCode":"C","PickupLocationDescription":"Harbor East"},{"PickupLocationCode":"D","PickupLocationDescription":"Montgomery
79
+ Library Resource Center"},{"PickupLocationCode":"F","PickupLocationDescription":"JHU
80
+ Homewood Office (faculty and grad students)"},{"PickupLocationCode":"G","PickupLocationDescription":"Washington
81
+ Library Resource Center"},{"PickupLocationCode":"H","PickupLocationDescription":"APL
82
+ - EP STUDENTS - Ed Center"},{"PickupLocationCode":"I","PickupLocationDescription":"APL
83
+ STAFF - Room 5-17"},{"PickupLocationCode":"J","PickupLocationDescription":"SAIS
84
+ Library"},{"PickupLocationCode":"K","PickupLocationDescription":"Harrison
85
+ Medical Library-Bayview"},{"PickupLocationCode":"L","PickupLocationDescription":"Institute
86
+ of the History of Medicine"},{"PickupLocationCode":"M","PickupLocationDescription":"JHMI
87
+ Pickup - Hampton House 9th floor"},{"PickupLocationCode":"N","PickupLocationDescription":"JHMI
88
+ Pickup - BSPH E4643"},{"PickupLocationCode":"O","PickupLocationDescription":"JHMI
89
+ Pickup - School of Nursing 313"},{"PickupLocationCode":"P","PickupLocationDescription":"JH
90
+ Medical Campus Office (faculty and staff)"},{"PickupLocationCode":"Q","PickupLocationDescription":"JHMI
91
+ Pickup - Armstrong 306"},{"PickupLocationCode":"R","PickupLocationDescription":"JHMI
92
+ Pickup - PCTB 115-116"},{"PickupLocationCode":"S","PickupLocationDescription":"Welch
93
+ Medical Library"},{"PickupLocationCode":"T","PickupLocationDescription":"Wilmer
94
+ Friedenwald Library"}]}'
95
+ http_version:
96
+ recorded_at: Thu, 15 Oct 2015 15:14:13 GMT
97
+ recorded_with: VCR 2.9.3
@@ -2,17 +2,17 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: https://bdtest.relais-host.com/dws/item/available
5
+ uri: https://rc.relais-host.com/portal-service/user/authentication
6
6
  body:
7
7
  encoding: UTF-8
8
- string: ! '{"PartnershipId":"BD","Credentials":{"LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Barcode":"DUMMY_BD_PATRON"},"ExactSearch":[{"Type":"ISBN","Value":"9810743734"}]}'
8
+ string: '{"ApiKey":"DUMMY_BD_API_KEY","PartnershipId":"BD","UserGroup":"patron","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","PatronId":"DUMMY_BD_PATRON"}'
9
9
  headers:
10
10
  User-Agent:
11
- - ruby borrow_direct gem 0.0.1 (HTTPClient 2.5.1) https://github.com/jrochkind/borrow_direct
11
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
12
12
  Accept:
13
- - ! '*/*'
13
+ - "*/*"
14
14
  Date:
15
- - Tue, 21 Oct 2014 17:06:37 GMT
15
+ - Thu, 15 Oct 2015 15:14:48 GMT
16
16
  Content-Type:
17
17
  - application/json
18
18
  Accept-Language:
@@ -25,7 +25,44 @@ http_interactions:
25
25
  Server:
26
26
  - nginx/1.4.1
27
27
  Date:
28
- - Tue, 21 Oct 2014 17:06:39 GMT
28
+ - Thu, 15 Oct 2015 15:14:49 GMT
29
+ Content-Type:
30
+ - application/json;charset=UTF-8
31
+ Content-Length:
32
+ - '269'
33
+ Connection:
34
+ - keep-alive
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"AuthorizationId":"e3c8zqbzSfU2nXPCrpdvEjn45FQ","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Iso639_2_LangCode":"ENG","FirstName":"Jonathan","LastName":"Rochkind","AllowLoanAddRequest":true,"AllowCopyAddRequest":false,"AllowSelDelivLoanChange":true,"AllowSelDelivCopyChange":false}'
38
+ http_version:
39
+ recorded_at: Thu, 15 Oct 2015 15:14:49 GMT
40
+ - request:
41
+ method: post
42
+ uri: https://rc.relais-host.com/dws/item/available?aid=e3c8zqbzSfU2nXPCrpdvEjn45FQ
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"PartnershipId":"BD","ExactSearch":[{"Type":"ISBN","Value":"9810743734"}]}'
46
+ headers:
47
+ User-Agent:
48
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
49
+ Accept:
50
+ - "*/*"
51
+ Date:
52
+ - Thu, 15 Oct 2015 15:14:49 GMT
53
+ Content-Type:
54
+ - application/json
55
+ Accept-Language:
56
+ - en
57
+ response:
58
+ status:
59
+ code: 200
60
+ message: OK
61
+ headers:
62
+ Server:
63
+ - nginx/1.4.1
64
+ Date:
65
+ - Thu, 15 Oct 2015 15:14:54 GMT
29
66
  Content-Type:
30
67
  - application/json;charset=UTF-8
31
68
  Transfer-Encoding:
@@ -33,17 +70,28 @@ http_interactions:
33
70
  Connection:
34
71
  - keep-alive
35
72
  body:
36
- encoding: US-ASCII
37
- string: ! '{"Item":{"Available":true,"SearchTerm":"isbn=9810743734","AuthorizationId":"aeP0laB8h0nfSzjJkU8I0yjtZAc","RequestLink":{"ButtonLink":"AddRequest","ButtonLabel":"Request","RequestMessage":"Request
38
- this item"},"PickupLocations":{"PickupLocation":["*Milton S. Eisenhower Library","APL
39
- - EP STUDENTS - Ed Center","APL STAFF - Room 5-17","Arthur Friedheim Library","Columbia
40
- Center","Harbor East","Harrison Medical Library-Bayview","Institute of the
41
- History of Medicine","JH Medical Campus Office (faculty and staff)","JHMI
42
- Pickup - Armstrong 306","JHMI Pickup - BSPH E4643","JHMI Pickup - Hampton
43
- House 9th floor","JHMI Pickup - PCTB 115-116","JHMI Pickup - School of Nursing
44
- 313","JHU Homewood Office (faculty and grad students)","Montgomery Library
45
- Resource Center","SAIS Library","Washington Library Resource Center","Welch
46
- Medical Library","Wilmer Friedenwald Library"]}}}'
73
+ encoding: UTF-8
74
+ string: '{"Available":true,"SearchTerm":"isbn=9810743734","RequestLink":{"ButtonLink":"AddRequest","ButtonLabel":"Request","RequestMessage":"Request
75
+ this item"},"PickupLocation":[{"PickupLocationCode":"E","PickupLocationDescription":"*Milton
76
+ S. Eisenhower Library"},{"PickupLocationCode":"A","PickupLocationDescription":"Arthur
77
+ Friedheim Library"},{"PickupLocationCode":"B","PickupLocationDescription":"Columbia
78
+ Center"},{"PickupLocationCode":"C","PickupLocationDescription":"Harbor East"},{"PickupLocationCode":"D","PickupLocationDescription":"Montgomery
79
+ Library Resource Center"},{"PickupLocationCode":"F","PickupLocationDescription":"JHU
80
+ Homewood Office (faculty and grad students)"},{"PickupLocationCode":"G","PickupLocationDescription":"Washington
81
+ Library Resource Center"},{"PickupLocationCode":"H","PickupLocationDescription":"APL
82
+ - EP STUDENTS - Ed Center"},{"PickupLocationCode":"I","PickupLocationDescription":"APL
83
+ STAFF - Room 5-17"},{"PickupLocationCode":"J","PickupLocationDescription":"SAIS
84
+ Library"},{"PickupLocationCode":"K","PickupLocationDescription":"Harrison
85
+ Medical Library-Bayview"},{"PickupLocationCode":"L","PickupLocationDescription":"Institute
86
+ of the History of Medicine"},{"PickupLocationCode":"M","PickupLocationDescription":"JHMI
87
+ Pickup - Hampton House 9th floor"},{"PickupLocationCode":"N","PickupLocationDescription":"JHMI
88
+ Pickup - BSPH E4643"},{"PickupLocationCode":"O","PickupLocationDescription":"JHMI
89
+ Pickup - School of Nursing 313"},{"PickupLocationCode":"P","PickupLocationDescription":"JH
90
+ Medical Campus Office (faculty and staff)"},{"PickupLocationCode":"Q","PickupLocationDescription":"JHMI
91
+ Pickup - Armstrong 306"},{"PickupLocationCode":"R","PickupLocationDescription":"JHMI
92
+ Pickup - PCTB 115-116"},{"PickupLocationCode":"S","PickupLocationDescription":"Welch
93
+ Medical Library"},{"PickupLocationCode":"T","PickupLocationDescription":"Wilmer
94
+ Friedenwald Library"}]}'
47
95
  http_version:
48
- recorded_at: Tue, 21 Oct 2014 17:06:39 GMT
96
+ recorded_at: Thu, 15 Oct 2015 15:14:54 GMT
49
97
  recorded_with: VCR 2.9.3
@@ -2,17 +2,54 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: https://bdtest.relais-host.com/dws/item/available
5
+ uri: https://rc.relais-host.com/portal-service/user/authentication
6
6
  body:
7
7
  encoding: UTF-8
8
- string: ! '{"PartnershipId":"BD","Credentials":{"LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Barcode":"DUMMY_BD_PATRON"},"ExactSearch":[{"Type":"ISBN","Value":"0109836413"}]}'
8
+ string: '{"ApiKey":"DUMMY_BD_API_KEY","PartnershipId":"BD","UserGroup":"patron","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","PatronId":"DUMMY_BD_PATRON"}'
9
9
  headers:
10
10
  User-Agent:
11
- - ruby borrow_direct gem 0.0.1 (HTTPClient 2.5.1) https://github.com/jrochkind/borrow_direct
11
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
12
12
  Accept:
13
- - ! '*/*'
13
+ - "*/*"
14
14
  Date:
15
- - Tue, 21 Oct 2014 17:06:41 GMT
15
+ - Thu, 15 Oct 2015 15:14:54 GMT
16
+ Content-Type:
17
+ - application/json
18
+ Accept-Language:
19
+ - en
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Server:
26
+ - nginx/1.4.1
27
+ Date:
28
+ - Thu, 15 Oct 2015 15:14:55 GMT
29
+ Content-Type:
30
+ - application/json;charset=UTF-8
31
+ Content-Length:
32
+ - '269'
33
+ Connection:
34
+ - keep-alive
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"AuthorizationId":"bZkVlWx8p0Ru_9yhXoDgXJyGEWE","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Iso639_2_LangCode":"ENG","FirstName":"Jonathan","LastName":"Rochkind","AllowLoanAddRequest":true,"AllowCopyAddRequest":false,"AllowSelDelivLoanChange":true,"AllowSelDelivCopyChange":false}'
38
+ http_version:
39
+ recorded_at: Thu, 15 Oct 2015 15:14:55 GMT
40
+ - request:
41
+ method: post
42
+ uri: https://rc.relais-host.com/dws/item/available?aid=bZkVlWx8p0Ru_9yhXoDgXJyGEWE
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"PartnershipId":"BD","ExactSearch":[{"Type":"ISBN","Value":"0109836413"}]}'
46
+ headers:
47
+ User-Agent:
48
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
49
+ Accept:
50
+ - "*/*"
51
+ Date:
52
+ - Thu, 15 Oct 2015 15:14:55 GMT
16
53
  Content-Type:
17
54
  - application/json
18
55
  Accept-Language:
@@ -25,7 +62,7 @@ http_interactions:
25
62
  Server:
26
63
  - nginx/1.4.1
27
64
  Date:
28
- - Tue, 21 Oct 2014 17:06:43 GMT
65
+ - Thu, 15 Oct 2015 15:15:07 GMT
29
66
  Content-Type:
30
67
  - application/json;charset=UTF-8
31
68
  Transfer-Encoding:
@@ -33,8 +70,8 @@ http_interactions:
33
70
  Connection:
34
71
  - keep-alive
35
72
  body:
36
- encoding: US-ASCII
37
- string: ! '{"Error":{"ErrorNumber":"PUBFI002","ErrorMessage":"No result"}}'
73
+ encoding: UTF-8
74
+ string: '{"Problem":{"ErrorCode":"PUBFI002","ErrorMessage":"No result"}}'
38
75
  http_version:
39
- recorded_at: Tue, 21 Oct 2014 17:06:43 GMT
76
+ recorded_at: Thu, 15 Oct 2015 15:15:07 GMT
40
77
  recorded_with: VCR 2.9.3
@@ -2,17 +2,17 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: https://bdtest.relais-host.com/dws/item/available
5
+ uri: https://rc.relais-host.com/portal-service/user/authentication
6
6
  body:
7
7
  encoding: UTF-8
8
- string: ! '{"PartnershipId":"BD","Credentials":{"LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Barcode":"DUMMY_BD_PATRON"},"ExactSearch":[{"Type":"ISBN","Value":"9810743734"}]}'
8
+ string: '{"ApiKey":"DUMMY_BD_API_KEY","PartnershipId":"BD","UserGroup":"patron","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","PatronId":"DUMMY_BD_PATRON"}'
9
9
  headers:
10
10
  User-Agent:
11
- - ruby borrow_direct gem 0.0.1 (HTTPClient 2.5.1) https://github.com/jrochkind/borrow_direct
11
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
12
12
  Accept:
13
- - ! '*/*'
13
+ - "*/*"
14
14
  Date:
15
- - Tue, 21 Oct 2014 17:06:44 GMT
15
+ - Thu, 15 Oct 2015 15:15:07 GMT
16
16
  Content-Type:
17
17
  - application/json
18
18
  Accept-Language:
@@ -25,7 +25,44 @@ http_interactions:
25
25
  Server:
26
26
  - nginx/1.4.1
27
27
  Date:
28
- - Tue, 21 Oct 2014 17:06:46 GMT
28
+ - Thu, 15 Oct 2015 15:15:08 GMT
29
+ Content-Type:
30
+ - application/json;charset=UTF-8
31
+ Content-Length:
32
+ - '269'
33
+ Connection:
34
+ - keep-alive
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"AuthorizationId":"QnBeMkO_LCvWpTs-J_cSkwNekoM","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Iso639_2_LangCode":"ENG","FirstName":"Jonathan","LastName":"Rochkind","AllowLoanAddRequest":true,"AllowCopyAddRequest":false,"AllowSelDelivLoanChange":true,"AllowSelDelivCopyChange":false}'
38
+ http_version:
39
+ recorded_at: Thu, 15 Oct 2015 15:15:08 GMT
40
+ - request:
41
+ method: post
42
+ uri: https://rc.relais-host.com/dws/item/available?aid=QnBeMkO_LCvWpTs-J_cSkwNekoM
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"PartnershipId":"BD","ExactSearch":[{"Type":"ISBN","Value":"9810743734"}]}'
46
+ headers:
47
+ User-Agent:
48
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
49
+ Accept:
50
+ - "*/*"
51
+ Date:
52
+ - Thu, 15 Oct 2015 15:15:08 GMT
53
+ Content-Type:
54
+ - application/json
55
+ Accept-Language:
56
+ - en
57
+ response:
58
+ status:
59
+ code: 200
60
+ message: OK
61
+ headers:
62
+ Server:
63
+ - nginx/1.4.1
64
+ Date:
65
+ - Thu, 15 Oct 2015 15:15:11 GMT
29
66
  Content-Type:
30
67
  - application/json;charset=UTF-8
31
68
  Transfer-Encoding:
@@ -33,17 +70,28 @@ http_interactions:
33
70
  Connection:
34
71
  - keep-alive
35
72
  body:
36
- encoding: US-ASCII
37
- string: ! '{"Item":{"Available":true,"SearchTerm":"isbn=9810743734","AuthorizationId":"9MHVHgH9AbSojfpau0nDRWUjhek","RequestLink":{"ButtonLink":"AddRequest","ButtonLabel":"Request","RequestMessage":"Request
38
- this item"},"PickupLocations":{"PickupLocation":["*Milton S. Eisenhower Library","APL
39
- - EP STUDENTS - Ed Center","APL STAFF - Room 5-17","Arthur Friedheim Library","Columbia
40
- Center","Harbor East","Harrison Medical Library-Bayview","Institute of the
41
- History of Medicine","JH Medical Campus Office (faculty and staff)","JHMI
42
- Pickup - Armstrong 306","JHMI Pickup - BSPH E4643","JHMI Pickup - Hampton
43
- House 9th floor","JHMI Pickup - PCTB 115-116","JHMI Pickup - School of Nursing
44
- 313","JHU Homewood Office (faculty and grad students)","Montgomery Library
45
- Resource Center","SAIS Library","Washington Library Resource Center","Welch
46
- Medical Library","Wilmer Friedenwald Library"]}}}'
73
+ encoding: UTF-8
74
+ string: '{"Available":true,"SearchTerm":"isbn=9810743734","RequestLink":{"ButtonLink":"AddRequest","ButtonLabel":"Request","RequestMessage":"Request
75
+ this item"},"PickupLocation":[{"PickupLocationCode":"E","PickupLocationDescription":"*Milton
76
+ S. Eisenhower Library"},{"PickupLocationCode":"A","PickupLocationDescription":"Arthur
77
+ Friedheim Library"},{"PickupLocationCode":"B","PickupLocationDescription":"Columbia
78
+ Center"},{"PickupLocationCode":"C","PickupLocationDescription":"Harbor East"},{"PickupLocationCode":"D","PickupLocationDescription":"Montgomery
79
+ Library Resource Center"},{"PickupLocationCode":"F","PickupLocationDescription":"JHU
80
+ Homewood Office (faculty and grad students)"},{"PickupLocationCode":"G","PickupLocationDescription":"Washington
81
+ Library Resource Center"},{"PickupLocationCode":"H","PickupLocationDescription":"APL
82
+ - EP STUDENTS - Ed Center"},{"PickupLocationCode":"I","PickupLocationDescription":"APL
83
+ STAFF - Room 5-17"},{"PickupLocationCode":"J","PickupLocationDescription":"SAIS
84
+ Library"},{"PickupLocationCode":"K","PickupLocationDescription":"Harrison
85
+ Medical Library-Bayview"},{"PickupLocationCode":"L","PickupLocationDescription":"Institute
86
+ of the History of Medicine"},{"PickupLocationCode":"M","PickupLocationDescription":"JHMI
87
+ Pickup - Hampton House 9th floor"},{"PickupLocationCode":"N","PickupLocationDescription":"JHMI
88
+ Pickup - BSPH E4643"},{"PickupLocationCode":"O","PickupLocationDescription":"JHMI
89
+ Pickup - School of Nursing 313"},{"PickupLocationCode":"P","PickupLocationDescription":"JH
90
+ Medical Campus Office (faculty and staff)"},{"PickupLocationCode":"Q","PickupLocationDescription":"JHMI
91
+ Pickup - Armstrong 306"},{"PickupLocationCode":"R","PickupLocationDescription":"JHMI
92
+ Pickup - PCTB 115-116"},{"PickupLocationCode":"S","PickupLocationDescription":"Welch
93
+ Medical Library"},{"PickupLocationCode":"T","PickupLocationDescription":"Wilmer
94
+ Friedenwald Library"}]}'
47
95
  http_version:
48
- recorded_at: Tue, 21 Oct 2014 17:06:46 GMT
96
+ recorded_at: Thu, 15 Oct 2015 15:15:11 GMT
49
97
  recorded_with: VCR 2.9.3
@@ -2,17 +2,17 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: https://bdtest.relais-host.com/dws/item/available
5
+ uri: https://rc.relais-host.com/portal-service/user/authentication
6
6
  body:
7
7
  encoding: UTF-8
8
- string: ! '{"PartnershipId":"BD","Credentials":{"LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Barcode":"DUMMY_BD_PATRON"},"ExactSearch":[{"Type":"ISBN","Value":"0745649890"}]}'
8
+ string: '{"ApiKey":"DUMMY_BD_API_KEY","PartnershipId":"BD","UserGroup":"patron","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","PatronId":"DUMMY_BD_PATRON"}'
9
9
  headers:
10
10
  User-Agent:
11
- - ruby borrow_direct gem 0.9.1 (HTTPClient 2.5.3.3) https://github.com/jrochkind/borrow_direct
11
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
12
12
  Accept:
13
- - ! '*/*'
13
+ - "*/*"
14
14
  Date:
15
- - Wed, 17 Dec 2014 16:29:43 GMT
15
+ - Thu, 15 Oct 2015 15:14:39 GMT
16
16
  Content-Type:
17
17
  - application/json
18
18
  Accept-Language:
@@ -25,7 +25,44 @@ http_interactions:
25
25
  Server:
26
26
  - nginx/1.4.1
27
27
  Date:
28
- - Wed, 17 Dec 2014 16:30:04 GMT
28
+ - Thu, 15 Oct 2015 15:14:40 GMT
29
+ Content-Type:
30
+ - application/json;charset=UTF-8
31
+ Content-Length:
32
+ - '269'
33
+ Connection:
34
+ - keep-alive
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"AuthorizationId":"GytI7EcQWCa4IPRZLdVj6FKTVcM","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Iso639_2_LangCode":"ENG","FirstName":"Jonathan","LastName":"Rochkind","AllowLoanAddRequest":true,"AllowCopyAddRequest":false,"AllowSelDelivLoanChange":true,"AllowSelDelivCopyChange":false}'
38
+ http_version:
39
+ recorded_at: Thu, 15 Oct 2015 15:14:40 GMT
40
+ - request:
41
+ method: post
42
+ uri: https://rc.relais-host.com/dws/item/available?aid=GytI7EcQWCa4IPRZLdVj6FKTVcM
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"PartnershipId":"BD","ExactSearch":[{"Type":"ISBN","Value":"0745649890"}]}'
46
+ headers:
47
+ User-Agent:
48
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
49
+ Accept:
50
+ - "*/*"
51
+ Date:
52
+ - Thu, 15 Oct 2015 15:14:40 GMT
53
+ Content-Type:
54
+ - application/json
55
+ Accept-Language:
56
+ - en
57
+ response:
58
+ status:
59
+ code: 200
60
+ message: OK
61
+ headers:
62
+ Server:
63
+ - nginx/1.4.1
64
+ Date:
65
+ - Thu, 15 Oct 2015 15:14:44 GMT
29
66
  Content-Type:
30
67
  - application/json;charset=UTF-8
31
68
  Transfer-Encoding:
@@ -33,17 +70,9 @@ http_interactions:
33
70
  Connection:
34
71
  - keep-alive
35
72
  body:
36
- encoding: US-ASCII
37
- string: ! '{"Item":{"Available":true,"SearchTerm":"isbn=0745649890","AuthorizationId":"OzHkQ_bUILh1Py-UdMtMRcbOnK0","RequestLink":{"RequestMessage":"This
38
- item is available locally"},"PickupLocations":{"PickupLocation":["*Milton
39
- S. Eisenhower Library","APL - EP STUDENTS - Ed Center","APL STAFF - Room 5-17","Arthur
40
- Friedheim Library","Columbia Center","Harbor East","Harrison Medical Library-Bayview","Institute
41
- of the History of Medicine","JH Medical Campus Office (faculty and staff)","JHMI
42
- Pickup - Armstrong 306","JHMI Pickup - BSPH E4643","JHMI Pickup - Hampton
43
- House 9th floor","JHMI Pickup - PCTB 115-116","JHMI Pickup - School of Nursing
44
- 313","JHU Homewood Office (faculty and grad students)","Montgomery Library
45
- Resource Center","SAIS Library","Washington Library Resource Center","Welch
46
- Medical Library","Wilmer Friedenwald Library"]}}}'
73
+ encoding: UTF-8
74
+ string: '{"Available":false,"SearchTerm":"isbn=0745649890","RequestLink":{"ButtonLink":"https://blacklight.library.jhu.edu/catalyst_demo/catalog/bib_4733731","ButtonLabel":"Find
75
+ item","RequestMessage":"This item is available locally."}}'
47
76
  http_version:
48
- recorded_at: Wed, 17 Dec 2014 16:30:04 GMT
77
+ recorded_at: Thu, 15 Oct 2015 15:14:44 GMT
49
78
  recorded_with: VCR 2.9.3
@@ -2,17 +2,54 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: https://bdtest.relais-host.com/dws/item/available
5
+ uri: https://rc.relais-host.com/portal-service/user/authentication
6
6
  body:
7
7
  encoding: UTF-8
8
- string: ! '{"PartnershipId":"BD","Credentials":{"LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Barcode":"DUMMY_BD_PATRON"},"ExactSearch":[{"Type":"ISBN","Value":"0109836413"}]}'
8
+ string: '{"ApiKey":"DUMMY_BD_API_KEY","PartnershipId":"BD","UserGroup":"patron","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","PatronId":"DUMMY_BD_PATRON"}'
9
9
  headers:
10
10
  User-Agent:
11
- - ruby borrow_direct gem 0.0.1 (HTTPClient 2.5.1) https://github.com/jrochkind/borrow_direct
11
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
12
12
  Accept:
13
- - ! '*/*'
13
+ - "*/*"
14
14
  Date:
15
- - Tue, 21 Oct 2014 17:06:43 GMT
15
+ - Thu, 15 Oct 2015 15:15:11 GMT
16
+ Content-Type:
17
+ - application/json
18
+ Accept-Language:
19
+ - en
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Server:
26
+ - nginx/1.4.1
27
+ Date:
28
+ - Thu, 15 Oct 2015 15:15:12 GMT
29
+ Content-Type:
30
+ - application/json;charset=UTF-8
31
+ Content-Length:
32
+ - '269'
33
+ Connection:
34
+ - keep-alive
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"AuthorizationId":"_SFPobGee9qpQw0HuBbZfGzIkkA","LibrarySymbol":"DUMMY_BD_LIBRARY_SYMBOL","Iso639_2_LangCode":"ENG","FirstName":"Jonathan","LastName":"Rochkind","AllowLoanAddRequest":true,"AllowCopyAddRequest":false,"AllowSelDelivLoanChange":true,"AllowSelDelivCopyChange":false}'
38
+ http_version:
39
+ recorded_at: Thu, 15 Oct 2015 15:15:12 GMT
40
+ - request:
41
+ method: post
42
+ uri: https://rc.relais-host.com/dws/item/available?aid=_SFPobGee9qpQw0HuBbZfGzIkkA
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"PartnershipId":"BD","ExactSearch":[{"Type":"ISBN","Value":"0109836413"}]}'
46
+ headers:
47
+ User-Agent:
48
+ - ruby borrow_direct gem 1.2.0 (HTTPClient 2.6.0.1) https://github.com/jrochkind/borrow_direct
49
+ Accept:
50
+ - "*/*"
51
+ Date:
52
+ - Thu, 15 Oct 2015 15:15:12 GMT
16
53
  Content-Type:
17
54
  - application/json
18
55
  Accept-Language:
@@ -25,7 +62,7 @@ http_interactions:
25
62
  Server:
26
63
  - nginx/1.4.1
27
64
  Date:
28
- - Tue, 21 Oct 2014 17:06:44 GMT
65
+ - Thu, 15 Oct 2015 15:15:15 GMT
29
66
  Content-Type:
30
67
  - application/json;charset=UTF-8
31
68
  Transfer-Encoding:
@@ -33,8 +70,8 @@ http_interactions:
33
70
  Connection:
34
71
  - keep-alive
35
72
  body:
36
- encoding: US-ASCII
37
- string: ! '{"Error":{"ErrorNumber":"PUBFI002","ErrorMessage":"No result"}}'
73
+ encoding: UTF-8
74
+ string: '{"Problem":{"ErrorCode":"PUBFI002","ErrorMessage":"No result"}}'
38
75
  http_version:
39
- recorded_at: Tue, 21 Oct 2014 17:06:44 GMT
76
+ recorded_at: Thu, 15 Oct 2015 15:15:15 GMT
40
77
  recorded_with: VCR 2.9.3