enju_biblio 0.1.0.pre49 → 0.1.0.pre50

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 (121) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/agent_types_controller.rb +0 -1
  3. data/app/controllers/countries_controller.rb +0 -1
  4. data/app/controllers/create_types_controller.rb +0 -1
  5. data/app/controllers/extents_controller.rb +0 -1
  6. data/app/controllers/form_of_works_controller.rb +0 -1
  7. data/app/controllers/frequencies_controller.rb +0 -1
  8. data/app/controllers/languages_controller.rb +0 -1
  9. data/app/controllers/licenses_controller.rb +0 -1
  10. data/app/controllers/manifestation_relationship_types_controller.rb +0 -1
  11. data/app/controllers/manifestation_relationships_controller.rb +0 -1
  12. data/app/controllers/medium_of_performances_controller.rb +0 -1
  13. data/app/controllers/produce_types_controller.rb +0 -1
  14. data/app/controllers/realize_types_controller.rb +0 -1
  15. data/app/models/enju_biblio/ability.rb +3 -9
  16. data/app/views/manifestations/_form.html.erb +1 -1
  17. data/app/views/manifestations/_series_form.html.erb +127 -0
  18. data/app/views/manifestations/_show_detail_librarian.html.erb +2 -0
  19. data/app/views/manifestations/_show_detail_user.html.erb +2 -0
  20. data/app/views/manifestations/_show_series_detail.html.erb +6 -20
  21. data/config/locales/translation_en.yml +3 -2
  22. data/config/locales/translation_ja.yml +2 -1
  23. data/config/routes.rb +3 -3
  24. data/lib/enju_biblio/engine.rb +1 -1
  25. data/lib/enju_biblio/version.rb +1 -1
  26. data/spec/cassette_library/ImportRequest/import/should_import_bibliographic_record.yml +512 -501
  27. data/spec/cassette_library/ImportRequestsController/POST_create/When_logged_in_as_Administrator/with_isbn_which_is_already_imported/redirects_to_the_created_import_request.yml +80 -70
  28. data/spec/cassette_library/ImportRequestsController/POST_create/When_logged_in_as_Administrator/with_valid_params/assigns_a_newly_created_import_request_as_import_request.yml +81 -71
  29. data/spec/cassette_library/ImportRequestsController/POST_create/When_logged_in_as_Administrator/with_valid_params/redirects_to_the_created_import_request.yml +81 -71
  30. data/spec/cassette_library/ImportRequestsController/POST_create/When_logged_in_as_Librarian/with_valid_params/assigns_a_newly_created_import_request_as_import_request.yml +80 -70
  31. data/spec/cassette_library/ImportRequestsController/POST_create/When_logged_in_as_Librarian/with_valid_params/redirects_to_the_created_import_request.yml +79 -69
  32. data/spec/cassette_library/ResourceImportFile/when_its_mode_is_create_/when_it_has_only_isbn/should_be_imported.yml +470 -460
  33. data/spec/cassette_library/ResourceImportFile/when_its_mode_is_create_/when_it_is_written_in_shift_jis/should_be_imported.yml +292 -276
  34. data/spec/cassette_library/ResourceImportFile/when_its_mode_is_create_/when_it_is_written_in_utf-8/should_be_imported.yml +292 -276
  35. data/spec/controllers/agent_types_controller_spec.rb +107 -388
  36. data/spec/controllers/content_types_controller_spec.rb +106 -385
  37. data/spec/controllers/countries_controller_spec.rb +7 -7
  38. data/spec/controllers/extents_controller_spec.rb +106 -385
  39. data/spec/controllers/form_of_works_controller_spec.rb +107 -385
  40. data/spec/controllers/frequencies_controller_spec.rb +106 -385
  41. data/spec/controllers/languages_controller_spec.rb +6 -6
  42. data/spec/controllers/licenses_controller_spec.rb +106 -385
  43. data/spec/controllers/medium_of_performances_controller_spec.rb +106 -385
  44. data/spec/dummy/db/test.sqlite3 +0 -0
  45. data/spec/dummy/private/system/agent_import_files/agent_imports/000/000/004/original/agent_delete_file.tsv +8 -0
  46. data/spec/dummy/private/system/agent_import_files/agent_imports/000/000/004/original/agent_import_file_sample3.tsv +5 -0
  47. data/spec/dummy/private/system/agent_import_files/agent_imports/000/000/004/original/agent_update_file.tsv +3 -0
  48. data/spec/dummy/private/system/picture_files/pictures/000/000/005/medium/spinner.gif +0 -0
  49. data/spec/dummy/private/system/picture_files/pictures/000/000/005/original/spinner.gif +0 -0
  50. data/spec/dummy/private/system/picture_files/pictures/000/000/005/thumb/spinner.gif +0 -0
  51. data/spec/dummy/private/system/resource_import_files/resource_imports/000/000/004/original/isbn_sample.txt +3 -0
  52. data/spec/dummy/private/system/resource_import_files/resource_imports/000/000/004/original/item_delete_file.tsv +11 -0
  53. data/spec/dummy/private/system/resource_import_files/resource_imports/000/000/004/original/item_update_file.tsv +4 -0
  54. data/spec/dummy/private/system/resource_import_files/resource_imports/000/000/004/original/resource_import_file_sample1.tsv +19 -0
  55. data/spec/dummy/private/system/resource_import_files/resource_imports/000/000/004/original/resource_import_file_sample2.tsv +19 -0
  56. data/spec/dummy/private/system/resource_import_files/resource_imports/000/000/004/original/update_series_statement.tsv +2 -0
  57. data/spec/dummy/solr/test/data/index/segments.gen +0 -0
  58. data/spec/dummy/solr/test/data/index/segments_1b3 +0 -0
  59. data/spec/dummy/solr/test/data/tlog/{tlog.0000000000000000389 → tlog.0000000000000001688} +0 -0
  60. data/spec/dummy/solr/test/data/tlog/{tlog.0000000000000000390 → tlog.0000000000000001689} +0 -0
  61. data/spec/dummy/solr/test/data/tlog/{tlog.0000000000000000391 → tlog.0000000000000001690} +0 -0
  62. data/spec/dummy/solr/test/data/tlog/tlog.0000000000000001691 +0 -0
  63. data/spec/dummy/solr/test/data/tlog/tlog.0000000000000001692 +0 -0
  64. data/spec/dummy/solr/test/data/tlog/tlog.0000000000000001693 +0 -0
  65. data/spec/dummy/tmp/cache/4F7/F90/default_role +0 -0
  66. data/spec/dummy/tmp/cache/6E4/420/search_engine_all +0 -0
  67. data/spec/dummy/tmp/cache/assets/test/sprockets/0830400afa3009686c89dda6258bd75d +0 -0
  68. data/spec/dummy/tmp/cache/assets/test/sprockets/0ee396465e00d17664feec416aacd858 +0 -0
  69. data/spec/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  70. data/spec/dummy/tmp/cache/assets/test/sprockets/1555daca1ffdb4f1dbea6b81613a6dd0 +0 -0
  71. data/spec/dummy/tmp/cache/assets/test/sprockets/2f332119f883fdd68340b5b3a1079d3f +0 -0
  72. data/spec/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  73. data/spec/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  74. data/spec/dummy/tmp/cache/assets/test/sprockets/41967b168e9b1bbeda476591dad80257 +0 -0
  75. data/spec/dummy/tmp/cache/assets/test/sprockets/4b298aca2f28a3547e6865794468d90c +0 -0
  76. data/spec/dummy/tmp/cache/assets/test/sprockets/4facf54d58d89accb1176284157ae74d +0 -0
  77. data/spec/dummy/tmp/cache/assets/test/sprockets/518a573cb9468335bfe3ebde3696755d +0 -0
  78. data/spec/dummy/tmp/cache/assets/test/sprockets/5c7fbc78c580dd8592a994e875ae928c +0 -0
  79. data/spec/dummy/tmp/cache/assets/test/sprockets/c1a4d979d844b4bfa222a268acbdfcac +0 -0
  80. data/spec/dummy/tmp/cache/assets/test/sprockets/c45932b8beef81cc3ed460679239a0e0 +0 -0
  81. data/spec/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  82. data/spec/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  83. data/spec/dummy/tmp/cache/assets/test/sprockets/eac0985173184e3c4a1fdabeca4673a0 +0 -0
  84. data/spec/dummy/tmp/cache/assets/test/sprockets/eaf86421a990484c49be01e9af85c061 +0 -0
  85. data/spec/dummy/tmp/cache/assets/test/sprockets/f206beea95d427cdde150003c8bd3253 +0 -0
  86. data/spec/dummy/tmp/cache/assets/test/sprockets/f3ab79106bf7c705cff60f636a7d8b26 +0 -0
  87. data/spec/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  88. data/spec/models/resource_import_file_spec.rb +5 -2
  89. metadata +164 -151
  90. data/spec/dummy/solr/test/data/index/_7n.fdt +0 -0
  91. data/spec/dummy/solr/test/data/index/_7n.fdx +0 -0
  92. data/spec/dummy/solr/test/data/index/_7n.fnm +0 -0
  93. data/spec/dummy/solr/test/data/index/_7n.nvd +0 -0
  94. data/spec/dummy/solr/test/data/index/_7n.nvm +0 -0
  95. data/spec/dummy/solr/test/data/index/_7n.si +0 -0
  96. data/spec/dummy/solr/test/data/index/_7n_Lucene41_0.doc +0 -0
  97. data/spec/dummy/solr/test/data/index/_7n_Lucene41_0.pos +0 -0
  98. data/spec/dummy/solr/test/data/index/_7n_Lucene41_0.tim +0 -0
  99. data/spec/dummy/solr/test/data/index/_7n_Lucene41_0.tip +0 -0
  100. data/spec/dummy/solr/test/data/index/_7o.fdt +0 -0
  101. data/spec/dummy/solr/test/data/index/_7o.fdx +0 -0
  102. data/spec/dummy/solr/test/data/index/_7o.fnm +0 -0
  103. data/spec/dummy/solr/test/data/index/_7o.nvd +0 -0
  104. data/spec/dummy/solr/test/data/index/_7o.nvm +0 -0
  105. data/spec/dummy/solr/test/data/index/_7o.si +0 -0
  106. data/spec/dummy/solr/test/data/index/_7o_Lucene41_0.doc +0 -0
  107. data/spec/dummy/solr/test/data/index/_7o_Lucene41_0.pos +0 -0
  108. data/spec/dummy/solr/test/data/index/_7o_Lucene41_0.tim +0 -0
  109. data/spec/dummy/solr/test/data/index/_7o_Lucene41_0.tip +0 -0
  110. data/spec/dummy/solr/test/data/index/_7p.fdt +0 -0
  111. data/spec/dummy/solr/test/data/index/_7p.fdx +0 -0
  112. data/spec/dummy/solr/test/data/index/_7p.fnm +0 -0
  113. data/spec/dummy/solr/test/data/index/_7p.nvd +0 -0
  114. data/spec/dummy/solr/test/data/index/_7p.nvm +0 -0
  115. data/spec/dummy/solr/test/data/index/_7p.si +0 -0
  116. data/spec/dummy/solr/test/data/index/_7p_Lucene41_0.doc +0 -0
  117. data/spec/dummy/solr/test/data/index/_7p_Lucene41_0.pos +0 -0
  118. data/spec/dummy/solr/test/data/index/_7p_Lucene41_0.tim +0 -0
  119. data/spec/dummy/solr/test/data/index/_7p_Lucene41_0.tip +0 -0
  120. data/spec/dummy/solr/test/data/index/segments_ax +0 -0
  121. data/spec/dummy/tmp/cache/ACB/B20/manifestation_search_total +0 -1
