umlaut 3.0.0alpha10 → 3.0.0alpha11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. data/app/models/collection.rb +7 -1
  2. data/app/models/referent.rb +11 -77
  3. data/app/models/request.rb +2 -2
  4. data/app/models/service_store.rb +4 -0
  5. data/app/models/service_wave.rb +1 -1
  6. data/lib/section_renderer.rb +9 -5
  7. data/lib/service.rb +0 -62
  8. data/lib/service_adaptors/isi.rb +1 -1
  9. data/lib/service_adaptors/jcr.rb +1 -1
  10. data/lib/umlaut/version.rb +1 -1
  11. data/lib/umlaut_configurable.rb +1 -0
  12. data/test/dummy/config/environments/profile.rb +24 -0
  13. data/test/dummy/config/primo.yml +271 -0
  14. data/test/dummy/config/umlaut_services-TEST.yml +37 -0
  15. data/test/dummy/profile/sfx_collection_prof.rb +22 -0
  16. data/test/dummy/tmp/cache/assets/C2A/410/sprockets%2Fd654b74912b4773a2534616863fb6565 +0 -0
  17. data/test/dummy/tmp/cache/assets/C45/A30/sprockets%2F39494895e462697b478d3d0c79298a26 +0 -0
  18. data/test/dummy/tmp/cache/assets/C5F/340/sprockets%2F99692920160b7a279b86a80415b79db7 +0 -0
  19. data/test/dummy/tmp/cache/assets/C70/4D0/sprockets%2F034ad2036e623081bd352800786dfe80 +0 -0
  20. data/test/dummy/tmp/cache/assets/C80/980/sprockets%2Fc94807409c1523d43e18d25f35d93c41 +0 -0
  21. data/test/dummy/tmp/cache/assets/{D0E/570/sprockets%2Fd4a16e3bdd7c7b9543c446b1b0174688 → CBD/730/sprockets%2F034c1086748b981c36672d5a56e7fed6} +0 -0
  22. data/test/dummy/tmp/cache/assets/CBF/B60/sprockets%2F08ca89671549936265dcb673bf02e36f +0 -0
  23. data/test/dummy/tmp/cache/assets/CC9/9F0/sprockets%2F306166316e2cafd13c15e62b51a2339d +0 -0
  24. data/test/dummy/tmp/cache/assets/CD6/300/sprockets%2F397ec39d3d883789effe506c38760368 +0 -0
  25. data/test/dummy/tmp/cache/assets/CD7/DD0/sprockets%2F4f1fe68aa2042a0970bde9b185530646 +0 -0
  26. data/test/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953 +0 -0
  27. data/test/dummy/tmp/cache/assets/CF7/2B0/sprockets%2F25a7c73655bd3598173b39d9f98bcd46 +0 -0
  28. data/test/dummy/tmp/cache/assets/CFE/080/sprockets%2F37fe9f4255baddbd549a659914929398 +0 -0
  29. data/test/dummy/tmp/cache/assets/{CE1/F50/sprockets%2F6e6b593b107866863500ba0fee5a9e24 → D16/F90/sprockets%2F5fe3c021048c6f9a6086bed7736d87b1} +0 -0
  30. data/test/dummy/tmp/cache/assets/{CDD/7D0/sprockets%2F60687bff4553a7f8c701bb9627a6200a → D24/360/sprockets%2F6987b047a96dc685ba3cf39b31477f6d} +0 -0
  31. data/test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
  32. data/test/dummy/tmp/cache/assets/D37/2B0/sprockets%2F40834fb07d7318c1fddd5003bd9e04f6 +0 -0
  33. data/test/dummy/tmp/cache/assets/D43/0D0/sprockets%2F682843a8d0795a5fbcfeb2f0c81727d0 +0 -0
  34. data/test/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655 +0 -0
  35. data/test/dummy/tmp/cache/assets/D50/A30/sprockets%2F7d8b294ac433db5d056538f8cf7c66b9 +0 -0
  36. data/test/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6 +0 -0
  37. data/test/dummy/tmp/cache/assets/D6C/7D0/sprockets%2F8a05d6981ec0d38c51739bef0b3a9c2b +0 -0
  38. data/test/dummy/tmp/cache/assets/D94/FF0/sprockets%2F3b56a1aa77de0d570c38a4a9d5f4b1d6 +0 -0
  39. data/test/dummy/tmp/cache/assets/D97/6B0/sprockets%2Fb070e8c799d1a4ad5e62e0a1ae3b83e6 +0 -0
  40. data/test/dummy/tmp/cache/assets/DA6/A80/sprockets%2F92e26d8e58d5bcc8b8f6c25d1b05b9c1 +0 -0
  41. data/test/dummy/tmp/cache/assets/{DB7/BD0/sprockets%2Ff2c59778ab79dcfd3792f46f2ce82f2a → DC0/D20/sprockets%2F1ccf7405cd252dcec4bf23af82e2563a} +0 -0
  42. data/test/dummy/tmp/cache/assets/{D5C/B00/sprockets%2F2b7ac06cc680d7480c06b917bac5a6b0 → DD2/D80/sprockets%2Fc66d103807d0f971fbbcf9aa8b8b27ee} +0 -0
  43. data/test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994 +0 -0
  44. data/test/dummy/tmp/cache/assets/DE8/790/sprockets%2Fd1333bde2b9aafcc712d11dd09ab35d8 +0 -0
  45. data/test/dummy/tmp/cache/assets/DF5/5E0/sprockets%2F8e64a37c73cdc0b37a4ccfcb42ab45d8 +0 -0
  46. data/test/dummy/tmp/cache/assets/DF7/960/sprockets%2F99ac6db10b44a64fbba4ee847b35ba8b +0 -0
  47. data/test/dummy/tmp/cache/assets/{C84/A00/sprockets%2F3ba04c88513936081d59d8771f6804aa → DFC/040/sprockets%2F15ea81cf915c0cb1dfc9cc04c9fef364} +0 -0
  48. data/test/dummy/tmp/cache/assets/DFD/300/sprockets%2Fabac9489cf7f1db8ef00d72a1571ee1e +0 -0
  49. data/test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
  50. data/test/dummy/tmp/cache/assets/E38/FE0/sprockets%2Fe1fc875efa817cbb94a5d8de25ea4e6b +0 -0
  51. data/test/dummy/tmp/cache/assets/E5F/960/sprockets%2Fdc007b6cad5c7ef08e33ec28cfff0ef6 +0 -0
  52. data/test/dummy/tmp/performance/BenchmarkerTest#test_puts_foo_gc_runs.csv +2 -0
  53. data/test/dummy/tmp/performance/BenchmarkerTest#test_puts_foo_gc_time.csv +2 -0
  54. data/test/dummy/tmp/performance/BenchmarkerTest#test_puts_foo_memory.csv +2 -0
  55. data/test/dummy/tmp/performance/BenchmarkerTest#test_puts_foo_objects.csv +2 -0
  56. data/test/dummy/tmp/performance/BenchmarkerTest#test_puts_foo_wall_time.csv +2 -0
  57. data/test/dummy/tmp/performance/ProfilerTest#test_puts_foo_process_time_flat.txt +11 -0
  58. data/test/dummy/tmp/performance/ProfilerTest#test_puts_foo_process_time_graph.html +303 -0
  59. data/test/dummy/tmp/performance/ProfilerTest#test_puts_foo_process_time_stack.html +546 -0
  60. data/test/dummy/tmp/performance/ProfilerTest#test_puts_foo_process_time_tree.txt +38 -0
  61. data/test/dummy/tmp/performance/empty.png +0 -0
  62. data/test/dummy/tmp/performance/minus.png +0 -0
  63. data/test/dummy/tmp/performance/plus.png +0 -0
  64. data/test/test_helper.rb +36 -0
  65. data/test/unit/aleph_patron_test.rb +40 -35
  66. data/test/unit/aleph_record_benchmarks.rb +28 -24
  67. data/test/unit/aleph_record_test.rb +31 -26
  68. data/test/unit/collection_test.rb +17 -18
  69. data/test/unit/google_book_search_test.rb +18 -44
  70. data/test/unit/primo_searcher_test.rb +325 -321
  71. data/test/unit/primo_service_test.rb +924 -919
  72. data/test/unit/primo_ws_test.rb +141 -138
  73. data/test/unit/service_test.rb +2 -16
  74. metadata +93 -100
  75. data/test/dummy/tmp/cache/assets/C73/920/sprockets%2Fd371318f22900492fd180f17c5e2a504 +0 -0
  76. data/test/dummy/tmp/cache/assets/C8F/780/sprockets%2Fe47e28558116fb5f8038754e60d1961d +0 -0
  77. data/test/dummy/tmp/cache/assets/CAA/EB0/sprockets%2F1d179210e8b76f1ea63c802688a015e4 +0 -9271
  78. data/test/dummy/tmp/cache/assets/CB2/DA0/sprockets%2Fa1808990b72376256db2ae3818c0e9b5 +0 -0
  79. data/test/dummy/tmp/cache/assets/CBB/9C0/sprockets%2F706f28923fb754cad04b9107c89986a1 +0 -0
  80. data/test/dummy/tmp/cache/assets/CDC/680/sprockets%2F2b68ef632d12610f3c9563168bfa7c05 +0 -0
  81. data/test/dummy/tmp/cache/assets/CEA/2A0/sprockets%2F9c8607157b998108ce08f4aca39f810a +0 -0
  82. data/test/dummy/tmp/cache/assets/CF5/9B0/sprockets%2F7933bfe880731b396791f1682ce3f7fa +0 -0
  83. data/test/dummy/tmp/cache/assets/CFB/2F0/sprockets%2F62d51f0aa5cac4b1cf7091823772a604 +0 -0
  84. data/test/dummy/tmp/cache/assets/D22/060/sprockets%2F9aec77b768e91a802d284271c58e2f7e +0 -0
  85. data/test/dummy/tmp/cache/assets/D33/6D0/sprockets%2F500129c57f1146e556ec3aacd6cd38c1 +0 -0
  86. data/test/dummy/tmp/cache/assets/D33/FD0/sprockets%2F2ba0b4e6334a77b923e5f770381bb2bf +0 -0
  87. data/test/dummy/tmp/cache/assets/D4C/0A0/sprockets%2F7810d837eec3ac57ad78756af83a6a55 +0 -0
  88. data/test/dummy/tmp/cache/assets/D4C/E30/sprockets%2F631abf89746799b7a5b2b3b4f6294bcd +0 -0
  89. data/test/dummy/tmp/cache/assets/D54/ED0/sprockets%2F71c9fa01091d432b131da3bb73faf3d4 +0 -873
  90. data/test/dummy/tmp/cache/assets/D5D/AD0/sprockets%2Fbdb053d9a6a967788f09fbc555d69f58 +0 -0
  91. data/test/dummy/tmp/cache/assets/D66/890/sprockets%2F06287a78ed20d8214197eab03bfca5dd +0 -0
  92. data/test/dummy/tmp/cache/assets/D6B/2A0/sprockets%2F81f17ab0ed20f4a8d9355f7a1d872eb2 +0 -0
  93. data/test/dummy/tmp/cache/assets/D70/080/sprockets%2F24d3ce40ae5cc827a9183b1fb837e84e +0 -0
  94. data/test/dummy/tmp/cache/assets/D71/6B0/sprockets%2Fde558b71b494cf09b1bf055c8dff0353 +0 -0
  95. data/test/dummy/tmp/cache/assets/D72/610/sprockets%2Fa8c708eeb30ef93de34d755d4f45d023 +0 -0
  96. data/test/dummy/tmp/cache/assets/D74/4C0/sprockets%2F64fdf30f75592d6e45fcfc45a48d20a2 +0 -0
  97. data/test/dummy/tmp/cache/assets/D76/AD0/sprockets%2Fe2158cde93188cf5ab6457bc6d6602ec +0 -0
  98. data/test/dummy/tmp/cache/assets/D7A/E40/sprockets%2F9622ffcc499a57627cd1bb18fe31b8e4 +0 -11772
  99. data/test/dummy/tmp/cache/assets/D84/210/sprockets%2Fabd0103ccec2b428ac62c94e4c40b384 +0 -0
  100. data/test/dummy/tmp/cache/assets/D9B/770/sprockets%2F8aacf02eb7dbb0949704b28f27b87e0b +0 -0
  101. data/test/dummy/tmp/cache/assets/DF7/F30/sprockets%2F7bc16c4109b17fabe29f8ddbbf732d1c +0 -0
  102. data/test/dummy/tmp/cache/assets/E03/570/sprockets%2F493bdc0ac14cd4f57fdfe4253f992bde +0 -0
  103. data/test/dummy/tmp/cache/assets/E09/850/sprockets%2F4bf497a38ecfef660b2f0ebb852d5e9c +0 -0
  104. data/test/dummy/tmp/cache/assets/E0B/4B0/sprockets%2F7988df51a61c81ce6ede4a2d4c8cce4f +0 -377
  105. data/test/dummy/tmp/cache/assets/E6F/A00/sprockets%2Fd32bcea45ea04a6aaee95b3aa840cbab +0 -0
