enju_inventory 0.1.11.pre9 → 0.1.11.pre10
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.
- checksums.yaml +4 -4
- data/app/controllers/inventories_controller.rb +73 -3
- data/app/views/inventories/edit.html.erb +2 -2
- data/app/views/inventories/index.html.erb +2 -2
- data/app/views/inventories/new.html.erb +2 -2
- data/app/views/inventories/show.html.erb +2 -2
- data/app/views/inventory_files/edit.html.erb +2 -2
- data/app/views/inventory_files/index.html.erb +3 -3
- data/app/views/inventory_files/new.html.erb +2 -2
- data/app/views/inventory_files/show.html.erb +3 -3
- data/lib/enju_inventory/engine.rb +1 -2
- data/lib/enju_inventory/version.rb +1 -1
- data/spec/controllers/inventories_controller_spec.rb +40 -37
- data/spec/controllers/inventory_files_controller_spec.rb +56 -62
- data/spec/dummy/app/models/user.rb +5 -25
- data/spec/dummy/db/development.sqlite3 +0 -0
- data/spec/dummy/db/migrate/001_create_agents.rb +50 -0
- data/spec/dummy/db/migrate/002_devise_create_users.rb +46 -0
- data/spec/dummy/db/migrate/005_create_manifestations.rb +44 -0
- data/spec/dummy/db/migrate/006_create_items.rb +1 -12
- data/spec/dummy/db/migrate/012_create_owns.rb +12 -0
- data/spec/dummy/db/migrate/015_create_creates.rb +12 -0
- data/spec/dummy/db/migrate/041_create_roles.rb +13 -0
- data/spec/dummy/db/migrate/047_create_produces.rb +12 -0
- data/spec/dummy/db/migrate/059_create_libraries.rb +28 -0
- data/spec/dummy/db/migrate/069_create_shelves.rb +15 -0
- data/spec/dummy/db/migrate/073_create_carrier_types.rb +11 -0
- data/spec/dummy/db/migrate/077_create_user_groups.rb +12 -0
- data/spec/dummy/db/migrate/080_create_library_groups.rb +0 -1
- data/spec/dummy/db/migrate/112_create_frequencies.rb +12 -0
- data/spec/dummy/db/migrate/117_create_form_of_works.rb +12 -0
- data/spec/dummy/db/migrate/120_create_baskets.rb +12 -0
- data/spec/dummy/db/migrate/124_create_bookstores.rb +17 -0
- data/spec/dummy/db/migrate/125_create_donates.rb +12 -0
- data/spec/dummy/db/migrate/130_create_request_status_types.rb +12 -0
- data/spec/dummy/db/migrate/131_create_request_types.rb +12 -0
- data/spec/dummy/db/migrate/20080830154109_create_realizes.rb +13 -0
- data/spec/dummy/db/migrate/20080830172106_create_exemplifies.rb +13 -0
- data/spec/dummy/db/migrate/20080905191442_create_agent_types.rb +12 -0
- data/spec/dummy/db/migrate/20081006090811_create_subscriptions.rb +17 -0
- data/spec/dummy/db/migrate/20081006093246_create_subscribes.rb +14 -0
- data/spec/dummy/db/migrate/20081023092436_create_search_engines.rb +17 -0
- data/spec/dummy/db/migrate/20081025083323_create_countries.rb +28 -0
- data/spec/dummy/db/migrate/20081025083905_create_languages.rb +23 -0
- data/spec/dummy/db/migrate/20081027150907_create_picture_files.rb +15 -0
- data/spec/dummy/db/migrate/20081028083142_create_agent_import_files.rb +20 -0
- data/spec/dummy/db/migrate/20081028083208_create_resource_import_files.rb +20 -0
- data/spec/dummy/db/migrate/20090705133942_add_attachments_picture_to_picture_file.rb +15 -0
- data/spec/dummy/db/migrate/20090705212043_add_attachments_attachment_to_manifestation.rb +15 -0
- data/spec/dummy/db/migrate/20090719201843_create_extents.rb +12 -0
- data/spec/dummy/db/migrate/20090720091106_create_medium_of_performances.rb +12 -0
- data/spec/dummy/db/migrate/20090720091429_create_content_types.rb +12 -0
- data/spec/dummy/db/migrate/20090812151902_create_agent_relationship_types.rb +12 -0
- data/spec/dummy/db/migrate/20091012101112_add_dcndl_schema.rb +27 -0
- data/spec/dummy/db/migrate/20091025080447_create_licenses.rb +12 -0
- data/spec/dummy/db/migrate/20091202124834_create_versions.rb +18 -0
- data/spec/dummy/db/migrate/20091214131723_create_series_statements.rb +13 -0
- data/spec/dummy/db/migrate/20100129142347_create_import_requests.rb +14 -0
- data/spec/dummy/db/migrate/20100223121519_rename_series_statement_title_to_original_title.rb +13 -0
- data/spec/dummy/db/migrate/20100314190054_add_opening_hour_to_library.rb +9 -0
- data/spec/dummy/db/migrate/20100321235924_add_series_statement_identifier_to_series_statement.rb +10 -0
- data/spec/dummy/db/migrate/20100525124311_create_manifestation_relationships.rb +13 -0
- data/spec/dummy/db/migrate/{20111201163718_create_user_has_roles.rb → 20100606065209_create_user_has_roles.rb} +2 -0
- data/spec/dummy/db/migrate/20100606073747_create_agent_relationships.rb +13 -0
- data/spec/dummy/db/migrate/20100607044753_create_manifestation_relationship_types.rb +12 -0
- data/spec/dummy/db/migrate/20100814091104_add_position_to_agent_relationship.rb +11 -0
- data/spec/dummy/db/migrate/20100925043847_create_resource_import_results.rb +15 -0
- data/spec/dummy/db/migrate/20100925074559_create_agent_import_results.rb +11 -0
- data/spec/dummy/db/migrate/20101212070145_add_acquired_at_to_item.rb +9 -0
- data/spec/dummy/db/migrate/20110301035123_add_pub_date_to_manifestation.rb +9 -0
- data/spec/dummy/db/migrate/20110301121550_add_birth_date_and_death_date_to_agent.rb +11 -0
- data/spec/dummy/db/migrate/20110318183304_add_valid_period_for_new_user_to_user_group.rb +11 -0
- data/spec/dummy/db/migrate/20110603184217_add_edit_mode_to_resource_import_file.rb +9 -0
- data/spec/dummy/db/migrate/20110619064807_add_edition_string_to_manifestation.rb +9 -0
- data/spec/dummy/db/migrate/20110620173525_add_bookstore_id_to_item.rb +11 -0
- data/spec/dummy/db/migrate/20110627034940_create_series_statement_merge_lists.rb +9 -0
- data/spec/dummy/db/migrate/20110627035057_create_series_statement_merges.rb +12 -0
- data/spec/dummy/db/migrate/20110916091020_add_volume_number_to_manifestation.rb +13 -0
- data/spec/dummy/db/migrate/20110916103953_add_manifestaiton_id_to_series_statement.rb +10 -0
- data/spec/dummy/db/migrate/20110918162329_add_note_to_series_statement.rb +9 -0
- data/spec/dummy/db/migrate/{20111201121844_create_roles.rb → 20111124110059_create_create_types.rb} +2 -2
- data/spec/dummy/db/migrate/20111124110319_create_realize_types.rb +12 -0
- data/spec/dummy/db/migrate/20111124110355_create_produce_types.rb +12 -0
- data/spec/dummy/db/migrate/20111124112131_add_create_type_to_create.rb +7 -0
- data/spec/dummy/db/migrate/20120105074911_add_isil_to_library.rb +5 -0
- data/spec/dummy/db/migrate/20120125152919_add_title_subseries_transcription_to_series_statement.rb +6 -0
- data/spec/dummy/db/migrate/20120129014038_create_budget_types.rb +12 -0
- data/spec/dummy/db/migrate/20120129020544_add_budget_type_id_to_item.rb +6 -0
- data/spec/dummy/db/migrate/20120319120638_add_content_type_id_to_manifestation.rb +6 -0
- data/spec/dummy/db/migrate/20120319173203_create_accepts.rb +14 -0
- data/spec/dummy/db/migrate/20120410104851_add_year_of_publication_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20120413072700_add_picture_meta_to_picture_file.rb +5 -0
- data/spec/dummy/db/migrate/20120413100352_add_fingerprint_to_picture_file.rb +5 -0
- data/spec/dummy/db/migrate/20120413161340_add_fingerprint_to_resource_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20120413161403_add_fingerprint_to_agent_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20120413170705_add_error_message_to_resource_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20120413170720_add_error_message_to_agent_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20120415164821_add_attachment_meta_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20120418081407_add_month_of_publication_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20120510140958_add_closed_to_shelf.rb +5 -0
- data/spec/dummy/db/migrate/20120511072422_add_agent_identifier_to_agent.rb +6 -0
- data/spec/dummy/db/migrate/20120602141129_add_edit_mode_to_agent_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20121116031206_add_fulltext_content_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20121116033446_add_doi_to_manifestation.rb +6 -0
- data/spec/dummy/db/migrate/20130221154434_add_additional_attributes_to_user.rb +16 -0
- data/spec/dummy/db/migrate/20130412083556_add_latitude_and_longitude_to_library.rb +6 -0
- data/spec/dummy/db/migrate/20130421093852_add_periodical_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20130421155019_add_creator_string_to_series_statement.rb +7 -0
- data/spec/dummy/db/migrate/20130421164124_add_series_master_to_series_statement.rb +5 -0
- data/spec/dummy/db/migrate/20130429020822_add_root_manifestation_id_to_series_statement.rb +6 -0
- data/spec/dummy/db/migrate/20130506175303_create_identifier_types.rb +12 -0
- data/spec/dummy/db/migrate/20130506175834_create_identifiers.rb +15 -0
- data/spec/dummy/db/migrate/20130509185724_add_statement_of_responsibility_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20140110122216_create_user_import_files.rb +18 -0
- data/spec/dummy/db/migrate/20140110131010_create_user_import_results.rb +11 -0
- data/spec/dummy/db/migrate/20140122054321_create_profiles.rb +20 -0
- data/spec/dummy/db/migrate/20140519170214_create_resource_import_file_transitions.rb +14 -0
- data/spec/dummy/db/migrate/20140519171220_create_import_request_transitions.rb +14 -0
- data/spec/dummy/db/migrate/20140524020735_create_agent_import_file_transitions.rb +14 -0
- data/spec/dummy/db/migrate/20140524074813_create_user_import_file_transitions.rb +14 -0
- data/spec/dummy/db/migrate/20140610123439_drop_email_unique_constraint_enju_leaf_rc10.rb +11 -0
- data/spec/dummy/db/migrate/20140614065404_create_resource_export_files.rb +11 -0
- data/spec/dummy/db/migrate/20140614141500_create_resource_export_file_transitions.rb +14 -0
- data/spec/dummy/db/migrate/20140628072217_add_user_encoding_to_user_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20140628073524_add_user_encoding_to_agent_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20140628073535_add_user_encoding_to_resource_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20140709113413_create_user_export_files.rb +11 -0
- data/spec/dummy/db/migrate/20140709113905_create_user_export_file_transitions.rb +14 -0
- data/spec/dummy/db/migrate/20140720140916_add_binding_item_identifier_to_item.rb +8 -0
- data/spec/dummy/db/migrate/20140720170714_add_default_library_id_to_user_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20140720170735_add_default_user_group_id_to_user_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20140721151416_add_default_shelf_id_to_resource_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20140802082007_add_manifestation_id_to_item.rb +6 -0
- data/spec/dummy/db/migrate/20140811031145_add_expired_at_to_profile.rb +5 -0
- data/spec/dummy/db/migrate/20140813182425_add_publication_place_to_manifestation.rb +5 -0
- data/spec/dummy/db/schema.rb +860 -28
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/private/system/inventory_files/inventories/000/000/001/original/inventory_file_sample.tsv +7 -0
- data/spec/factories/user.rb +6 -0
- data/spec/fixtures/libraries.yml +102 -0
- data/spec/fixtures/library_groups.yml +15 -18
- data/spec/fixtures/profiles.yml +98 -0
- data/spec/fixtures/users.yml +3 -21
- data/spec/models/inventory_file_spec.rb +1 -1
- data/spec/spec_helper.rb +5 -1
- metadata +297 -36
- data/app/models/setting.rb +0 -4
- data/spec/dummy/app/models/ability.rb +0 -20
- data/spec/dummy/app/views/page/403.html.erb +0 -9
- data/spec/dummy/app/views/page/403.mobile.erb +0 -5
- data/spec/dummy/app/views/page/403.xml.erb +0 -4
- data/spec/dummy/app/views/page/404.html.erb +0 -9
- data/spec/dummy/app/views/page/404.mobile.erb +0 -5
- data/spec/dummy/app/views/page/404.xml.erb +0 -4
- data/spec/dummy/db/migrate/20111201155456_create_users.rb +0 -13
- data/spec/dummy/db/migrate/20111201155513_add_devise_to_users.rb +0 -52
@@ -6,183 +6,177 @@ describe InventoryFilesController do
|
|
6
6
|
|
7
7
|
describe "GET index" do
|
8
8
|
describe "When logged in as Administrator" do
|
9
|
-
|
9
|
+
login_fixture_admin
|
10
10
|
|
11
11
|
it "assigns all inventory_files as @inventory_files" do
|
12
12
|
get :index
|
13
|
-
assigns(:inventory_files).
|
13
|
+
expect(assigns(:inventory_files)).to eq(InventoryFile.page(1))
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
17
|
describe "When logged in as Librarian" do
|
18
|
-
|
18
|
+
login_fixture_librarian
|
19
19
|
|
20
20
|
it "assigns all inventory_files as @inventory_files" do
|
21
21
|
get :index
|
22
|
-
assigns(:inventory_files).
|
22
|
+
expect(assigns(:inventory_files)).to eq(InventoryFile.page(1))
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
26
|
describe "When logged in as User" do
|
27
|
-
|
27
|
+
login_fixture_user
|
28
28
|
|
29
29
|
it "assigns empty as @inventory_files" do
|
30
30
|
get :index
|
31
|
-
assigns(:inventory_files).
|
32
|
-
response.
|
31
|
+
expect(assigns(:inventory_files)).to be_empty
|
32
|
+
expect(response).to be_forbidden
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
36
36
|
describe "When not logged in" do
|
37
37
|
it "assigns empty as @inventory_files" do
|
38
38
|
get :index
|
39
|
-
assigns(:inventory_files).
|
40
|
-
response.
|
39
|
+
expect(assigns(:inventory_files)).to be_empty
|
40
|
+
expect(response).to redirect_to(new_user_session_url)
|
41
41
|
end
|
42
42
|
end
|
43
43
|
end
|
44
44
|
|
45
45
|
describe "GET show" do
|
46
46
|
describe "When logged in as Administrator" do
|
47
|
-
|
47
|
+
login_fixture_admin
|
48
48
|
|
49
49
|
it "assigns the requested inventory_file as @inventory_file" do
|
50
50
|
get :show, :id => 1
|
51
|
-
assigns(:inventory_file).
|
51
|
+
expect(assigns(:inventory_file)).to eq(InventoryFile.find(1))
|
52
52
|
end
|
53
53
|
end
|
54
54
|
|
55
55
|
describe "When logged in as Librarian" do
|
56
|
-
|
56
|
+
login_fixture_librarian
|
57
57
|
|
58
58
|
it "assigns the requested inventory_file as @inventory_file" do
|
59
59
|
get :show, :id => 1
|
60
|
-
assigns(:inventory_file).
|
60
|
+
expect(assigns(:inventory_file)).to eq(InventoryFile.find(1))
|
61
61
|
end
|
62
62
|
end
|
63
63
|
|
64
64
|
describe "When logged in as User" do
|
65
|
-
|
65
|
+
login_fixture_user
|
66
66
|
|
67
67
|
it "assigns the requested inventory_file as @inventory_file" do
|
68
68
|
get :show, :id => 1
|
69
|
-
assigns(:inventory_file).
|
69
|
+
expect(assigns(:inventory_file)).to eq(InventoryFile.find(1))
|
70
70
|
end
|
71
71
|
end
|
72
72
|
|
73
73
|
describe "When not logged in" do
|
74
74
|
it "assigns the requested inventory_file as @inventory_file" do
|
75
75
|
get :show, :id => 1
|
76
|
-
assigns(:inventory_file).
|
77
|
-
response.
|
76
|
+
expect(assigns(:inventory_file)).to eq(InventoryFile.find(1))
|
77
|
+
expect(response).to redirect_to(new_user_session_url)
|
78
78
|
end
|
79
79
|
end
|
80
80
|
end
|
81
81
|
|
82
82
|
describe "GET new" do
|
83
83
|
describe "When logged in as Administrator" do
|
84
|
-
|
84
|
+
login_fixture_admin
|
85
85
|
|
86
86
|
it "assigns the requested inventory_file as @inventory_file" do
|
87
87
|
get :new
|
88
|
-
assigns(:inventory_file).
|
89
|
-
response.
|
88
|
+
expect(assigns(:inventory_file)).to_not be_valid
|
89
|
+
expect(response).to be_success
|
90
90
|
end
|
91
91
|
end
|
92
92
|
|
93
93
|
describe "When logged in as Librarian" do
|
94
|
-
|
94
|
+
login_fixture_librarian
|
95
95
|
|
96
96
|
it "should not assign the requested inventory_file as @inventory_file" do
|
97
97
|
get :new
|
98
|
-
assigns(:inventory_file).
|
99
|
-
response.
|
98
|
+
expect(assigns(:inventory_file)).to_not be_valid
|
99
|
+
expect(response).to be_success
|
100
100
|
end
|
101
101
|
end
|
102
102
|
|
103
103
|
describe "When logged in as User" do
|
104
|
-
|
104
|
+
login_fixture_user
|
105
105
|
|
106
106
|
it "should not assign the requested inventory_file as @inventory_file" do
|
107
107
|
get :new
|
108
|
-
assigns(:inventory_file).
|
109
|
-
response.
|
108
|
+
expect(assigns(:inventory_file)).to_not be_valid
|
109
|
+
expect(response).to be_forbidden
|
110
110
|
end
|
111
111
|
end
|
112
112
|
|
113
113
|
describe "When not logged in" do
|
114
114
|
it "should not assign the requested inventory_file as @inventory_file" do
|
115
115
|
get :new
|
116
|
-
assigns(:inventory_file).
|
117
|
-
response.
|
116
|
+
expect(assigns(:inventory_file)).to_not be_valid
|
117
|
+
expect(response).to redirect_to(new_user_session_url)
|
118
118
|
end
|
119
119
|
end
|
120
120
|
end
|
121
121
|
|
122
122
|
describe "POST create" do
|
123
123
|
describe "When logged in as Librarian" do
|
124
|
-
|
125
|
-
@user = FactoryGirl.create(:librarian)
|
126
|
-
sign_in @user
|
127
|
-
end
|
124
|
+
login_fixture_librarian
|
128
125
|
|
129
126
|
it "should create inventory_file" do
|
130
127
|
post :create, :inventory_file => {:inventory => fixture_file_upload("/../../examples/inventory_file_sample.tsv", 'text/csv') }
|
131
128
|
assigns(:inventory_file).save!
|
132
|
-
assigns(:inventory_file).
|
133
|
-
assigns(:inventory_file).user.username.
|
134
|
-
response.
|
129
|
+
expect(assigns(:inventory_file)).to be_valid
|
130
|
+
expect(assigns(:inventory_file).user.username).to eq @user.username
|
131
|
+
expect(response).to redirect_to inventory_file_url(assigns(:inventory_file))
|
135
132
|
end
|
136
133
|
end
|
137
134
|
|
138
135
|
describe "When logged in as User" do
|
139
|
-
|
140
|
-
@user = FactoryGirl.create(:user)
|
141
|
-
sign_in @user
|
142
|
-
end
|
136
|
+
login_fixture_user
|
143
137
|
|
144
138
|
it "should be forbidden" do
|
145
139
|
post :create, :inventory_file => {:inventory => fixture_file_upload("/../../examples/inventory_file_sample.tsv", 'text/csv') }
|
146
|
-
response.
|
140
|
+
expect(response).to be_forbidden
|
147
141
|
end
|
148
142
|
end
|
149
143
|
|
150
144
|
describe "When not logged in" do
|
151
145
|
it "should be redirect to new session url" do
|
152
146
|
post :create, :inventory_file => {:inventory => fixture_file_upload("/../../examples/inventory_file_sample.tsv", 'text/csv') }
|
153
|
-
response.
|
147
|
+
expect(response).to redirect_to new_user_session_url
|
154
148
|
end
|
155
149
|
end
|
156
150
|
end
|
157
151
|
|
158
152
|
describe "GET edit" do
|
159
153
|
describe "When logged in as Administrator" do
|
160
|
-
|
154
|
+
login_fixture_admin
|
161
155
|
|
162
156
|
it "assigns the requested inventory_file as @inventory_file" do
|
163
157
|
inventory_file = inventory_files(:inventory_file_00001)
|
164
158
|
get :edit, :id => inventory_file.id
|
165
|
-
assigns(:inventory_file).
|
159
|
+
expect(assigns(:inventory_file)).to eq(inventory_file)
|
166
160
|
end
|
167
161
|
end
|
168
162
|
|
169
163
|
describe "When logged in as Librarian" do
|
170
|
-
|
164
|
+
login_fixture_librarian
|
171
165
|
|
172
166
|
it "assigns the requested inventory_file as @inventory_file" do
|
173
167
|
inventory_file = inventory_files(:inventory_file_00001)
|
174
168
|
get :edit, :id => inventory_file.id
|
175
|
-
assigns(:inventory_file).
|
169
|
+
expect(assigns(:inventory_file)).to eq(inventory_file)
|
176
170
|
end
|
177
171
|
end
|
178
172
|
|
179
173
|
describe "When logged in as User" do
|
180
|
-
|
174
|
+
login_fixture_user
|
181
175
|
|
182
176
|
it "assigns the requested inventory_file as @inventory_file" do
|
183
177
|
inventory_file = inventory_files(:inventory_file_00001)
|
184
178
|
get :edit, :id => inventory_file.id
|
185
|
-
response.
|
179
|
+
expect(response).to be_forbidden
|
186
180
|
end
|
187
181
|
end
|
188
182
|
|
@@ -190,43 +184,43 @@ describe InventoryFilesController do
|
|
190
184
|
it "should not assign the requested inventory_file as @inventory_file" do
|
191
185
|
inventory_file = inventory_files(:inventory_file_00001)
|
192
186
|
get :edit, :id => inventory_file.id
|
193
|
-
response.
|
187
|
+
expect(response).to redirect_to(new_user_session_url)
|
194
188
|
end
|
195
189
|
end
|
196
190
|
end
|
197
191
|
|
198
192
|
describe "PUT update" do
|
199
193
|
describe "When logged in as Administrator" do
|
200
|
-
|
194
|
+
login_fixture_admin
|
201
195
|
|
202
196
|
it "should update inventory_file" do
|
203
197
|
put :update, :id => inventory_files(:inventory_file_00003).id, :inventory_file => { }
|
204
|
-
response.
|
198
|
+
expect(response).to redirect_to inventory_file_url(assigns(:inventory_file))
|
205
199
|
end
|
206
200
|
end
|
207
201
|
|
208
202
|
describe "When logged in as Librarian" do
|
209
|
-
|
203
|
+
login_fixture_librarian
|
210
204
|
|
211
205
|
it "should update inventory_file" do
|
212
206
|
put :update, :id => inventory_files(:inventory_file_00003).id, :inventory_file => { }
|
213
|
-
response.
|
207
|
+
expect(response).to redirect_to inventory_file_url(assigns(:inventory_file))
|
214
208
|
end
|
215
209
|
end
|
216
210
|
|
217
211
|
describe "When logged in as User" do
|
218
|
-
|
212
|
+
login_fixture_user
|
219
213
|
|
220
214
|
it "should not update inventory_file" do
|
221
215
|
put :update, :id => inventory_files(:inventory_file_00003).id, :inventory_file => { }
|
222
|
-
response.
|
216
|
+
expect(response).to be_forbidden
|
223
217
|
end
|
224
218
|
end
|
225
219
|
|
226
220
|
describe "When not logged in" do
|
227
221
|
it "should not update inventory_file" do
|
228
222
|
put :update, :id => inventory_files(:inventory_file_00003).id, :inventory_file => { }
|
229
|
-
response.
|
223
|
+
expect(response).to redirect_to new_user_session_url
|
230
224
|
end
|
231
225
|
end
|
232
226
|
end
|
@@ -237,7 +231,7 @@ describe InventoryFilesController do
|
|
237
231
|
end
|
238
232
|
|
239
233
|
describe "When logged in as Administrator" do
|
240
|
-
|
234
|
+
login_fixture_admin
|
241
235
|
|
242
236
|
it "destroys the requested inventory_file" do
|
243
237
|
delete :destroy, :id => @inventory_file.id
|
@@ -245,12 +239,12 @@ describe InventoryFilesController do
|
|
245
239
|
|
246
240
|
it "redirects to the inventory_files list" do
|
247
241
|
delete :destroy, :id => @inventory_file.id
|
248
|
-
response.
|
242
|
+
expect(response).to redirect_to(inventory_files_url)
|
249
243
|
end
|
250
244
|
end
|
251
245
|
|
252
246
|
describe "When logged in as Librarian" do
|
253
|
-
|
247
|
+
login_fixture_librarian
|
254
248
|
|
255
249
|
it "destroys the requested inventory_file" do
|
256
250
|
delete :destroy, :id => @inventory_file.id
|
@@ -258,12 +252,12 @@ describe InventoryFilesController do
|
|
258
252
|
|
259
253
|
it "redirects to the inventory_files list" do
|
260
254
|
delete :destroy, :id => @inventory_file.id
|
261
|
-
response.
|
255
|
+
expect(response).to redirect_to(inventory_files_url)
|
262
256
|
end
|
263
257
|
end
|
264
258
|
|
265
259
|
describe "When logged in as User" do
|
266
|
-
|
260
|
+
login_fixture_user
|
267
261
|
|
268
262
|
it "destroys the requested inventory_file" do
|
269
263
|
delete :destroy, :id => @inventory_file.id
|
@@ -271,7 +265,7 @@ describe InventoryFilesController do
|
|
271
265
|
|
272
266
|
it "should be forbidden" do
|
273
267
|
delete :destroy, :id => @inventory_file.id
|
274
|
-
response.
|
268
|
+
expect(response).to be_forbidden
|
275
269
|
end
|
276
270
|
end
|
277
271
|
|
@@ -282,7 +276,7 @@ describe InventoryFilesController do
|
|
282
276
|
|
283
277
|
it "should be forbidden" do
|
284
278
|
delete :destroy, :id => @inventory_file.id
|
285
|
-
response.
|
279
|
+
expect(response).to redirect_to(new_user_session_url)
|
286
280
|
end
|
287
281
|
end
|
288
282
|
end
|
@@ -1,28 +1,8 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
1
2
|
class User < ActiveRecord::Base
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
:recoverable, :rememberable, :trackable, :validatable
|
3
|
+
devise :database_authenticatable, #:registerable,
|
4
|
+
:recoverable, :rememberable, :trackable, #, :validatable
|
5
|
+
:lockable, :lock_strategy => :none, :unlock_strategy => :none
|
6
6
|
|
7
|
-
|
8
|
-
attr_accessible :email, :password, :password_confirmation, :remember_me
|
9
|
-
|
10
|
-
has_one :user_has_role
|
11
|
-
has_one :role, :through => :user_has_role
|
12
|
-
belongs_to :required_role, :class_name => 'Role', :foreign_key => 'required_role_id'
|
13
|
-
has_many :purchase_requests
|
14
|
-
has_many :order_lists
|
15
|
-
|
16
|
-
def has_role?(role_in_question)
|
17
|
-
return false unless role
|
18
|
-
return true if role.name == role_in_question
|
19
|
-
case role.name
|
20
|
-
when 'Administrator'
|
21
|
-
return true
|
22
|
-
when 'Librarian'
|
23
|
-
return true if role_in_question == 'User'
|
24
|
-
else
|
25
|
-
false
|
26
|
-
end
|
27
|
-
end
|
7
|
+
enju_leaf_user_model
|
28
8
|
end
|
Binary file
|
@@ -0,0 +1,50 @@
|
|
1
|
+
class CreateAgents < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
create_table :agents do |t|
|
4
|
+
t.string :last_name
|
5
|
+
t.string :middle_name
|
6
|
+
t.string :first_name
|
7
|
+
t.string :last_name_transcription
|
8
|
+
t.string :middle_name_transcription
|
9
|
+
t.string :first_name_transcription
|
10
|
+
t.string :corporate_name
|
11
|
+
t.string :corporate_name_transcription
|
12
|
+
t.string :full_name
|
13
|
+
t.text :full_name_transcription
|
14
|
+
t.text :full_name_alternative
|
15
|
+
t.timestamps
|
16
|
+
t.datetime :deleted_at
|
17
|
+
t.string :zip_code_1
|
18
|
+
t.string :zip_code_2
|
19
|
+
t.text :address_1
|
20
|
+
t.text :address_2
|
21
|
+
t.text :address_1_note
|
22
|
+
t.text :address_2_note
|
23
|
+
t.string :telephone_number_1
|
24
|
+
t.string :telephone_number_2
|
25
|
+
t.string :fax_number_1
|
26
|
+
t.string :fax_number_2
|
27
|
+
t.text :other_designation
|
28
|
+
t.text :place
|
29
|
+
t.string :postal_code
|
30
|
+
t.text :street
|
31
|
+
t.text :locality
|
32
|
+
t.text :region
|
33
|
+
t.datetime :date_of_birth
|
34
|
+
t.datetime :date_of_death
|
35
|
+
t.integer :language_id, :default => 1, :null => false
|
36
|
+
t.integer :country_id, :default => 1, :null => false
|
37
|
+
t.integer :agent_type_id, :default => 1, :null => false
|
38
|
+
t.integer :lock_version, :default => 0, :null => false
|
39
|
+
t.text :note
|
40
|
+
t.integer :required_role_id, :default => 1, :null => false
|
41
|
+
t.integer :required_score, :default => 0, :null => false
|
42
|
+
t.text :email
|
43
|
+
t.text :url
|
44
|
+
end
|
45
|
+
add_index :agents, :language_id
|
46
|
+
add_index :agents, :country_id
|
47
|
+
add_index :agents, :required_role_id
|
48
|
+
add_index :agents, :full_name
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
class DeviseCreateUsers < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
create_table(:users) do |t|
|
4
|
+
## Database authenticatable
|
5
|
+
t.string :email, :null => false, :default => ""
|
6
|
+
t.string :encrypted_password, :null => false, :default => ""
|
7
|
+
|
8
|
+
## Recoverable
|
9
|
+
t.string :reset_password_token
|
10
|
+
t.datetime :reset_password_sent_at
|
11
|
+
|
12
|
+
## Rememberable
|
13
|
+
t.datetime :remember_created_at
|
14
|
+
|
15
|
+
## Trackable
|
16
|
+
t.integer :sign_in_count, :default => 0
|
17
|
+
t.datetime :current_sign_in_at
|
18
|
+
t.datetime :last_sign_in_at
|
19
|
+
t.string :current_sign_in_ip
|
20
|
+
t.string :last_sign_in_ip
|
21
|
+
|
22
|
+
## Confirmable
|
23
|
+
# t.string :confirmation_token
|
24
|
+
# t.datetime :confirmed_at
|
25
|
+
# t.datetime :confirmation_sent_at
|
26
|
+
# t.string :unconfirmed_email # Only if using reconfirmable
|
27
|
+
|
28
|
+
## Lockable
|
29
|
+
# t.integer :failed_attempts, :default => 0 # Only if lock strategy is :failed_attempts
|
30
|
+
# t.string :unlock_token # Only if unlock strategy is :email or :both
|
31
|
+
# t.datetime :locked_at
|
32
|
+
|
33
|
+
## Token authenticatable
|
34
|
+
# t.string :authentication_token
|
35
|
+
|
36
|
+
|
37
|
+
t.timestamps
|
38
|
+
end
|
39
|
+
|
40
|
+
add_index :users, :email, :unique => true
|
41
|
+
add_index :users, :reset_password_token, :unique => true
|
42
|
+
# add_index :users, :confirmation_token, :unique => true
|
43
|
+
# add_index :users, :unlock_token, :unique => true
|
44
|
+
# add_index :users, :authentication_token, :unique => true
|
45
|
+
end
|
46
|
+
end
|