@@ -1,445 +1,166 @@
1
1
  require 'spec_helper'
2
- require 'sunspot/rails/spec_helper'
2
+
3
+ # This spec was generated by rspec-rails when you ran the scaffold generator.
4
+ # It demonstrates how one might use RSpec to specify the controller code that
5
+ # was generated by Rails when you ran the scaffold generator.
6
+ #
7
+ # It assumes that the implementation code is generated by the rails scaffold
8
+ # generator. If you are using any extension libraries to generate different
9
+ # controller code, this generated spec may or may not pass.
10
+ #
11
+ # It only uses APIs available in rails and/or rspec-rails. There are a number
12
+ # of tools you can use to make these specs even more expressive, but we're
13
+ # sticking to rails and rspec-rails APIs to keep things simple and stable.
14
+ #
15
+ # Compared to earlier versions of this generator, there is very limited use of
16
+ # stubs and message expectations in this spec. Stubs are only used when there
17
+ # is no simpler way to get a handle on the object needed for the example.
18
+ # Message expectations are only used when there is no simpler way to specify
19
+ # that an instance is receiving a specific message.
3
20
 
4
21
  describe MediumOfPerformancesController do
5
- fixtures :all
6
- disconnect_sunspot
22
+ login_admin
7
23
 
24
+ # This should return the minimal set of attributes required to create a valid
25
+ # MediumOfPerformance. As you add validations to MediumOfPerformance, be sure to
26
+ # update the return value of this method accordingly.
8
27
  def valid_attributes