@@ -1,942 +1,947 @@
1
1
  require 'test_helper'
2
2
  class PrimoServiceTest < ActiveSupport::TestCase
3
- fixtures :requests, :referents, :referent_values, :sfx_urls
4
- def setup
5
- @primo_definition = YAML.load( %{
6
- type: PrimoService
7
- priority: 2 # After SFX, to get SFX metadata enhancement
8
- status: active
9
- base_url: http://bobcat.library.nyu.edu
10
- vid: NYU
11
- institution: NYU
12
- holding_search_institution: NYU
13
- holding_search_text: Search for this title in BobCat.
14
- suppress_holdings: [ !ruby/regexp '/\$\$LBWEB/', !ruby/regexp '/\$\$LNWEB/', !ruby/regexp '/\$\$LTWEB/', !ruby/regexp '/\$\$LWEB/', !ruby/regexp '/\$\$1Restricted Internet Resources/' ]
15
- ez_proxy: !ruby/regexp '/https\:\/\/ezproxy\.library\.nyu\.edu\/login\?url=/'
16
- service_types:
17
- - primo_source
18
- - holding_search
19
- - fulltext
20
- - table_of_contents
21
- - referent_enhance
22
- - cover_image
23
- })
24
-
25
- @base_url = @primo_definition["base_url"]
26
- @vid = @primo_definition["vid"]
27
- @institution = @primo_definition["institution"]
28
-
29
- @primo_default = ServiceStore.instantiate_service!(
30
- YAML.load(%{
31
- type: PrimoService
32
- service_id: NYUPrimo
33
- priority: 2 # After SFX, to get SFX metadata enhancement
34
- status: active
35
- base_url: http://bobcat.library.nyu.edu
36
- vid: NYU
37
- institution: NYU
38
- holding_search_institution: NYU
39
- holding_search_text: Search for this title in BobCat.
40
- suppress_holdings: [ !ruby/regexp '/\$\$LBWEB/', !ruby/regexp '/\$\$LNWEB/', !ruby/regexp '/\$\$LTWEB/', !ruby/regexp '/\$\$LWEB/', !ruby/regexp '/\$\$1Restricted Internet Resources/' ]
41
- ez_proxy: !ruby/regexp '/https\:\/\/ezproxy\.library\.nyu\.edu\/login\?url=/'
42
- service_types:
43
- - holding
44
- - holding_search
45
- - fulltext
46
- - table_of_contents
47
- - referent_enhance
48
- - cover_image
49
- }), nil)
3
+
4
+ nyu_only_tests(self.name) do
50
5
 