9
28
  FactoryGirl.attributes_for(:medium_of_performance)
10
29
  end
11
30
 
12
31
  describe "GET index" do
13
- before(:each) do
14
- FactoryGirl.create(:medium_of_performance)
15
- end
16
-
17
- describe "When logged in as Administrator" do
18
- login_admin
19
-
20
- it "assigns all medium_of_performances as @medium_of_performances" do
21
- get :index
22
- assigns(:medium_of_performances).should eq(MediumOfPerformance.all)
23
- end
24
- end
25
-
26
- describe "When logged in as Librarian" do
27
- login_librarian
28
-
29
- it "assigns all medium_of_performances as @medium_of_performances" do
30
- get :index
31
- assigns(:medium_of_performances).should eq(MediumOfPerformance.all)
32
- end
33
- end
34
-
35
- describe "When logged in as User" do
36
- login_user
37
-
38
- it "assigns all medium_of_performances as @medium_of_performances" do
39
- get :index
40
- assigns(:medium_of_performances).should eq(MediumOfPerformance.all)
41
- end
42
- end
43
-
44
- describe "When not logged in" do
45
- it "assigns all medium_of_performances as @medium_of_performances" do
46
- get :index
47
- assigns(:medium_of_performances).should eq(MediumOfPerformance.all)
48
- end
32
+ it "assigns all medium_of_performances as @medium_of_performances" do
33
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
34
+ get :index
35
+ assigns(:medium_of_performances).should eq(MediumOfPerformance.all)
49
36
  end
50
37
  end
51
38
 
52
39
  describe "GET show" do
53
- describe "When logged in as Administrator" do
54
- login_admin
55
-
56
- it "assigns the requested medium_of_performance as @medium_of_performance" do
57
- medium_of_performance = FactoryGirl.create(:medium_of_performance)
58
- get :show, :id => medium_of_performance.id
59
- assigns(:medium_of_performance).should eq(medium_of_performance)
60
- end
61
- end
62
-
63
- describe "When logged in as Librarian" do
64
- login_librarian
65
-
66
- it "assigns the requested medium_of_performance as @medium_of_performance" do
67
- medium_of_performance = FactoryGirl.create(:medium_of_performance)
68
- get :show, :id => medium_of_performance.id
69
- assigns(:medium_of_performance).should eq(medium_of_performance)
70
- end
71
- end
72
-
73
- describe "When logged in as User" do
74
- login_user
75
-
76
- it "assigns the requested medium_of_performance as @medium_of_performance" do
77
- medium_of_performance = FactoryGirl.create(:medium_of_performance)
78
- get :show, :id => medium_of_performance.id
79
- assigns(:medium_of_performance).should eq(medium_of_performance)
80
- end
81
- end
82
-
83
- describe "When not logged in" do
84
- it "assigns the requested medium_of_performance as @medium_of_performance" do
85
- medium_of_performance = FactoryGirl.create(:medium_of_performance)
86
- get :show, :id => medium_of_performance.id
87
- assigns(:medium_of_performance).should eq(medium_of_performance)
88
- end
40
+ it "assigns the requested medium_of_performance as @medium_of_performance" do
41
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
42
+ get :show, :id => medium_of_performance.id
43
+ assigns(:medium_of_performance).should eq(medium_of_performance)
89
44
  end