51
- @primo_tns = ServiceStore.instantiate_service!(
52
- YAML.load(%{
53
- type: PrimoService
54
- priority: 2 # After SFX, to get SFX metadata enhancement
55
- status: active
56
- base_url: http://bobcat.library.nyu.edu
57
- vid: NS
58
- institution: NS
59
- holding_search_institution: NS
60
- holding_search_text: Search for this title in BobCat.
61
- suppress_holdings: [ !ruby/regexp '/\$\$LBWEB/', !ruby/regexp '/\$\$LNWEB/', !ruby/regexp '/\$\$LTWEB/', !ruby/regexp '/\$\$LWEB/', !ruby/regexp '/\$\$1Restricted Internet Resources/' ]
62
- ez_proxy: !ruby/regexp '/https\:\/\/ezproxy\.library\.nyu\.edu\/login\?url=/'
63
- primo_config: tns_primo.yml
64
- service_types:
65
- - primo_source
66
- - holding_search
67
- - fulltext
68
- - table_of_contents
69
- - referent_enhance
70
- - cover_image
6
+ fixtures :requests, :referents, :referent_values, :sfx_urls
7
+ def setup
8
+ @primo_definition = YAML.load( %{
9
+ type: PrimoService
10
+ priority: 2 # After SFX, to get SFX metadata enhancement
11
+ status: active
12
+ base_url: http://bobcat.library.nyu.edu
13
+ vid: NYU
14
+ institution: NYU
15
+ holding_search_institution: NYU
16
+ holding_search_text: Search for this title in BobCat.
17
+ suppress_holdings: [ !ruby/regexp '/\$\$LBWEB/', !ruby/regexp '/\$\$LNWEB/', !ruby/regexp '/\$\$LTWEB/', !ruby/regexp '/\$\$LWEB/', !ruby/regexp '/\$\$1Restricted Internet Resources/' ]
18
+ ez_proxy: !ruby/regexp '/https\:\/\/ezproxy\.library\.nyu\.edu\/login\?url=/'
19
+ service_types:
20
+ - primo_source
21
+ - holding_search
22
+ - fulltext
23
+ - table_of_contents
24
+ - referent_enhance
25
+ - cover_image
26
+ })
27
+
28
+ @base_url = @primo_definition["base_url"]
29
+ @vid = @primo_definition["vid"]
30
+ @institution = @primo_definition["institution"]
31
+
32
+ @primo_default = ServiceStore.instantiate_service!(
33
+ YAML.load(%{
34
+ type: PrimoService
35
+ service_id: NYUPrimo
36
+ priority: 2 # After SFX, to get SFX metadata enhancement
37
+ status: active
38
+ base_url: http://bobcat.library.nyu.edu
39
+ vid: NYU
40
+ institution: NYU
41
+ holding_search_institution: NYU
42
+ holding_search_text: Search for this title in BobCat.
43
+ suppress_holdings: [ !ruby/regexp '/\$\$LBWEB/', !ruby/regexp '/\$\$LNWEB/', !ruby/regexp '/\$\$LTWEB/', !ruby/regexp '/\$\$LWEB/', !ruby/regexp '/\$\$1Restricted Internet Resources/' ]
44
+ ez_proxy: !ruby/regexp '/https\:\/\/ezproxy\.library\.nyu\.edu\/login\?url=/'
45
+ service_types:
46
+ - holding
47
+ - holding_search
48
+ - fulltext
49
+ - table_of_contents
50
+ - referent_enhance
51
+ - cover_image
71
52
  }), nil)
53
+
54
+ @primo_tns = ServiceStore.instantiate_service!(
55
+ YAML.load(%{
56
+ type: PrimoService
57
+ priority: 2 # After SFX, to get SFX metadata enhancement
58
+ status: active
59
+ base_url: http://bobcat.library.nyu.edu
60
+ vid: NS
61
+ institution: NS
62
+ holding_search_institution: NS
63
+ holding_search_text: Search for this title in BobCat.
64
+ suppress_holdings: [ !ruby/regexp '/\$\$LBWEB/', !ruby/regexp '/\$\$LNWEB/', !ruby/regexp '/\$\$LTWEB/', !ruby/regexp '/\$\$LWEB/', !ruby/regexp '/\$\$1Restricted Internet Resources/' ]
65
+ ez_proxy: !ruby/regexp '/https\:\/\/ezproxy\.library\.nyu\.edu\/login\?url=/'
66
+ primo_config: tns_primo.yml
67
+ service_types:
68
+ - primo_source
69
+ - holding_search
70
+ - fulltext
71
+ - table_of_contents
72
+ - referent_enhance
73
+ - cover_image
74
+ }), nil)
75
+
76
+
77
+
78
+ @holding_search_institution =
79
+ @primo_minimum = PrimoService.new({
80
+ "priority"=>1, "service_id" => "Primo",
81
+ "base_url" => @base_url, "vid" => @vid, "institution" => @institution,
82
+ "holding_search_institution" => @primo_definition["holding_search_institution"] })
83
+ @primo_old_minimum = PrimoService.new({
84
+ "priority"=>1, "service_id" => "Primo",
85
+ "base_path" => @base_url, "base_view_id" => @vid, "institution" => @institution })
86
+ @primo_minimum_no_config = PrimoService.new({
87
+ "priority"=>1, "service_id" => "Primo",
88
+ "base_url" => @base_url, "vid" => @vid, "institution" => @institution,
89
+ "holding_search_institution" => @primo_definition["holding_search_institution"],
90
+ "primo_config" => "missing_config.yml" })
91
+ end
72
92
 
93
+ def test_primo_service_benchmarks
94
+ request = requests(:primo_id_request)
95
+ Benchmark.bmbm do |results|
96
+ results.report("PrimoService Minimum Config:") {
97
+ (1..10).each {
98
+ @primo_minimum.handle(request)
99
+ }
100
+ }
101
+ results.report("PrimoService Default Config:") {
102
+ (1..10).each {
103
+ @primo_default.handle(request)
104
+ }
105
+ }
106
+ end
107
+ end
108
+ #
109
+ # def test_to_primo_source_benchmarks
110
+ # request = requests(:primo_id_request)
111
+ # @primo_default.handle(request)
112
+ # service_type = request.get_service_type('primo_source', {}).first
113
+ # Benchmark.bmbm do |results|
114
+ # results.report("PrimoService :to_primo_source via view data - NYUAleph:") {
115
+ # (1..10).each {
116
+ # service_type.view_data
117
+ # }
118
+ # }
119
+ # service_response = service_type.service_response
120
+ # results.report("PrimoService :to_primo_source - NYUAleph:") {
121
+ # (1..10).each {
122
+ # @primo_default.to_primo_source(service_response)
123
+ # }
124
+ # }
125
+ # end
126
+ # end
127
+ #
128
+ # def test_primo_source_benchmarks
129
+ # request = requests(:primo_id_request)
130
+ # @primo_default.handle(request)
131
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
132
+ # Benchmark.bmbm do |results|
133
+ # results.report("PrimoSource - NYUAleph:") {
134
+ # (1..10).each {
135
+ # primo_source.handle(request)
136
+ # }
137
+ # }
138
+ # end
139
+ # end
140
+ #
141
+ # def test_source_expand_benchmarks
142
+ # request = requests(:primo_id_request)
143
+ # @primo_default.handle(request)
144
+ # primo_source = request.get_service_type('primo_source', {}).first.view_data
145
+ # Benchmark.bmbm do |results|
146
+ # results.report("PrimoSource :expand - NYUAleph:") {
147
+ # (1..10).each {
148
+ # primo_source.expand
149
+ # }
150
+ # }
151
+ # end
152
+ # end
73
153
 
154
+ def test_primo_service_minimum
155
+ request = requests(:primo_id_request)
156
+ @primo_minimum.handle(request)
157
+ request.referent.referent_values.reset
158
+ request.dispatched_services.reset
159
+ request.service_responses.reset
160
+ test_data = {
161
+ "aulast" => "Greene",
162
+ "aufirst" => "Graham,",
163
+ "au" => "Greene, Graham, 1904-1991",
164
+ "title" => "Travels with my aunt",
165
+ "btitle" => "Travels with my aunt",
166
+ "place" => "New York",
167
+ "pub" => "Penguin Books",
168
+ "oclcnum" => "56781200",
169
+ "lccn" => "2004559272"
170
+ }
171
+ test_data.each { |key, value|
172
+ assert_equal(
173
+ value,
174
+ request.referent.metadata[key],
175
+ "#{key} different than expected.")
176
+ }
177
+ holdings = request.get_service_type('holding')
178
+ assert_equal(
179
+ 1, holdings.length)
180
+ test_data = {
181
+ :record_id => "nyu_aleph000062856",
182
+ :source_id => "nyu_aleph",
183
+ :original_source_id => "NYU01",
184
+ :source_record_id => "000062856",
185
+ :institution_code => "NYU",
186
+ :institution => "NYU",
187
+ :library_code => "BOBST",
188
+ :library => "NYU Bobst",
189
+ :status_code => "check_holdings",
190
+ :status => "Check Availability",
191
+ :id_one => "Main Collection",
192
+ :id_two => "(PR6013.R44 T7 2004 )",
193
+ :collection => "Main Collection",
194
+ :call_number => "(PR6013.R44 T7 2004 )",
195
+ :origin => nil,
196
+ :display_type => "book",
197
+ :coverage => [],
198
+ :notes => "",
199
+ :url => "#{@base_url}/primo_library/libweb/action/dlDisplay.do?docId=nyu_aleph000062856&institution=NYU&vid=#{@vid}",
200
+ :request_url => nil,
201
+ :match_reliability => ServiceResponse::MatchExact,
202
+ :request_link_supports_ajax_call => false }
203
+ test_data.each { |key, value|
204
+ assert_equal(
205
+ value,
206
+ holdings.first.view_data[key],
207
+ "#{key} different than expected.")
208
+ }
209
+ end
74
210
 
75
- @holding_search_institution =
76
- @primo_minimum = PrimoService.new({
77
- "priority"=>1, "service_id" => "Primo",
78
- "base_url" => @base_url, "vid" => @vid, "institution" => @institution,
79
- "holding_search_institution" => @primo_definition["holding_search_institution"] })
80
- @primo_old_minimum = PrimoService.new({
81
- "priority"=>1, "service_id" => "Primo",
82
- "base_path" => @base_url, "base_view_id" => @vid, "institution" => @institution })
83
- @primo_minimum_no_config = PrimoService.new({
84
- "priority"=>1, "service_id" => "Primo",
85
- "base_url" => @base_url, "vid" => @vid, "institution" => @institution,
86
- "holding_search_institution" => @primo_definition["holding_search_institution"],
87
- "primo_config" => "missing_config.yml" })
88
- end
89
-
90
- def test_primo_service_benchmarks
91
- request = requests(:primo_id_request)
92
- Benchmark.bmbm do |results|
93
- results.report("PrimoService Minimum Config:") {
94
- (1..10).each {
95
- @primo_minimum.handle(request)
96
- }
211
+ def test_primo_service_minimum_no_config
212
+ request = requests(:primo_id_request)
213
+ @primo_minimum_no_config.handle(request)
214
+ request.referent.referent_values.reset
215
+ request.dispatched_services.reset
216
+ request.service_responses.reset
217
+ test_data = {
218
+ "aulast" => "Greene",
219
+ "aufirst" => "Graham,",
220
+ "au" => "Greene, Graham, 1904-1991",
221
+ "title" => "Travels with my aunt",
222
+ "btitle" => "Travels with my aunt",
223
+ "place" => "New York",
224
+ "pub" => "Penguin Books",
225
+ "oclcnum" => "56781200",
226
+ "lccn" => "2004559272"
97
227
  }
98
- results.report("PrimoService Default Config:") {
99
- (1..10).each {
100
- @primo_default.handle(request)
101
- }
228
+ test_data.each { |key, value|
229
+ assert_equal(
230
+ value,
231
+ request.referent.metadata[key],
232
+ "#{key} different than expected.")
233
+ }
234
+ holdings = request.get_service_type('holding')
235
+ assert_equal(
236
+ 1, holdings.length)
237
+ test_data = {
238
+ :record_id => "nyu_aleph000062856",
239
+ :source_id => "nyu_aleph",
240
+ :original_source_id => "NYU01",
241
+ :source_record_id => "000062856",
242
+ :institution_code => "NYU",
243
+ :institution => "NYU",
244
+ :library_code => "BOBST",
245
+ :library => "BOBST",
246
+ :status_code => "check_holdings",
247
+ :status => "check_holdings",
248
+ :id_one => "Main Collection",
249
+ :id_two => "(PR6013.R44 T7 2004 )",
250
+ :collection => "Main Collection",
251
+ :call_number => "(PR6013.R44 T7 2004 )",
252
+ :origin => nil,
253
+ :display_type => "book",
254
+ :coverage => [],
255
+ :notes => "",
256
+ :url => "#{@base_url}/primo_library/libweb/action/dlDisplay.do?docId=nyu_aleph000062856&institution=NYU&vid=#{@vid}",
257
+ :request_url => nil,
258
+ :match_reliability => ServiceResponse::MatchExact,
259
+ :request_link_supports_ajax_call => false }
260
+ test_data.each { |key, value|
261
+ assert_equal(
262
+ value,
263
+ holdings.first.view_data[key],
264
+ "#{key} different than expected.")
102
265
  }
103
266
  end
104
- end
105
- #
106
- # def test_to_primo_source_benchmarks
107
- # request = requests(:primo_id_request)
108
- # @primo_default.handle(request)
109
- # service_type = request.get_service_type('primo_source', {}).first
110
- # Benchmark.bmbm do |results|
111
- # results.report("PrimoService :to_primo_source via view data - NYUAleph:") {
112
- # (1..10).each {
113
- # service_type.view_data
114
- # }
267
+
268
+ def test_primo_service_legacy_settings_minimum
269
+ request = requests(:primo_id_request)
270
+ @primo_old_minimum.handle(request)
271
+ request.referent.referent_values.reset
272
+ request.dispatched_services.reset
273
+ request.service_responses.reset
274
+ test_data = {
275
+ "aulast" => "Greene",
276
+ "aufirst" => "Graham,",
277
+ "au" => "Greene, Graham, 1904-1991",
278
+ "title" => "Travels with my aunt",
279
+ "btitle" => "Travels with my aunt",
280
+ "place" => "New York",
281
+ "pub" => "Penguin Books",
282
+ "oclcnum" => "56781200",
283
+ "lccn" => "2004559272"
284
+ }
285
+ test_data.each { |key, value|
286
+ assert_equal(
287
+ value,
288
+ request.referent.metadata[key],
289
+ "#{key} different than expected.")
290
+ }
291
+ holdings = request.get_service_type('holding')
292
+ assert_equal(
293
+ 1, holdings.length)
294
+ test_data = {
295
+ :record_id => "nyu_aleph000062856",
296
+ :source_id => "nyu_aleph",
297
+ :original_source_id => "NYU01",
298
+ :source_record_id => "000062856",
299
+ :institution_code => "NYU",
300
+ :institution => "NYU",
301
+ :library_code => "BOBST",
302
+ :library => "NYU Bobst",
303
+ :status_code => "check_holdings",
304
+ :status => "Check Availability",
305
+ :id_one => "Main Collection",
306
+ :id_two => "(PR6013.R44 T7 2004 )",
307
+ :collection => "Main Collection",
308
+ :call_number => "(PR6013.R44 T7 2004 )",
309
+ :origin => nil,
310
+ :display_type => "book",
311
+ :coverage => [],
312
+ :notes => "",
313
+ :url => "#{@base_url}/primo_library/libweb/action/dlDisplay.do?docId=nyu_aleph000062856&institution=NYU&vid=#{@vid}",
314
+ :request_url => nil,
315
+ :match_reliability => ServiceResponse::MatchExact,
316
+ :request_link_supports_ajax_call => false }
317
+ test_data.each { |key, value|
318
+ assert_equal(
319
+ value,
320
+ holdings.first.view_data[key],
321
+ "#{key} different than expected.")
322
+ }
323
+ end
324
+
325
+ # def test_available_nyu_aleph
326
+ # # Available
327
+ # request = requests(:primo_id_request)
328
+ # @primo_default.handle(request)
329
+ # request.dispatched_services.reset
330
+ # request.service_types.reset
331
+ # primo_sources = request.get_service_type('primo_source')
332
+ # assert_equal(
333
+ # 1, primo_sources.length)
334
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
335
+ # primo_source.handle(request)
336
+ # request.dispatched_services.reset
337
+ # request.service_types.reset
338
+ # holdings = request.get_service_type('holding')
339
+ # assert_equal(
340
+ # 1, holdings.length)
341
+ # test_data = {
342
+ # :record_id => "nyu_aleph000062856",
343
+ # :source_id => "nyu_aleph",
344
+ # :original_source_id => "NYU01",
345
+ # :source_record_id => "000062856",
346
+ # :institution_code => "NYU",
347
+ # :institution => "NYU",
348
+ # :library_code => "BOBST",
349
+ # :library => "NYU Bobst",
350
+ # :status_code => "available",
351
+ # :status => "Available",
352
+ # :id_one => "Main Collection",
353
+ # :id_two => "(PR6013.R44 T7 2004)",
354
+ # :collection => "Main Collection",
355
+ # :call_number => "(PR6013.R44 T7 2004)",
356
+ # :origin => nil,
357
+ # :display_type => "book",
358
+ # :coverage => [],
359
+ # :notes => "",
360
+ # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000062856&sub_library=BOBST",
361
+ # :request_url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000062856&sub_library=BOBST",
362
+ # :match_reliability => ServiceResponse::MatchExact,
363
+ # :request_link_supports_ajax_call => true }
364
+ # test_data.each { |key, value|
365
+ # assert_equal(
366
+ # value,
367
+ # holdings.first.view_data[key],
368
+ # "#{key} different than expected.")
115
369
  # }
116
- # service_response = service_type.service_response
117
- # results.report("PrimoService :to_primo_source - NYUAleph:") {
118
- # (1..10).each {
119
- # @primo_default.to_primo_source(service_response)
120
- # }
370
+ # source_data = {
371
+ # :aleph_doc_library => "NYU01",
372
+ # :aleph_sub_library => "NYU Bobst",
373
+ # :aleph_sub_library_code => "BOBST",
374
+ # :aleph_collection => "Main Collection",
375
+ # :aleph_call_number => "(PR6013.R44 T7 2004)",
376
+ # :aleph_doc_number => "000062856",
377
+ # :aleph_url => "http://alephstage.library.nyu.edu",
378
+ # :illiad_url => "http://illiaddev.library.nyu.edu",
379
+ # :aleph_sub_library_code => "BOBST",
380
+ # :aleph_item_id => "NYU50000062856000010",
381
+ # :aleph_item_adm_library => "NYU50",
382
+ # :aleph_item_sub_library_code => "BOBST",
383
+ # :aleph_item_collection_code => "MAIN",
384
+ # :aleph_item_doc_number => "000062856",
385
+ # :aleph_item_sequence_number => "1.0",
386
+ # :aleph_item_barcode => "31142041146104",
387
+ # :aleph_item_status_code => "01",
388
+ # :aleph_item_process_status_code => nil,
389
+ # :aleph_item_circulation_status => "On Shelf",
390
+ # :aleph_item_location => "PR6013.R44&nbsp;T7 2004",
391
+ # :aleph_item_description => nil,
392
+ # :aleph_item_hol_doc_number => "002992203"
393
+ # }
394
+ # source_data.each { |key, value|
395
+ # assert_equal(
396
+ # value,
397
+ # holdings.first.view_data[:source_data][key],
398
+ # "#{key} different than expected.")
121
399
  # }
122
400
  # end
401
+ #
402
+ # def test_available_tns_aleph
403
+ # # Available
404
+ # request = requests(:primo_id_request)
405
+ # @primo_tns.handle(request)
406
+ # request.dispatched_services.reset
407
+ # request.service_types.reset
408
+ # primo_sources = request.get_service_type('primo_source')
409
+ # assert_equal(
410
+ # 1, primo_sources.length)
411
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
412
+ # primo_source.handle(request)
413
+ # request.dispatched_services.reset
414
+ # request.service_types.reset
415
+ # holdings = request.get_service_type('holding')
416
+ # assert_equal(
417
+ # 1, holdings.length)
418
+ # test_data = {
419
+ # :record_id => "nyu_aleph000062856",
420
+ # :source_id => "nyu_aleph",
421
+ # :original_source_id => "NYU01",
422
+ # :source_record_id => "000062856",
423
+ # :institution_code => "NYU",
424
+ # :institution => "NYU",
425
+ # :library_code => "BOBST",
426
+ # :library => "NYU Bobst",
427
+ # :status_code => "available",
428
+ # :status => "Available",
429
+ # :id_one => "Main Collection",
430
+ # :id_two => "(PR6013.R44 T7 2004)",
431
+ # :collection => "Main Collection",
432
+ # :call_number => "(PR6013.R44 T7 2004)",
433
+ # :origin => nil,
434
+ # :display_type => "book",
435
+ # :coverage => [],
436
+ # :notes => "",
437
+ # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000062856&sub_library=BOBST",
438
+ # :request_url => nil,
439
+ # :match_reliability => ServiceResponse::MatchExact,
440
+ # :request_link_supports_ajax_call => true }
441
+ # test_data.each { |key, value|
442
+ # assert_equal(
443
+ # value,
444
+ # holdings.first.view_data[key],
445
+ # "#{key} different than expected.")
446
+ # }
447
+ # source_data = {
448
+ # :aleph_doc_library => "NYU01",
449
+ # :aleph_sub_library => "NYU Bobst",
450
+ # :aleph_sub_library_code => "BOBST",
451
+ # :aleph_collection => "Main Collection",
452
+ # :aleph_call_number => "(PR6013.R44 T7 2004)",
453
+ # :aleph_doc_number => "000062856",
454
+ # :aleph_url => "http://alephstage.library.nyu.edu",
455
+ # :illiad_url => "http://illiaddev.library.nyu.edu",
456
+ # :aleph_sub_library_code => "BOBST",
457
+ # :aleph_item_id => "NYU50000062856000010",
458
+ # :aleph_item_adm_library => "NYU50",
459
+ # :aleph_item_sub_library_code => "BOBST",
460
+ # :aleph_item_collection_code => "MAIN",
461
+ # :aleph_item_doc_number => "000062856",
462
+ # :aleph_item_sequence_number => "1.0",
463
+ # :aleph_item_barcode => "31142041146104",
464
+ # :aleph_item_status_code => "01",
465
+ # :aleph_item_process_status_code => nil,
466
+ # :aleph_item_circulation_status => "On Shelf",
467
+ # :aleph_item_location => "PR6013.R44&nbsp;T7 2004",
468
+ # :aleph_item_description => nil,
469
+ # :aleph_item_hol_doc_number => "002992203"
470
+ # }
471
+ # source_data.each { |key, value|
472
+ # assert_equal(
473
+ # value,
474
+ # holdings.first.view_data[:source_data][key],
475
+ # "#{key} different than expected.")
476
+ # }
123
477
  # end
124
478
  #
125
- # def test_primo_source_benchmarks
126
- # request = requests(:primo_id_request)
127
- # @primo_default.handle(request)
128
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
129
- # Benchmark.bmbm do |results|
130
- # results.report("PrimoSource - NYUAleph:") {
131
- # (1..10).each {
132
- # primo_source.handle(request)
133
- # }
479
+ # def test_checked_out_nyu_aleph
480
+ # request = requests(:primo_checked_out_request)
481
+ # @primo_default.handle(request)
482
+ # request.referent.referent_values.reset
483
+ # request.dispatched_services.reset
484
+ # request.service_types.reset
485
+ # primo_sources = request.get_service_type('primo_source')
486
+ # assert_equal(
487
+ # 1, primo_sources.length)
488
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
489
+ # primo_source.handle(request)
490
+ # request.dispatched_services.reset
491
+ # request.service_types.reset
492
+ # holdings = request.get_service_type('holding')
493
+ # assert_equal(
494
+ # 1, holdings.length)
495
+ # test_data = {
496
+ # :record_id => "nyu_aleph000742457",
497
+ # :source_id => "nyu_aleph",
498
+ # :original_source_id => "NYU01",
499
+ # :source_record_id => "000742457",
500
+ # :institution_code => "NYU",
501
+ # :institution => "NYU",
502
+ # :library_code => "BOBST",
503
+ # :library => "NYU Bobst",
504
+ # :status_code => "checked_out",
505
+ # :status => "Due: 08/25/11",
506
+ # :id_one => "Main Collection",
507
+ # :id_two => "(DR557 .J86 2001)",
508
+ # :collection => "Main Collection",
509
+ # :call_number => "(DR557 .J86 2001)",
510
+ # :origin => nil,
511
+ # :display_type => "book",
512
+ # :coverage => [],
513
+ # :notes => "",
514
+ # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000742457&sub_library=BOBST",
515
+ # :request_url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000742457&sub_library=BOBST",
516
+ # :match_reliability => ServiceResponse::MatchExact,
517
+ # :request_link_supports_ajax_call => true }
518
+ # test_data.each { |key, value|
519
+ # assert_equal(
520
+ # value,
521
+ # holdings.first.view_data[key],
522
+ # "#{key} different than expected.")
523
+ # }
524
+ # source_data = {
525
+ # :aleph_doc_library => "NYU01",
526
+ # :aleph_sub_library => "NYU Bobst",
527
+ # :aleph_sub_library_code => "BOBST",
528
+ # :aleph_collection => "Main Collection",
529
+ # :aleph_call_number => "(DR557 .J86 2001)",
530
+ # :aleph_doc_number => "000742457",
531
+ # :aleph_url => "http://alephstage.library.nyu.edu",
532
+ # :illiad_url => "http://illiaddev.library.nyu.edu",
533
+ # :aleph_sub_library_code => "BOBST",
534
+ # :aleph_item_id => "NYU50000742457000010",
535
+ # :aleph_item_adm_library => "NYU50",
536
+ # :aleph_item_sub_library_code => "BOBST",
537
+ # :aleph_item_collection_code => "MAIN",
538
+ # :aleph_item_doc_number => "000742457",
539
+ # :aleph_item_sequence_number => "1.0",
540
+ # :aleph_item_barcode => "31142031951646",
541
+ # :aleph_item_status_code => "01",
542
+ # :aleph_item_process_status_code => nil,
543
+ # :aleph_item_circulation_status => "08/25/11",
544
+ # :aleph_item_location => "DR557&nbsp;.J86 2001",
545
+ # :aleph_item_description => nil,
546
+ # :aleph_item_hol_doc_number => "002815266"
547
+ # }
548
+ # source_data.each { |key, value|
549
+ # assert_equal(
550
+ # value,
551
+ # holdings.first.view_data[:source_data][key],
552
+ # "#{key} different than expected.")
134
553
  # }
135
- # end
136
554
  # end
137
555
  #
138
- # def test_source_expand_benchmarks
139
- # request = requests(:primo_id_request)
140
- # @primo_default.handle(request)
141
- # primo_source = request.get_service_type('primo_source', {}).first.view_data
142
- # Benchmark.bmbm do |results|
143
- # results.report("PrimoSource :expand - NYUAleph:") {
144
- # (1..10).each {
145
- # primo_source.expand
146
- # }
556
+ # def test_in_process_nyu_aleph
557
+ # request = requests(:primo_bobst_in_processing_request)
558
+ # @primo_default.handle(request)
559
+ # request.referent.referent_values.reset
560
+ # request.dispatched_services.reset
561
+ # request.service_types.reset
562
+ # primo_sources = request.get_service_type('primo_source')
563
+ # assert_equal(
564
+ # 1, primo_sources.length)
565
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
566
+ # primo_source.handle(request)
567
+ # request.dispatched_services.reset
568
+ # request.service_types.reset
569
+ # holdings = request.get_service_type('holding')
570
+ # assert_equal(
571
+ # 1, holdings.length)
572
+ # test_data = {
573
+ # :record_id => "nyu_aleph002723601",
574
+ # :source_id => "nyu_aleph",
575
+ # :original_source_id => "NYU01",
576
+ # :source_record_id => "002723601",
577
+ # :institution_code => "NYU",
578
+ # :institution => "NYU",
579
+ # :library_code => "BOBST",
580
+ # :library => "NYU Bobst",
581
+ # :status_code => "overridden_by_nyu_aleph",
582
+ # :status => "In Processing",
583
+ # :id_one => "Main Collection",
584
+ # :id_two => "(PN691 .B78 1983)",
585
+ # :collection => "Main Collection",
586
+ # :call_number => "(PN691 .B78 1983)",
587
+ # :origin => nil,
588
+ # :display_type => "book",
589
+ # :coverage => [],
590
+ # :notes => "",
591
+ # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002723601&sub_library=BOBST",
592
+ # :request_url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002723601&sub_library=BOBST",
593
+ # :match_reliability => ServiceResponse::MatchExact,
594
+ # :request_link_supports_ajax_call => true }
595
+ # test_data.each { |key, value|
596
+ # assert_equal(
597
+ # value,
598
+ # holdings.first.view_data[key],
599
+ # "#{key} different than expected.")
600
+ # }
601
+ # source_data = {
602
+ # :aleph_doc_library => "NYU01",
603
+ # :aleph_sub_library => "NYU Bobst",
604
+ # :aleph_sub_library_code => "BOBST",
605
+ # :aleph_collection => "Main Collection",
606
+ # :aleph_call_number => "(PN691 .B78 1983)",
607
+ # :aleph_doc_number => "002723601",
608
+ # :aleph_url => "http://alephstage.library.nyu.edu",
609
+ # :illiad_url => "http://illiaddev.library.nyu.edu",
610
+ # :aleph_sub_library_code => "BOBST",
611
+ # :aleph_item_id => "NYU50002723601000010",
612
+ # :aleph_item_adm_library => "NYU50",
613
+ # :aleph_item_sub_library_code => "BOBST",
614
+ # :aleph_item_collection_code => "MAIN",
615
+ # :aleph_item_doc_number => "002723601",
616
+ # :aleph_item_sequence_number => "1.0",
617
+ # :aleph_item_barcode => "31142011075952",
618
+ # :aleph_item_status_code => "01",
619
+ # :aleph_item_process_status_code => "BD",
620
+ # :aleph_item_circulation_status => "At Bindery",
621
+ # :aleph_item_location => "PN691&nbsp;.B78 1983",
622
+ # :aleph_item_description => nil,
623
+ # :aleph_item_hol_doc_number => "000631538"
624
+ # }
625
+ # source_data.each { |key, value|
626
+ # assert_equal(
627
+ # value,
628
+ # holdings.first.view_data[:source_data][key],
629
+ # "#{key} different than expected.")
147
630
  # }
148
- # end
149
631
  # end
632
+ #
633
+ # def test_journal1_nyu_aleph
634
+ # request = requests(:primo_journal1_request)
635
+ # @primo_default.handle(request)
636
+ # request.referent.referent_values.reset
637
+ # request.dispatched_services.reset
638
+ # request.service_types.reset
639
+ # primo_sources = request.get_service_type('primo_source')
640
+ # assert_equal(
641
+ # 4, primo_sources.length)
642
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
643
+ # primo_source.handle(request)
644
+ # request.dispatched_services.reset
645
+ # request.service_types.reset
646
+ # holdings = request.get_service_type('holding')
647
+ # assert_equal(
648
+ # 4, holdings.length)
649
+ # test_data = {
650
+ # :record_id => "nyu_aleph002895625",
651
+ # :source_id => "nyu_aleph",
652
+ # :original_source_id => "NYU01",
653
+ # :source_record_id => "002895625",
654
+ # :institution_code => "NYU",
655
+ # :institution => "NYU",
656
+ # :library_code => "BOBST",
657
+ # :library => "NYU Bobst",
658
+ # :status_code => "check_holdings",
659
+ # :status => "Check Availability",
660
+ # :id_one => "Main Collection",
661
+ # :id_two => "(ML1 .M819 )",
662
+ # :collection => "Main Collection",
663
+ # :call_number => "(ML1 .M819 )",
664
+ # :origin => nil,
665
+ # :display_type => "journal",
666
+ # :coverage => ["Available in Main Collection: VOLUMES: 1-89 (YEARS: 1915-2006)"],
667
+ # :notes => "",
668
+ # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002895625&sub_library=BOBST",
669
+ # :request_url => nil,
670
+ # :match_reliability => ServiceResponse::MatchExact,
671
+ # :request_link_supports_ajax_call => false }
672
+ # test_data.each { |key, value|
673
+ # assert_equal(
674
+ # value,
675
+ # holdings.first.view_data[key],
676
+ # "#{key} different than expected.")
677
+ # }
678
+ # source_data = {
679
+ # :aleph_doc_library => "NYU01",
680
+ # :aleph_sub_library => "NYU Bobst",
681
+ # :aleph_sub_library_code => "BOBST",
682
+ # :aleph_collection => "Main Collection",
683
+ # :aleph_call_number => "(ML1 .M819 )",
684
+ # :aleph_doc_number => "002895625",
685
+ # :aleph_sub_library_code => "BOBST"
686
+ # }
687
+ # source_data.each { |key, value|
688
+ # assert_equal(
689
+ # value,
690
+ # holdings.first.view_data[:source_data][key],
691
+ # "#{key} different than expected.")
692
+ # }
693
+ # end
694
+ #
695
+ # def test_journal1_tns_aleph
696
+ # request = requests(:primo_journal1_request)
697
+ # @primo_tns.handle(request)
698
+ # request.referent.referent_values.reset
699
+ # request.dispatched_services.reset
700
+ # request.service_types.reset
701
+ # primo_sources = request.get_service_type('primo_source')
702
+ # assert_equal(
703
+ # 4, primo_sources.length)
704
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
705
+ # primo_source.handle(request)
706
+ # request.dispatched_services.reset
707
+ # request.service_types.reset
708
+ # holdings = request.get_service_type('holding')
709
+ # assert_equal(
710
+ # 4, holdings.length)
711
+ # test_data = {
712
+ # :record_id => "nyu_aleph002895625",
713
+ # :source_id => "nyu_aleph",
714
+ # :original_source_id => "NYU01",
715
+ # :source_record_id => "002895625",
716
+ # :institution_code => "NYU",
717
+ # :institution => "NYU",
718
+ # :library_code => "BOBST",
719
+ # :library => "NYU Bobst",
720
+ # :status_code => "check_holdings",
721
+ # :status => "Check Availability",
722
+ # :id_one => "Main Collection",
723
+ # :id_two => "(ML1 .M819 )",
724
+ # :collection => "Main Collection",
725
+ # :call_number => "(ML1 .M819 )",
726
+ # :origin => nil,
727
+ # :display_type => "journal",
728
+ # :coverage => ["Available in Main Collection: VOLUMES: 1-89 (YEARS: 1915-2006)"],
729
+ # :notes => "",
730
+ # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002895625&sub_library=BOBST",
731
+ # :request_url => nil,
732
+ # :match_reliability => ServiceResponse::MatchExact,
733
+ # :request_link_supports_ajax_call => false }
734
+ # test_data.each { |key, value|
735
+ # assert_equal(
736
+ # value,
737
+ # holdings.first.view_data[key],
738
+ # "#{key} different than expected.")
739
+ # }
740
+ # source_data = {
741
+ # :aleph_doc_library => "NYU01",
742
+ # :aleph_sub_library => "NYU Bobst",
743
+ # :aleph_sub_library_code => "BOBST",
744
+ # :aleph_collection => "Main Collection",
745
+ # :aleph_call_number => "(ML1 .M819 )",
746
+ # :aleph_doc_number => "002895625",
747
+ # :aleph_sub_library_code => "BOBST"
748
+ # }
749
+ # source_data.each { |key, value|
750
+ # assert_equal(
751
+ # value,
752
+ # holdings.first.view_data[:source_data][key],
753
+ # "#{key} different than expected.")
754
+ # }
755
+ # end
756
+ #
757
+ # def test_journal2_nyu_aleph
758
+ # # Journal 2
759
+ # request = requests(:primo_journal2_request)
760
+ # @primo_default.handle(request)
761
+ # request.referent.referent_values.reset
762
+ # request.dispatched_services.reset
763
+ # request.service_types.reset
764
+ # # record_id = request.referent.metadata["primo"]
765
+ # assert_equal("Macomb", request.referent.metadata["place"]);
766
+ # assert_equal("Center for Business and Economic Research, Western Illinois University]", request.referent.metadata["pub"]);
767
+ # primo_sources = request.get_service_type('primo_source')
768
+ # assert(1 <= primo_sources.length)
769
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
770
+ # primo_source.handle(request)
771
+ # request.dispatched_services.reset
772
+ # request.service_types.reset
773
+ # holdings = request.get_service_type('holding')
774
+ # assert(1 <= holdings.length)
775
+ # assert_equal(primo_sources.length, holdings.length)
776
+ # assert_equal("NYU", holdings.first.view_data[:institution])
777
+ # assert_equal("NYU Bobst", holdings.first.view_data[:library])
778
+ # assert_equal("Main Collection", holdings.first.view_data[:id_one])
779
+ # assert_equal("http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002736245&sub_library=BOBST", holdings.first.view_data[:url])
780
+ # assert_equal("(HB1 .J55 )", holdings.first.view_data[:id_two])
781
+ # assert_equal("Check Availability", holdings.first.view_data[:status])
782
+ # end
783
+ #
784
+ # def test_journal3_nyu_aleph
785
+ # # Journal 3
786
+ # request = requests(:primo_journal3_request)
787
+ # @primo_default.handle(request)
788
+ # request.referent.referent_values.reset
789
+ # request.dispatched_services.reset
790
+ # request.service_types.reset
791
+ # # record_id = request.referent.metadata["primo"]
792
+ # assert_equal("Sydney", request.referent.metadata["place"]);
793
+ # assert_equal("Association for the Journal of Religious History]", request.referent.metadata["pub"]);
794
+ # primo_sources = request.get_service_type('primo_source')
795
+ # assert_equal(0, primo_sources.length)
796
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
797
+ # primo_source.handle(request)
798
+ # request.dispatched_services.reset
799
+ # request.service_types.reset
800
+ # holdings = request.get_service_type('holding')
801
+ # assert_equal(0, holdings.length)
802
+ # assert_equal(primo_sources.length, holdings.length)
803
+ # end
804
+ #
805
+ # def test_journal4_nyu_aleph
806
+ # # Journal 4
807
+ # request = requests(:primo_journal4_request)
808
+ # @primo_default.handle(request)
809
+ # request.referent.referent_values.reset
810
+ # request.dispatched_services.reset
811
+ # request.service_types.reset
812
+ # # record_id = request.referent.metadata["primo"]
813
+ # assert_equal("Waltham, MA", request.referent.metadata["place"]);
814
+ # assert_equal("Published for the Board by the Massachusetts Medical Society", request.referent.metadata["pub"]);
815
+ # primo_sources = request.get_service_type('primo_source')
816
+ # assert_equal(0, primo_sources.length)
817
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
818
+ # primo_source.handle(request)
819
+ # request.dispatched_services.reset
820
+ # request.service_types.reset
821
+ # holdings = request.get_service_type('holding')
822
+ # assert_equal(0, holdings.length)
823
+ # assert_equal(primo_sources.length, holdings.length)
824
+ # end
825
+ #
826
+ # def test_journal5_nyu_aleph
827
+ # request = requests(:primo_journal5_request)
828
+ # @primo_default.handle(request)
829
+ # request.referent.referent_values.reset
830
+ # request.dispatched_services.reset
831
+ # request.service_types.reset
832
+ # # record_id = request.referent.metadata["primo"]
833
+ # primo_sources = request.get_service_type('primo_source')
834
+ # assert_equal(1, primo_sources.length)
835
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
836
+ # primo_source.handle(request)
837
+ # request.dispatched_services.reset
838
+ # request.service_types.reset
839
+ # holdings = request.get_service_type('holding')
840
+ # assert_equal(1, holdings.length)
841
+ # assert_equal(primo_sources.length, holdings.length)
842
+ # end
843
+ #
844
+ # def test_bobst_genre_discrepancy
845
+ # request = requests(:primo_bobst_problem1_request)
846
+ # @primo_default.handle(request)
847
+ # request.dispatched_services.reset
848
+ # request.service_types.reset
849
+ # primo_sources = request.get_service_type('primo_source')
850
+ # assert_equal(
851
+ # 1, primo_sources.length)
852
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
853
+ # primo_source.handle(request)
854
+ # request.dispatched_services.reset
855
+ # request.service_types.reset
856
+ # holdings = request.get_service_type('holding')
857
+ # assert_equal(
858
+ # 1, holdings.length)
859
+ # test_data = {
860
+ # :record_id => "nyu_aleph000509288",
861
+ # :source_id => "nyu_aleph",
862
+ # :original_source_id => "NYU01",
863
+ # :source_record_id => "000509288",
864
+ # :institution_code => "NYU",
865
+ # :institution => "NYU",
866
+ # :library_code => "BOBST",
867
+ # :library => "NYU Bobst",
868
+ # :status_code => "available",
869
+ # :status => "Available",
870
+ # :id_one => "Main Collection",
871
+ # :id_two => "(ML410.J33 M47 2005a)",
872
+ # :collection => "Main Collection",
873
+ # :call_number => "(ML410.J33 M47 2005a)",
874
+ # :origin => nil,
875
+ # :display_type => "book",
876
+ # :coverage => [],
877
+ # :notes => "",
878
+ # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000509288&sub_library=BOBST",
879
+ # :request_url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000509288&sub_library=BOBST",
880
+ # :match_reliability => ServiceResponse::MatchExact,
881
+ # :request_link_supports_ajax_call => true }
882
+ # test_data.each { |key, value|
883
+ # assert_equal(
884
+ # value,
885
+ # holdings.first.view_data[key],
886
+ # "#{key} different than expected.")
887
+ # }
888
+ # source_data = {
889
+ # :aleph_doc_library => "NYU01",
890
+ # :aleph_sub_library => "NYU Bobst",
891
+ # :aleph_sub_library_code => "BOBST",
892
+ # :aleph_collection => "Main Collection",
893
+ # :aleph_call_number => "(ML410.J33 M47 2005a)",
894
+ # :aleph_doc_number => "000509288",
895
+ # :aleph_url => "http://alephstage.library.nyu.edu",
896
+ # :illiad_url => "http://illiaddev.library.nyu.edu",
897
+ # :aleph_sub_library_code => "BOBST",
898
+ # :aleph_item_id => "NYU50000509288000010",
899
+ # :aleph_item_adm_library => "NYU50",
900
+ # :aleph_item_sub_library_code => "BOBST",
901
+ # :aleph_item_collection_code => "MAIN",
902
+ # :aleph_item_doc_number => "000509288",
903
+ # :aleph_item_sequence_number => "1.0",
904
+ # :aleph_item_barcode => "31142045676163",
905
+ # :aleph_item_status_code => "01",
906
+ # :aleph_item_process_status_code => nil,
907
+ # :aleph_item_circulation_status => "On Shelf",
908
+ # :aleph_item_location => "ML410.J33&nbsp;M47 2005a",
909
+ # :aleph_item_description => nil,
910
+ # :aleph_item_hol_doc_number => "003227224"
911
+ # }
912
+ # source_data.each { |key, value|
913
+ # assert_equal(
914
+ # value,
915
+ # holdings.first.view_data[:source_data][key],
916
+ # "#{key} different than expected.")
917
+ # }
918
+ # end
919
+ #
920
+ # def test_critical_inquiry_bug
921
+ # request = requests(:critical_inquiry_request)
922
+ # @primo_default.handle(request)
923
+ # request.dispatched_services.reset
924
+ # request.service_types.reset
925
+ # primo_sources = request.get_service_type('primo_source')
926
+ # assert_equal(
927
+ # 4, primo_sources.length)
928
+ # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
929
+ # primo_source.handle(request)
930
+ # request.dispatched_services.reset
931
+ # request.service_types.reset
932
+ # holdings = request.get_service_type('holding')
933
+ # assert_equal(
934
+ # 4, holdings.length)
935
+ # end
936
+ #
937
+ # def test_sfx_owner_but_fulltext_empty
938
+ # request = requests(:sfx_owner_but_fulltext_empty_request)
939
+ # @primo_default.handle(request)
940
+ # request.dispatched_services.reset
941
+ # request.service_types.reset
942
+ # fulltext = request.get_service_type('fulltext')
943
+ # assert_equal(0, fulltext.length)
944
+ # end
150
945
 
151
- def test_primo_service_minimum
152
- request = requests(:primo_id_request)
153
- @primo_minimum.handle(request)
154
- request.referent.referent_values.reset
155
- request.dispatched_services.reset
156
- request.service_responses.reset
157
- test_data = {
158
- "aulast" => "Greene",
159
- "aufirst" => "Graham,",
160
- "au" => "Greene, Graham, 1904-1991",
161
- "title" => "Travels with my aunt",
162
- "btitle" => "Travels with my aunt",
163
- "place" => "New York",
164
- "pub" => "Penguin Books",
165
- "oclcnum" => "56781200",
166
- "lccn" => "2004559272"
167
- }
168
- test_data.each { |key, value|
169
- assert_equal(
170
- value,
171
- request.referent.metadata[key],
172
- "#{key} different than expected.")
173
- }
174
- holdings = request.get_service_type('holding')
175
- assert_equal(
176
- 1, holdings.length)
177
- test_data = {
178
- :record_id => "nyu_aleph000062856",
179
- :source_id => "nyu_aleph",
180
- :original_source_id => "NYU01",
181
- :source_record_id => "000062856",
182
- :institution_code => "NYU",
183
- :institution => "NYU",
184
- :library_code => "BOBST",
185
- :library => "NYU Bobst",
186
- :status_code => "check_holdings",
187
- :status => "Check Availability",
188
- :id_one => "Main Collection",
189
- :id_two => "(PR6013.R44 T7 2004 )",
190
- :collection => "Main Collection",
191
- :call_number => "(PR6013.R44 T7 2004 )",
192
- :origin => nil,
193
- :display_type => "book",
194
- :coverage => [],
195
- :notes => "",
196
- :url => "#{@base_url}/primo_library/libweb/action/dlDisplay.do?docId=nyu_aleph000062856&institution=NYU&vid=#{@vid}",
197
- :request_url => nil,
198
- :match_reliability => ServiceResponse::MatchExact,
199
- :request_link_supports_ajax_call => false }
200
- test_data.each { |key, value|
201
- assert_equal(
202
- value,
203
- holdings.first.view_data[key],
204
- "#{key} different than expected.")
205
- }
206
- end
207
-
208
- def test_primo_service_minimum_no_config
209
- request = requests(:primo_id_request)
210
- @primo_minimum_no_config.handle(request)
211
- request.referent.referent_values.reset
212
- request.dispatched_services.reset
213
- request.service_responses.reset
214
- test_data = {
215
- "aulast" => "Greene",
216
- "aufirst" => "Graham,",
217
- "au" => "Greene, Graham, 1904-1991",
218
- "title" => "Travels with my aunt",
219
- "btitle" => "Travels with my aunt",
220
- "place" => "New York",
221
- "pub" => "Penguin Books",
222
- "oclcnum" => "56781200",
223
- "lccn" => "2004559272"
224
- }
225
- test_data.each { |key, value|
226
- assert_equal(
227
- value,
228
- request.referent.metadata[key],
229
- "#{key} different than expected.")
230
- }
231
- holdings = request.get_service_type('holding')
232
- assert_equal(
233
- 1, holdings.length)
234
- test_data = {
235
- :record_id => "nyu_aleph000062856",
236
- :source_id => "nyu_aleph",
237
- :original_source_id => "NYU01",
238
- :source_record_id => "000062856",
239
- :institution_code => "NYU",
240
- :institution => "NYU",
241
- :library_code => "BOBST",
242
- :library => "BOBST",
243
- :status_code => "check_holdings",
244
- :status => "check_holdings",
245
- :id_one => "Main Collection",
246
- :id_two => "(PR6013.R44 T7 2004 )",
247
- :collection => "Main Collection",
248
- :call_number => "(PR6013.R44 T7 2004 )",
249
- :origin => nil,
250
- :display_type => "book",
251
- :coverage => [],
252
- :notes => "",
253
- :url => "#{@base_url}/primo_library/libweb/action/dlDisplay.do?docId=nyu_aleph000062856&institution=NYU&vid=#{@vid}",
254
- :request_url => nil,
255
- :match_reliability => ServiceResponse::MatchExact,
256
- :request_link_supports_ajax_call => false }
257
- test_data.each { |key, value|
258
- assert_equal(
259
- value,
260
- holdings.first.view_data[key],
261
- "#{key} different than expected.")
262
- }
263
- end
264
-
265
- def test_primo_service_legacy_settings_minimum
266
- request = requests(:primo_id_request)
267
- @primo_old_minimum.handle(request)
268
- request.referent.referent_values.reset
269
- request.dispatched_services.reset
270
- request.service_responses.reset
271
- test_data = {
272
- "aulast" => "Greene",
273
- "aufirst" => "Graham,",
274
- "au" => "Greene, Graham, 1904-1991",
275
- "title" => "Travels with my aunt",
276
- "btitle" => "Travels with my aunt",
277
- "place" => "New York",
278
- "pub" => "Penguin Books",
279
- "oclcnum" => "56781200",
280
- "lccn" => "2004559272"
281
- }
282
- test_data.each { |key, value|
283
- assert_equal(
284
- value,
285
- request.referent.metadata[key],
286
- "#{key} different than expected.")
287
- }
288
- holdings = request.get_service_type('holding')
289
- assert_equal(
290
- 1, holdings.length)
291
- test_data = {
292
- :record_id => "nyu_aleph000062856",
293
- :source_id => "nyu_aleph",
294
- :original_source_id => "NYU01",
295
- :source_record_id => "000062856",
296
- :institution_code => "NYU",
297
- :institution => "NYU",
298
- :library_code => "BOBST",
299
- :library => "NYU Bobst",
300
- :status_code => "check_holdings",
301
- :status => "Check Availability",
302
- :id_one => "Main Collection",
303
- :id_two => "(PR6013.R44 T7 2004 )",
304
- :collection => "Main Collection",
305
- :call_number => "(PR6013.R44 T7 2004 )",
306
- :origin => nil,
307
- :display_type => "book",
308
- :coverage => [],
309
- :notes => "",
310
- :url => "#{@base_url}/primo_library/libweb/action/dlDisplay.do?docId=nyu_aleph000062856&institution=NYU&vid=#{@vid}",
311
- :request_url => nil,
312
- :match_reliability => ServiceResponse::MatchExact,
313
- :request_link_supports_ajax_call => false }
314
- test_data.each { |key, value|
315
- assert_equal(
316
- value,
317
- holdings.first.view_data[key],
318
- "#{key} different than expected.")
319
- }
320
946
  end
321
-
322
- # def test_available_nyu_aleph
323
- # # Available
324
- # request = requests(:primo_id_request)
325
- # @primo_default.handle(request)
326
- # request.dispatched_services.reset
327
- # request.service_types.reset
328
- # primo_sources = request.get_service_type('primo_source')
329
- # assert_equal(
330
- # 1, primo_sources.length)
331
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
332
- # primo_source.handle(request)
333
- # request.dispatched_services.reset
334
- # request.service_types.reset
335
- # holdings = request.get_service_type('holding')
336
- # assert_equal(
337
- # 1, holdings.length)
338
- # test_data = {
339
- # :record_id => "nyu_aleph000062856",
340
- # :source_id => "nyu_aleph",
341
- # :original_source_id => "NYU01",
342
- # :source_record_id => "000062856",
343
- # :institution_code => "NYU",
344
- # :institution => "NYU",
345
- # :library_code => "BOBST",
346
- # :library => "NYU Bobst",
347
- # :status_code => "available",
348
- # :status => "Available",
349
- # :id_one => "Main Collection",
350
- # :id_two => "(PR6013.R44 T7 2004)",
351
- # :collection => "Main Collection",
352
- # :call_number => "(PR6013.R44 T7 2004)",
353
- # :origin => nil,
354
- # :display_type => "book",
355
- # :coverage => [],
356
- # :notes => "",
357
- # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000062856&sub_library=BOBST",
358
- # :request_url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000062856&sub_library=BOBST",
359
- # :match_reliability => ServiceResponse::MatchExact,
360
- # :request_link_supports_ajax_call => true }
361
- # test_data.each { |key, value|
362
- # assert_equal(
363
- # value,
364
- # holdings.first.view_data[key],
365
- # "#{key} different than expected.")
366
- # }
367
- # source_data = {
368
- # :aleph_doc_library => "NYU01",
369
- # :aleph_sub_library => "NYU Bobst",
370
- # :aleph_sub_library_code => "BOBST",
371
- # :aleph_collection => "Main Collection",
372
- # :aleph_call_number => "(PR6013.R44 T7 2004)",
373
- # :aleph_doc_number => "000062856",
374
- # :aleph_url => "http://alephstage.library.nyu.edu",
375
- # :illiad_url => "http://illiaddev.library.nyu.edu",
376
- # :aleph_sub_library_code => "BOBST",
377
- # :aleph_item_id => "NYU50000062856000010",
378
- # :aleph_item_adm_library => "NYU50",
379
- # :aleph_item_sub_library_code => "BOBST",
380
- # :aleph_item_collection_code => "MAIN",
381
- # :aleph_item_doc_number => "000062856",
382
- # :aleph_item_sequence_number => "1.0",
383
- # :aleph_item_barcode => "31142041146104",
384
- # :aleph_item_status_code => "01",
385
- # :aleph_item_process_status_code => nil,
386
- # :aleph_item_circulation_status => "On Shelf",
387
- # :aleph_item_location => "PR6013.R44&nbsp;T7 2004",
388
- # :aleph_item_description => nil,
389
- # :aleph_item_hol_doc_number => "002992203"
390
- # }
391
- # source_data.each { |key, value|
392
- # assert_equal(
393
- # value,
394
- # holdings.first.view_data[:source_data][key],
395
- # "#{key} different than expected.")
396
- # }
397
- # end
398
- #
399
- # def test_available_tns_aleph
400
- # # Available
401
- # request = requests(:primo_id_request)
402
- # @primo_tns.handle(request)
403
- # request.dispatched_services.reset
404
- # request.service_types.reset
405
- # primo_sources = request.get_service_type('primo_source')
406
- # assert_equal(
407
- # 1, primo_sources.length)
408
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
409
- # primo_source.handle(request)
410
- # request.dispatched_services.reset
411
- # request.service_types.reset
412
- # holdings = request.get_service_type('holding')
413
- # assert_equal(
414
- # 1, holdings.length)
415
- # test_data = {
416
- # :record_id => "nyu_aleph000062856",
417
- # :source_id => "nyu_aleph",
418
- # :original_source_id => "NYU01",
419
- # :source_record_id => "000062856",
420
- # :institution_code => "NYU",
421
- # :institution => "NYU",
422
- # :library_code => "BOBST",
423
- # :library => "NYU Bobst",
424
- # :status_code => "available",
425
- # :status => "Available",
426
- # :id_one => "Main Collection",
427
- # :id_two => "(PR6013.R44 T7 2004)",
428
- # :collection => "Main Collection",
429
- # :call_number => "(PR6013.R44 T7 2004)",
430
- # :origin => nil,
431
- # :display_type => "book",
432
- # :coverage => [],
433
- # :notes => "",
434
- # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000062856&sub_library=BOBST",
435
- # :request_url => nil,
436
- # :match_reliability => ServiceResponse::MatchExact,
437
- # :request_link_supports_ajax_call => true }
438
- # test_data.each { |key, value|
439
- # assert_equal(
440
- # value,
441
- # holdings.first.view_data[key],
442
- # "#{key} different than expected.")
443
- # }
444
- # source_data = {
445
- # :aleph_doc_library => "NYU01",
446
- # :aleph_sub_library => "NYU Bobst",
447
- # :aleph_sub_library_code => "BOBST",
448
- # :aleph_collection => "Main Collection",
449
- # :aleph_call_number => "(PR6013.R44 T7 2004)",
450
- # :aleph_doc_number => "000062856",
451
- # :aleph_url => "http://alephstage.library.nyu.edu",
452
- # :illiad_url => "http://illiaddev.library.nyu.edu",
453
- # :aleph_sub_library_code => "BOBST",
454
- # :aleph_item_id => "NYU50000062856000010",
455
- # :aleph_item_adm_library => "NYU50",
456
- # :aleph_item_sub_library_code => "BOBST",
457
- # :aleph_item_collection_code => "MAIN",
458
- # :aleph_item_doc_number => "000062856",
459
- # :aleph_item_sequence_number => "1.0",
460
- # :aleph_item_barcode => "31142041146104",
461
- # :aleph_item_status_code => "01",
462
- # :aleph_item_process_status_code => nil,
463
- # :aleph_item_circulation_status => "On Shelf",
464
- # :aleph_item_location => "PR6013.R44&nbsp;T7 2004",
465
- # :aleph_item_description => nil,
466
- # :aleph_item_hol_doc_number => "002992203"
467
- # }
468
- # source_data.each { |key, value|
469
- # assert_equal(
470
- # value,
471
- # holdings.first.view_data[:source_data][key],
472
- # "#{key} different than expected.")
473
- # }
474
- # end
475
- #
476
- # def test_checked_out_nyu_aleph
477
- # request = requests(:primo_checked_out_request)
478
- # @primo_default.handle(request)
479
- # request.referent.referent_values.reset
480
- # request.dispatched_services.reset
481
- # request.service_types.reset
482
- # primo_sources = request.get_service_type('primo_source')
483
- # assert_equal(
484
- # 1, primo_sources.length)
485
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
486
- # primo_source.handle(request)
487
- # request.dispatched_services.reset
488
- # request.service_types.reset
489
- # holdings = request.get_service_type('holding')
490
- # assert_equal(
491
- # 1, holdings.length)
492
- # test_data = {
493
- # :record_id => "nyu_aleph000742457",
494
- # :source_id => "nyu_aleph",
495
- # :original_source_id => "NYU01",
496
- # :source_record_id => "000742457",
497
- # :institution_code => "NYU",
498
- # :institution => "NYU",
499
- # :library_code => "BOBST",
500
- # :library => "NYU Bobst",
501
- # :status_code => "checked_out",
502
- # :status => "Due: 08/25/11",
503
- # :id_one => "Main Collection",
504
- # :id_two => "(DR557 .J86 2001)",
505
- # :collection => "Main Collection",
506
- # :call_number => "(DR557 .J86 2001)",
507
- # :origin => nil,
508
- # :display_type => "book",
509
- # :coverage => [],
510
- # :notes => "",
511
- # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000742457&sub_library=BOBST",
512
- # :request_url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000742457&sub_library=BOBST",
513
- # :match_reliability => ServiceResponse::MatchExact,
514
- # :request_link_supports_ajax_call => true }
515
- # test_data.each { |key, value|
516
- # assert_equal(
517
- # value,
518
- # holdings.first.view_data[key],
519
- # "#{key} different than expected.")
520
- # }
521
- # source_data = {
522
- # :aleph_doc_library => "NYU01",
523
- # :aleph_sub_library => "NYU Bobst",
524
- # :aleph_sub_library_code => "BOBST",
525
- # :aleph_collection => "Main Collection",
526
- # :aleph_call_number => "(DR557 .J86 2001)",
527
- # :aleph_doc_number => "000742457",
528
- # :aleph_url => "http://alephstage.library.nyu.edu",
529
- # :illiad_url => "http://illiaddev.library.nyu.edu",
530
- # :aleph_sub_library_code => "BOBST",
531
- # :aleph_item_id => "NYU50000742457000010",
532
- # :aleph_item_adm_library => "NYU50",
533
- # :aleph_item_sub_library_code => "BOBST",
534
- # :aleph_item_collection_code => "MAIN",
535
- # :aleph_item_doc_number => "000742457",
536
- # :aleph_item_sequence_number => "1.0",
537
- # :aleph_item_barcode => "31142031951646",
538
- # :aleph_item_status_code => "01",
539
- # :aleph_item_process_status_code => nil,
540
- # :aleph_item_circulation_status => "08/25/11",
541
- # :aleph_item_location => "DR557&nbsp;.J86 2001",
542
- # :aleph_item_description => nil,
543
- # :aleph_item_hol_doc_number => "002815266"
544
- # }
545
- # source_data.each { |key, value|
546
- # assert_equal(
547
- # value,
548
- # holdings.first.view_data[:source_data][key],
549
- # "#{key} different than expected.")
550
- # }
551
- # end
552
- #
553
- # def test_in_process_nyu_aleph
554
- # request = requests(:primo_bobst_in_processing_request)
555
- # @primo_default.handle(request)
556
- # request.referent.referent_values.reset
557
- # request.dispatched_services.reset
558
- # request.service_types.reset
559
- # primo_sources = request.get_service_type('primo_source')
560
- # assert_equal(
561
- # 1, primo_sources.length)
562
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
563
- # primo_source.handle(request)
564
- # request.dispatched_services.reset
565
- # request.service_types.reset
566
- # holdings = request.get_service_type('holding')
567
- # assert_equal(
568
- # 1, holdings.length)
569
- # test_data = {
570
- # :record_id => "nyu_aleph002723601",
571
- # :source_id => "nyu_aleph",
572
- # :original_source_id => "NYU01",
573
- # :source_record_id => "002723601",
574
- # :institution_code => "NYU",
575
- # :institution => "NYU",
576
- # :library_code => "BOBST",
577
- # :library => "NYU Bobst",
578
- # :status_code => "overridden_by_nyu_aleph",
579
- # :status => "In Processing",
580
- # :id_one => "Main Collection",
581
- # :id_two => "(PN691 .B78 1983)",
582
- # :collection => "Main Collection",
583
- # :call_number => "(PN691 .B78 1983)",
584
- # :origin => nil,
585
- # :display_type => "book",
586
- # :coverage => [],
587
- # :notes => "",
588
- # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002723601&sub_library=BOBST",
589
- # :request_url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002723601&sub_library=BOBST",
590
- # :match_reliability => ServiceResponse::MatchExact,
591
- # :request_link_supports_ajax_call => true }
592
- # test_data.each { |key, value|
593
- # assert_equal(
594
- # value,
595
- # holdings.first.view_data[key],
596
- # "#{key} different than expected.")
597
- # }
598
- # source_data = {
599
- # :aleph_doc_library => "NYU01",
600
- # :aleph_sub_library => "NYU Bobst",
601
- # :aleph_sub_library_code => "BOBST",
602
- # :aleph_collection => "Main Collection",
603
- # :aleph_call_number => "(PN691 .B78 1983)",
604
- # :aleph_doc_number => "002723601",
605
- # :aleph_url => "http://alephstage.library.nyu.edu",
606
- # :illiad_url => "http://illiaddev.library.nyu.edu",
607
- # :aleph_sub_library_code => "BOBST",
608
- # :aleph_item_id => "NYU50002723601000010",
609
- # :aleph_item_adm_library => "NYU50",
610
- # :aleph_item_sub_library_code => "BOBST",
611
- # :aleph_item_collection_code => "MAIN",
612
- # :aleph_item_doc_number => "002723601",
613
- # :aleph_item_sequence_number => "1.0",
614
- # :aleph_item_barcode => "31142011075952",
615
- # :aleph_item_status_code => "01",
616
- # :aleph_item_process_status_code => "BD",
617
- # :aleph_item_circulation_status => "At Bindery",
618
- # :aleph_item_location => "PN691&nbsp;.B78 1983",
619
- # :aleph_item_description => nil,
620
- # :aleph_item_hol_doc_number => "000631538"
621
- # }
622
- # source_data.each { |key, value|
623
- # assert_equal(
624
- # value,
625
- # holdings.first.view_data[:source_data][key],
626
- # "#{key} different than expected.")
627
- # }
628
- # end
629
- #
630
- # def test_journal1_nyu_aleph
631
- # request = requests(:primo_journal1_request)
632
- # @primo_default.handle(request)
633
- # request.referent.referent_values.reset
634
- # request.dispatched_services.reset
635
- # request.service_types.reset
636
- # primo_sources = request.get_service_type('primo_source')
637
- # assert_equal(
638
- # 4, primo_sources.length)
639
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
640
- # primo_source.handle(request)
641
- # request.dispatched_services.reset
642
- # request.service_types.reset
643
- # holdings = request.get_service_type('holding')
644
- # assert_equal(
645
- # 4, holdings.length)
646
- # test_data = {
647
- # :record_id => "nyu_aleph002895625",
648
- # :source_id => "nyu_aleph",
649
- # :original_source_id => "NYU01",
650
- # :source_record_id => "002895625",
651
- # :institution_code => "NYU",
652
- # :institution => "NYU",
653
- # :library_code => "BOBST",
654
- # :library => "NYU Bobst",
655
- # :status_code => "check_holdings",
656
- # :status => "Check Availability",
657
- # :id_one => "Main Collection",
658
- # :id_two => "(ML1 .M819 )",
659
- # :collection => "Main Collection",
660
- # :call_number => "(ML1 .M819 )",
661
- # :origin => nil,
662
- # :display_type => "journal",
663
- # :coverage => ["Available in Main Collection: VOLUMES: 1-89 (YEARS: 1915-2006)"],
664
- # :notes => "",
665
- # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002895625&sub_library=BOBST",
666
- # :request_url => nil,
667
- # :match_reliability => ServiceResponse::MatchExact,
668
- # :request_link_supports_ajax_call => false }
669
- # test_data.each { |key, value|
670
- # assert_equal(
671
- # value,
672
- # holdings.first.view_data[key],
673
- # "#{key} different than expected.")
674
- # }
675
- # source_data = {
676
- # :aleph_doc_library => "NYU01",
677
- # :aleph_sub_library => "NYU Bobst",
678
- # :aleph_sub_library_code => "BOBST",
679
- # :aleph_collection => "Main Collection",
680
- # :aleph_call_number => "(ML1 .M819 )",
681
- # :aleph_doc_number => "002895625",
682
- # :aleph_sub_library_code => "BOBST"
683
- # }
684
- # source_data.each { |key, value|
685
- # assert_equal(
686
- # value,
687
- # holdings.first.view_data[:source_data][key],
688
- # "#{key} different than expected.")
689
- # }
690
- # end
691
- #
692
- # def test_journal1_tns_aleph
693
- # request = requests(:primo_journal1_request)
694
- # @primo_tns.handle(request)
695
- # request.referent.referent_values.reset
696
- # request.dispatched_services.reset
697
- # request.service_types.reset
698
- # primo_sources = request.get_service_type('primo_source')
699
- # assert_equal(
700
- # 4, primo_sources.length)
701
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
702
- # primo_source.handle(request)
703
- # request.dispatched_services.reset
704
- # request.service_types.reset
705
- # holdings = request.get_service_type('holding')
706
- # assert_equal(
707
- # 4, holdings.length)
708
- # test_data = {
709
- # :record_id => "nyu_aleph002895625",
710
- # :source_id => "nyu_aleph",
711
- # :original_source_id => "NYU01",
712
- # :source_record_id => "002895625",
713
- # :institution_code => "NYU",
714
- # :institution => "NYU",
715
- # :library_code => "BOBST",
716
- # :library => "NYU Bobst",
717
- # :status_code => "check_holdings",
718
- # :status => "Check Availability",
719
- # :id_one => "Main Collection",
720
- # :id_two => "(ML1 .M819 )",
721
- # :collection => "Main Collection",
722
- # :call_number => "(ML1 .M819 )",
723
- # :origin => nil,
724
- # :display_type => "journal",
725
- # :coverage => ["Available in Main Collection: VOLUMES: 1-89 (YEARS: 1915-2006)"],
726
- # :notes => "",
727
- # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002895625&sub_library=BOBST",
728
- # :request_url => nil,
729
- # :match_reliability => ServiceResponse::MatchExact,
730
- # :request_link_supports_ajax_call => false }
731
- # test_data.each { |key, value|
732
- # assert_equal(
733
- # value,
734
- # holdings.first.view_data[key],
735
- # "#{key} different than expected.")
736
- # }
737
- # source_data = {
738
- # :aleph_doc_library => "NYU01",
739
- # :aleph_sub_library => "NYU Bobst",
740
- # :aleph_sub_library_code => "BOBST",
741
- # :aleph_collection => "Main Collection",
742
- # :aleph_call_number => "(ML1 .M819 )",
743
- # :aleph_doc_number => "002895625",
744
- # :aleph_sub_library_code => "BOBST"
745
- # }
746
- # source_data.each { |key, value|
747
- # assert_equal(
748
- # value,
749
- # holdings.first.view_data[:source_data][key],
750
- # "#{key} different than expected.")
751
- # }
752
- # end
753
- #
754
- # def test_journal2_nyu_aleph
755
- # # Journal 2
756
- # request = requests(:primo_journal2_request)
757
- # @primo_default.handle(request)
758
- # request.referent.referent_values.reset
759
- # request.dispatched_services.reset
760
- # request.service_types.reset
761
- # # record_id = request.referent.metadata["primo"]
762
- # assert_equal("Macomb", request.referent.metadata["place"]);
763
- # assert_equal("Center for Business and Economic Research, Western Illinois University]", request.referent.metadata["pub"]);
764
- # primo_sources = request.get_service_type('primo_source')
765
- # assert(1 <= primo_sources.length)
766
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
767
- # primo_source.handle(request)
768
- # request.dispatched_services.reset
769
- # request.service_types.reset
770
- # holdings = request.get_service_type('holding')
771
- # assert(1 <= holdings.length)
772
- # assert_equal(primo_sources.length, holdings.length)
773
- # assert_equal("NYU", holdings.first.view_data[:institution])
774
- # assert_equal("NYU Bobst", holdings.first.view_data[:library])
775
- # assert_equal("Main Collection", holdings.first.view_data[:id_one])
776
- # assert_equal("http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=002736245&sub_library=BOBST", holdings.first.view_data[:url])
777
- # assert_equal("(HB1 .J55 )", holdings.first.view_data[:id_two])
778
- # assert_equal("Check Availability", holdings.first.view_data[:status])
779
- # end
780
- #
781
- # def test_journal3_nyu_aleph
782
- # # Journal 3
783
- # request = requests(:primo_journal3_request)
784
- # @primo_default.handle(request)
785
- # request.referent.referent_values.reset
786
- # request.dispatched_services.reset
787
- # request.service_types.reset
788
- # # record_id = request.referent.metadata["primo"]
789
- # assert_equal("Sydney", request.referent.metadata["place"]);
790
- # assert_equal("Association for the Journal of Religious History]", request.referent.metadata["pub"]);
791
- # primo_sources = request.get_service_type('primo_source')
792
- # assert_equal(0, primo_sources.length)
793
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
794
- # primo_source.handle(request)
795
- # request.dispatched_services.reset
796
- # request.service_types.reset
797
- # holdings = request.get_service_type('holding')
798
- # assert_equal(0, holdings.length)
799
- # assert_equal(primo_sources.length, holdings.length)
800
- # end
801
- #
802
- # def test_journal4_nyu_aleph
803
- # # Journal 4
804
- # request = requests(:primo_journal4_request)
805
- # @primo_default.handle(request)
806
- # request.referent.referent_values.reset
807
- # request.dispatched_services.reset
808
- # request.service_types.reset
809
- # # record_id = request.referent.metadata["primo"]
810
- # assert_equal("Waltham, MA", request.referent.metadata["place"]);
811
- # assert_equal("Published for the Board by the Massachusetts Medical Society", request.referent.metadata["pub"]);
812
- # primo_sources = request.get_service_type('primo_source')
813
- # assert_equal(0, primo_sources.length)
814
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
815
- # primo_source.handle(request)
816
- # request.dispatched_services.reset
817
- # request.service_types.reset
818
- # holdings = request.get_service_type('holding')
819
- # assert_equal(0, holdings.length)
820
- # assert_equal(primo_sources.length, holdings.length)
821
- # end
822
- #
823
- # def test_journal5_nyu_aleph
824
- # request = requests(:primo_journal5_request)
825
- # @primo_default.handle(request)
826
- # request.referent.referent_values.reset
827
- # request.dispatched_services.reset
828
- # request.service_types.reset
829
- # # record_id = request.referent.metadata["primo"]
830
- # primo_sources = request.get_service_type('primo_source')
831
- # assert_equal(1, primo_sources.length)
832
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
833
- # primo_source.handle(request)
834
- # request.dispatched_services.reset
835
- # request.service_types.reset
836
- # holdings = request.get_service_type('holding')
837
- # assert_equal(1, holdings.length)
838
- # assert_equal(primo_sources.length, holdings.length)
839
- # end
840
- #
841
- # def test_bobst_genre_discrepancy
842
- # request = requests(:primo_bobst_problem1_request)
843
- # @primo_default.handle(request)
844
- # request.dispatched_services.reset
845
- # request.service_types.reset
846
- # primo_sources = request.get_service_type('primo_source')
847
- # assert_equal(
848
- # 1, primo_sources.length)
849
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
850
- # primo_source.handle(request)
851
- # request.dispatched_services.reset
852
- # request.service_types.reset
853
- # holdings = request.get_service_type('holding')
854
- # assert_equal(
855
- # 1, holdings.length)
856
- # test_data = {
857
- # :record_id => "nyu_aleph000509288",
858
- # :source_id => "nyu_aleph",
859
- # :original_source_id => "NYU01",
860
- # :source_record_id => "000509288",
861
- # :institution_code => "NYU",
862
- # :institution => "NYU",
863
- # :library_code => "BOBST",
864
- # :library => "NYU Bobst",
865
- # :status_code => "available",
866
- # :status => "Available",
867
- # :id_one => "Main Collection",
868
- # :id_two => "(ML410.J33 M47 2005a)",
869
- # :collection => "Main Collection",
870
- # :call_number => "(ML410.J33 M47 2005a)",
871
- # :origin => nil,
872
- # :display_type => "book",
873
- # :coverage => [],
874
- # :notes => "",
875
- # :url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000509288&sub_library=BOBST",
876
- # :request_url => "http://alephstage.library.nyu.edu/F?func=item-global&doc_library=NYU01&local_base=PRIMOCOMMON&doc_number=000509288&sub_library=BOBST",
877
- # :match_reliability => ServiceResponse::MatchExact,
878
- # :request_link_supports_ajax_call => true }
879
- # test_data.each { |key, value|
880
- # assert_equal(
881
- # value,
882
- # holdings.first.view_data[key],
883
- # "#{key} different than expected.")
884
- # }
885
- # source_data = {
886
- # :aleph_doc_library => "NYU01",
887
- # :aleph_sub_library => "NYU Bobst",
888
- # :aleph_sub_library_code => "BOBST",
889
- # :aleph_collection => "Main Collection",
890
- # :aleph_call_number => "(ML410.J33 M47 2005a)",
891
- # :aleph_doc_number => "000509288",
892
- # :aleph_url => "http://alephstage.library.nyu.edu",
893
- # :illiad_url => "http://illiaddev.library.nyu.edu",
894
- # :aleph_sub_library_code => "BOBST",
895
- # :aleph_item_id => "NYU50000509288000010",
896
- # :aleph_item_adm_library => "NYU50",
897
- # :aleph_item_sub_library_code => "BOBST",
898
- # :aleph_item_collection_code => "MAIN",
899
- # :aleph_item_doc_number => "000509288",
900
- # :aleph_item_sequence_number => "1.0",
901
- # :aleph_item_barcode => "31142045676163",
902
- # :aleph_item_status_code => "01",
903
- # :aleph_item_process_status_code => nil,
904
- # :aleph_item_circulation_status => "On Shelf",
905
- # :aleph_item_location => "ML410.J33&nbsp;M47 2005a",
906
- # :aleph_item_description => nil,
907
- # :aleph_item_hol_doc_number => "003227224"
908
- # }
909
- # source_data.each { |key, value|
910
- # assert_equal(
911
- # value,
912
- # holdings.first.view_data[:source_data][key],
913
- # "#{key} different than expected.")
914
- # }
915
- # end
916
- #
917
- # def test_critical_inquiry_bug
918
- # request = requests(:critical_inquiry_request)
919
- # @primo_default.handle(request)
920
- # request.dispatched_services.reset
921
- # request.service_types.reset
922
- # primo_sources = request.get_service_type('primo_source')
923
- # assert_equal(
924
- # 4, primo_sources.length)
925
- # primo_source = ServiceList.instance.instantiate!("NYU_Primo_Source", nil)
926
- # primo_source.handle(request)
927
- # request.dispatched_services.reset
928
- # request.service_types.reset
929
- # holdings = request.get_service_type('holding')
930
- # assert_equal(
931
- # 4, holdings.length)
932
- # end
933
- #
934
- # def test_sfx_owner_but_fulltext_empty
935
- # request = requests(:sfx_owner_but_fulltext_empty_request)
936
- # @primo_default.handle(request)
937
- # request.dispatched_services.reset
938
- # request.service_types.reset
939
- # fulltext = request.get_service_type('fulltext')
940
- # assert_equal(0, fulltext.length)
941
- # end
942
947
  end