90
45
  end
91
46
 
92
47
  describe "GET new" do
93
- describe "When logged in as Administrator" do
94
- login_admin
95
-
96
- it "assigns the requested medium_of_performance as @medium_of_performance" do
97
- get :new
98
- assigns(:medium_of_performance).should_not be_valid
99
- response.should be_forbidden
100
- end
101
- end
102
-
103
- describe "When logged in as Librarian" do
104
- login_librarian
105
-
106
- it "should not assign the requested medium_of_performance as @medium_of_performance" do
107
- get :new
108
- assigns(:medium_of_performance).should_not be_valid
109
- response.should be_forbidden
110
- end
111
- end
112
-
113
- describe "When logged in as User" do
114
- login_user
115
-
116
- it "should not assign the requested medium_of_performance as @medium_of_performance" do
117
- get :new
118
- assigns(:medium_of_performance).should_not be_valid
119
- response.should be_forbidden
120
- end
121
- end
122
-
123
- describe "When not logged in" do
124
- it "should not assign the requested medium_of_performance as @medium_of_performance" do
125
- get :new
126
- assigns(:medium_of_performance).should_not be_valid
127
- response.should redirect_to(new_user_session_url)
128
- end
48
+ it "assigns a new medium_of_performance as @medium_of_performance" do
49
+ get :new
50
+ assigns(:medium_of_performance).should be_a_new(MediumOfPerformance)
129
51
  end
130
52
  end
131
53
 
132
54
  describe "GET edit" do
133
- describe "When logged in as Administrator" do
134
- login_admin
135
-
136
- it "assigns the requested medium_of_performance as @medium_of_performance" do
137
- medium_of_performance = FactoryGirl.create(:medium_of_performance)
138
- get :edit, :id => medium_of_performance.id
139
- assigns(:medium_of_performance).should eq(medium_of_performance)
140
- end
141
- end
142
-
143
- describe "When logged in as Librarian" do
144
- login_librarian
145
-
146
- it "assigns the requested medium_of_performance as @medium_of_performance" do
147
- medium_of_performance = FactoryGirl.create(:medium_of_performance)
148
- get :edit, :id => medium_of_performance.id
149
- response.should be_forbidden
150
- end
151
- end
152
-
153
- describe "When logged in as User" do
154
- login_user
155
-
156
- it "assigns the requested medium_of_performance as @medium_of_performance" do
157
- medium_of_performance = FactoryGirl.create(:medium_of_performance)
158
- get :edit, :id => medium_of_performance.id
159
- response.should be_forbidden
160
- end
161
- end
162
-
163
- describe "When not logged in" do
164
- it "should not assign the requested medium_of_performance as @medium_of_performance" do
165
- medium_of_performance = FactoryGirl.create(:medium_of_performance)
166
- get :edit, :id => medium_of_performance.id
167
- response.should redirect_to(new_user_session_url)
168
- end
55
+ it "assigns the requested medium_of_performance as @medium_of_performance" do
56
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
57
+ get :edit, :id => medium_of_performance.id
58
+ assigns(:medium_of_performance).should eq(medium_of_performance)
169
59
  end
170
60
  end
171
61
 
172
62
  describe "POST create" do
173
- before(:each) do
174
- @attrs = valid_attributes
175
- @invalid_attrs = {:name => ''}
176
- end
177
-
178
- describe "When logged in as Administrator" do
179
- login_admin
180
-
181
- describe "with valid params" do
182
- it "assigns a newly created medium_of_performance as @medium_of_performance" do
183
- post :create, :medium_of_performance => @attrs
184
- assigns(:medium_of_performance).should be_valid
185
- end
186
-
187
- it "should be forbidden" do
188
- post :create, :medium_of_performance => @attrs
189
- response.should be_forbidden
190
- end
63
+ describe "with valid params" do
64
+ it "creates a new MediumOfPerformance" do
65
+ expect {
66
+ post :create, :medium_of_performance => valid_attributes
67
+ }.to change(MediumOfPerformance, :count).by(1)
191
68
  end
192
69
 
193
- describe "with invalid params" do
194
- it "assigns a newly created but unsaved medium_of_performance as @medium_of_performance" do
195
- post :create, :medium_of_performance => @invalid_attrs
196
- assigns(:medium_of_performance).should_not be_valid
197
- end
198
-
199
- it "should be forbidden" do
200
- post :create, :medium_of_performance => @invalid_attrs
201
- response.should be_forbidden
202
- end
70
+ it "assigns a newly created medium_of_performance as @medium_of_performance" do
71
+ post :create, :medium_of_performance => valid_attributes
72
+ assigns(:medium_of_performance).should be_a(MediumOfPerformance)
73
+ assigns(:medium_of_performance).should be_persisted
203
74
  end
204
- end
205
75
 
206
- describe "When logged in as Librarian" do
207
- login_librarian
208
-
209
- describe "with valid params" do
210
- it "assigns a newly created medium_of_performance as @medium_of_performance" do
211
- post :create, :medium_of_performance => @attrs
212
- assigns(:medium_of_performance).should be_valid
213
- end
214
-
215
- it "should be forbidden" do
216
- post :create, :medium_of_performance => @attrs
217
- response.should be_forbidden
218
- end
219
- end
220
-
221
- describe "with invalid params" do
222
- it "assigns a newly created but unsaved medium_of_performance as @medium_of_performance" do
223
- post :create, :medium_of_performance => @invalid_attrs
224
- assigns(:medium_of_performance).should_not be_valid
225
- end
226
-
227
- it "should be forbidden" do
228
- post :create, :medium_of_performance => @invalid_attrs
229
- response.should be_forbidden
230
- end
76
+ it "redirects to the created medium_of_performance" do
77
+ post :create, :medium_of_performance => valid_attributes
78
+ response.should redirect_to(MediumOfPerformance.last)
231
79
  end
232
80
  end
233
81
 
234
- describe "When logged in as User" do
235
- login_user
236
-
237
- describe "with valid params" do
238
- it "assigns a newly created medium_of_performance as @medium_of_performance" do
239
- post :create, :medium_of_performance => @attrs
240
- assigns(:medium_of_performance).should be_valid
241
- end
242
-
243
- it "should be forbidden" do
244
- post :create, :medium_of_performance => @attrs
245
- response.should be_forbidden
246
- end
82
+ describe "with invalid params" do
83
+ it "assigns a newly created but unsaved medium_of_performance as @medium_of_performance" do
84
+ # Trigger the behavior that occurs when invalid params are submitted
85
+ MediumOfPerformance.any_instance.stub(:save).and_return(false)
86
+ post :create, :medium_of_performance => {}
87
+ assigns(:medium_of_performance).should be_a_new(MediumOfPerformance)
247
88
  end
248
89
 
249
- describe "with invalid params" do
250
- it "assigns a newly created but unsaved medium_of_performance as @medium_of_performance" do
251
- post :create, :medium_of_performance => @invalid_attrs
252
- assigns(:medium_of_performance).should_not be_valid
253
- end
254
-
255
- it "should be forbidden" do
256
- post :create, :medium_of_performance => @invalid_attrs
257
- response.should be_forbidden
258
- end
259
- end
260
- end
261
-
262
- describe "When not logged in" do
263
- describe "with valid params" do
264
- it "assigns a newly created medium_of_performance as @medium_of_performance" do
265
- post :create, :medium_of_performance => @attrs
266
- assigns(:medium_of_performance).should be_valid
267
- end
268
-
269
- it "should be forbidden" do
270
- post :create, :medium_of_performance => @attrs
271
- response.should redirect_to(new_user_session_url)
272
- end
273
- end
274
-
275
- describe "with invalid params" do
276
- it "assigns a newly created but unsaved medium_of_performance as @medium_of_performance" do
277
- post :create, :medium_of_performance => @invalid_attrs
278
- assigns(:medium_of_performance).should_not be_valid
279
- end
280
-
281
- it "should be forbidden" do
282
- post :create, :medium_of_performance => @invalid_attrs
283
- response.should redirect_to(new_user_session_url)
284
- end
90
+ it "re-renders the 'new' template" do
91
+ # Trigger the behavior that occurs when invalid params are submitted
92
+ MediumOfPerformance.any_instance.stub(:save).and_return(false)
93
+ post :create, :medium_of_performance => {}
94
+ #response.should render_template("new")
285
95
  end
286
96
  end
287
97
  end
288
98
 
289
99
  describe "PUT update" do
290
- before(:each) do
291
- @medium_of_performance = FactoryGirl.create(:medium_of_performance)
292
- @attrs = valid_attributes
293
- @invalid_attrs = {:name => ''}
294
- end
295
-
296
- describe "When logged in as Administrator" do
297
- login_admin
298
-
299
- describe "with valid params" do
300
- it "updates the requested medium_of_performance" do
301
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @attrs
302
- end
303
-
304
- it "assigns the requested medium_of_performance as @medium_of_performance" do
305
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @attrs
306
- assigns(:medium_of_performance).should eq(@medium_of_performance)
307
- end
308
-
309
- it "moves its position when specified" do
310
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @attrs, :move => 'lower'
311
- response.should redirect_to(medium_of_performances_url)
312
- end
100
+ describe "with valid params" do
101
+ it "updates the requested medium_of_performance" do
102
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
103
+ # Assuming there are no other medium_of_performances in the database, this
104
+ # specifies that the MediumOfPerformance created on the previous line
105
+ # receives the :update_attributes message with whatever params are
106
+ # submitted in the request.
107
+ MediumOfPerformance.any_instance.should_receive(:update_attributes).with({'these' => 'params'})
108
+ put :update, :id => medium_of_performance.id, :medium_of_performance => {'these' => 'params'}
313
109
  end
314
110
 
315
- describe "with invalid params" do
316
- it "assigns the requested medium_of_performance as @medium_of_performance" do
317
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @invalid_attrs
318
- response.should render_template("edit")
319
- end
320
- end
321
- end
322
-
323
- describe "When logged in as Librarian" do
324
- login_librarian
325
-
326
- describe "with valid params" do
327
- it "updates the requested medium_of_performance" do
328
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @attrs
329
- end
330
-
331
- it "assigns the requested medium_of_performance as @medium_of_performance" do
332
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @attrs
333
- assigns(:medium_of_performance).should eq(@medium_of_performance)
334
- response.should be_forbidden
335
- end
336
- end
337
-
338
- describe "with invalid params" do
339
- it "assigns the requested medium_of_performance as @medium_of_performance" do
340
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @invalid_attrs
341
- response.should be_forbidden
342
- end
111
+ it "assigns the requested medium_of_performance as @medium_of_performance" do
112
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
113
+ put :update, :id => medium_of_performance.id, :medium_of_performance => valid_attributes
114
+ assigns(:medium_of_performance).should eq(medium_of_performance)
343
115
  end
344
- end
345
-
346
- describe "When logged in as User" do
347
- login_user
348
-
349
- describe "with valid params" do
350
- it "updates the requested medium_of_performance" do
351
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @attrs
352
- end
353
116
 
354
- it "assigns the requested medium_of_performance as @medium_of_performance" do
355
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @attrs
356
- assigns(:medium_of_performance).should eq(@medium_of_performance)
357
- response.should be_forbidden
358
- end
117
+ it "redirects to the medium_of_performance" do
118
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
119
+ put :update, :id => medium_of_performance.id, :medium_of_performance => valid_attributes
120
+ response.should redirect_to(medium_of_performance)
359
121
  end
360
122
 
361
- describe "with invalid params" do
362
- it "assigns the requested medium_of_performance as @medium_of_performance" do
363
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @invalid_attrs
364
- response.should be_forbidden
365
- end
123
+ it "moves its position when specified" do
124
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
125
+ position = medium_of_performance.position
126
+ put :update, :id => medium_of_performance.id, :move => 'higher'
127
+ response.should redirect_to medium_of_performances_url
128
+ assigns(:medium_of_performance).position.should eq position - 1
366
129
  end
367
130
  end
368
131
 
369
- describe "When not logged in" do
370
- describe "with valid params" do
371
- it "updates the requested medium_of_performance" do
372
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @attrs
373
- end
374
-
375
- it "should be forbidden" do
376
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @attrs
377
- response.should redirect_to(new_user_session_url)
378
- end
132
+ describe "with invalid params" do
133
+ it "assigns the medium_of_performance as @medium_of_performance" do
134
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
135
+ # Trigger the behavior that occurs when invalid params are submitted
136
+ MediumOfPerformance.any_instance.stub(:save).and_return(false)
137
+ put :update, :id => medium_of_performance.id, :medium_of_performance => {}
138
+ assigns(:medium_of_performance).should eq(medium_of_performance)
379
139
  end
380
140
 
381
- describe "with invalid params" do
382
- it "assigns the requested medium_of_performance as @medium_of_performance" do
383
- put :update, :id => @medium_of_performance.id, :medium_of_performance => @invalid_attrs
384
- response.should redirect_to(new_user_session_url)
385
- end
141
+ it "re-renders the 'edit' template" do
142
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
143
+ # Trigger the behavior that occurs when invalid params are submitted
144
+ MediumOfPerformance.any_instance.stub(:save).and_return(false)
145
+ put :update, :id => medium_of_performance.id, :medium_of_performance => {}
146
+ #response.should render_template("edit")
386
147
  end
387
148
  end
388
149
  end
389
150
 
390
151
  describe "DELETE destroy" do
391
- before(:each) do
392
- @medium_of_performance = FactoryGirl.create(:medium_of_performance)
393
- end
394
-
395
- describe "When logged in as Administrator" do
396
- login_admin
397
-
398
- it "destroys the requested medium_of_performance" do
399
- delete :destroy, :id => @medium_of_performance.id
400
- end
401
-
402
- it "should be forbidden" do
403
- delete :destroy, :id => @medium_of_performance.id
404
- response.should be_forbidden
405
- end
152
+ it "destroys the requested medium_of_performance" do
153
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
154
+ expect {
155
+ delete :destroy, :id => medium_of_performance.id
156
+ }.to change(MediumOfPerformance, :count).by(-1)
406
157
  end
407
158
 
408
- describe "When logged in as Librarian" do
409
- login_librarian
410
-
411
- it "destroys the requested medium_of_performance" do
412
- delete :destroy, :id => @medium_of_performance.id
413
- end
414
-
415
- it "should be forbidden" do
416
- delete :destroy, :id => @medium_of_performance.id
417
- response.should be_forbidden
418
- end
419
- end
420
-
421
- describe "When logged in as User" do
422
- login_user
423
-
424
- it "destroys the requested medium_of_performance" do
425
- delete :destroy, :id => @medium_of_performance.id
426
- end
427
-
428
- it "should be forbidden" do
429
- delete :destroy, :id => @medium_of_performance.id
430
- response.should be_forbidden
431
- end
432
- end
433
-
434
- describe "When not logged in" do
435
- it "destroys the requested medium_of_performance" do
436
- delete :destroy, :id => @medium_of_performance.id
437
- end
438
-
439
- it "should be forbidden" do
440
- delete :destroy, :id => @medium_of_performance.id
441
- response.should redirect_to(new_user_session_url)
442
- end
159
+ it "redirects to the medium_of_performances list" do
160
+ medium_of_performance = MediumOfPerformance.create! valid_attributes
161
+ delete :destroy, :id => medium_of_performance.id
162
+ response.should redirect_to(medium_of_performances_url)
443
163
  end
444
164
  end
165
+
445
166
  end