sufia 2.0.1 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CONTRIBUTING.md +111 -0
- data/Gemfile +4 -4
- data/History.md +126 -0
- data/README.md +23 -5
- data/SUFIA_VERSION +1 -1
- data/app/assets/javascripts/sufia/multiForm.js +10 -2
- data/app/assets/stylesheets/{application-bootstrap.css → application-bootstrap.css.erb} +7 -7
- data/app/assets/stylesheets/{bootstrap.min.css → bootstrap.min.css.erb} +1 -1
- data/app/controllers/concerns/sufia/users_controller_behavior.rb +9 -3
- data/app/controllers/single_use_link_controller.rb +1 -1
- data/app/helpers/sufia_helper.rb +7 -1
- data/app/models/contact_form.rb +0 -14
- data/app/views/_user_util_links.html.erb +0 -15
- data/app/views/batch_edits/_check_all.html.erb +2 -2
- data/app/views/batch_edits/_delete_selected.html.erb +1 -1
- data/app/views/layouts/{_head-tag-content.html.erb → _head_tag_content.html.erb} +0 -0
- data/app/views/layouts/homepage.html.erb +2 -2
- data/app/views/layouts/sufia-one-column.html.erb +1 -1
- data/app/views/layouts/sufia-two-column.html.erb +1 -1
- data/app/views/users/edit.html.erb +1 -1
- data/app/views/users/show.html.erb +1 -17
- data/config/routes.rb +31 -33
- data/lib/generators/sufia/sufia_generator.rb +5 -3
- data/lib/generators/sufia/templates/catalog_controller.rb +5 -1
- data/lib/generators/sufia/templates/config/redis_config.rb +1 -14
- data/lib/sufia/batch_edits_controller_behavior.rb +1 -1
- data/lib/sufia/controller.rb +1 -1
- data/lib/sufia/dashboard_controller_behavior.rb +8 -2
- data/lib/sufia/files_controller_behavior.rb +1 -2
- data/lib/sufia/version.rb +1 -1
- data/spec/active_fedora/unsaved_digital_object_spec.rb +1 -15
- data/spec/controllers/authorities_controller_spec.rb +1 -15
- data/spec/controllers/batch_controller_spec.rb +10 -16
- data/spec/controllers/batch_edits_controller_spec.rb +1 -1
- data/spec/controllers/catalog_controller_spec.rb +1 -15
- data/spec/controllers/dashboard_controller_spec.rb +23 -17
- data/spec/controllers/downloads_controller_spec.rb +1 -15
- data/spec/controllers/generic_files_controller_spec.rb +18 -32
- data/spec/controllers/mailbox_controller_spec.rb +1 -15
- data/spec/controllers/single_use_link_controller_spec.rb +6 -13
- data/spec/controllers/users_controller_spec.rb +27 -41
- data/spec/factories/users.rb +5 -14
- data/spec/features/browse_dashboard_files.rb +21 -0
- data/spec/features/browse_files.rb +31 -0
- data/spec/features/contact_form.rb +99 -0
- data/spec/features/display_dashboard.rb +46 -0
- data/spec/features/ingest_upload_files.rb +24 -0
- data/spec/features/users_spec.rb +25 -0
- data/spec/helpers/generic_file_helper_spec.rb +10 -3
- data/spec/helpers/sufia_helper_spec.rb +1 -1
- data/spec/lib/sufia/id_service_spec.rb +1 -15
- data/spec/models/audit_job_spec.rb +1 -15
- data/spec/models/batch_spec.rb +1 -15
- data/spec/models/batch_update_job_spec.rb +3 -16
- data/spec/models/characterize_job_spec.rb +4 -4
- data/spec/models/checksum_audit_log_spec.rb +1 -15
- data/spec/models/event_jobs_spec.rb +1 -15
- data/spec/models/file_content_datastream_spec.rb +5 -19
- data/spec/models/fits_datastream_spec.rb +1 -15
- data/spec/models/generic_file/web_form_spec.rb +34 -0
- data/spec/models/generic_file_spec.rb +11 -39
- data/spec/models/local_authority_spec.rb +3 -15
- data/spec/models/properties_datastream_spec.rb +1 -1
- data/spec/models/single_use_link_spec.rb +1 -1
- data/spec/models/solr_document_spec.rb +1 -1
- data/spec/models/transcode_audio_job_spec.rb +1 -1
- data/spec/models/transcode_video_job_spec.rb +1 -1
- data/spec/models/trophy_spec.rb +1 -1
- data/spec/models/unzip_job_spec.rb +1 -15
- data/spec/models/user_spec.rb +1 -15
- data/spec/rake/sufia_fixtures_spec.rb +3 -17
- data/spec/routing/route_spec.rb +7 -21
- data/spec/spec_helper.rb +8 -20
- data/spec/support/features.rb +6 -0
- data/spec/support/features/session_helpers.rb +21 -0
- data/spec/support/lib/generators/test_app_generator.rb +4 -0
- data/spec/views/batch_edits/check_all_spec.rb +6 -4
- data/sufia-models/app/models/checksum_audit_log.rb +1 -15
- data/sufia-models/app/models/domain_term.rb +3 -15
- data/sufia-models/app/models/geo_names_resource.rb +1 -13
- data/sufia-models/app/models/local_authority.rb +12 -17
- data/sufia-models/app/models/local_authority_entry.rb +1 -15
- data/sufia-models/app/models/single_use_link.rb +2 -3
- data/sufia-models/app/models/trophy.rb +1 -1
- data/sufia-models/app/models/version_committer.rb +1 -15
- data/sufia-models/lib/sufia/models.rb +6 -2
- data/sufia-models/lib/sufia/models/engine.rb +1 -1
- data/sufia-models/lib/sufia/models/generic_file.rb +3 -0
- data/sufia-models/lib/sufia/models/generic_file/accessible_attributes.rb +87 -0
- data/sufia-models/lib/sufia/models/generic_file/permissions.rb +2 -1
- data/sufia-models/lib/sufia/models/generic_file/web_form.rb +4 -1
- data/sufia-models/lib/sufia/models/user.rb +9 -2
- data/sufia-models/lib/sufia/models/version.rb +1 -1
- data/{lib → sufia-models/lib}/tasks/resque.rake +0 -0
- data/sufia-models/sufia-models.gemspec +13 -11
- data/sufia.gemspec +1 -3
- data/tasks/sufia-dev.rake +21 -10
- metadata +30 -84
- data/config/cucumber.yml +0 -8
- data/features/browse_dashboard_files.feature +0 -16
- data/features/browse_files.feature +0 -16
- data/features/contact_form.feature +0 -86
- data/features/display_dashboard.feature +0 -42
- data/features/ingest_upload_files.feature +0 -21
- data/features/step_definitions/edit_metadata_steps.rb +0 -89
- data/features/step_definitions/fixture_steps.rb +0 -35
- data/features/step_definitions/show_document_steps.rb +0 -103
- data/features/step_definitions/sufia.rb +0 -69
- data/features/step_definitions/user_steps.rb +0 -58
- data/features/step_definitions/web_steps.rb +0 -235
- data/features/support/cleanup.rb +0 -19
- data/features/support/env.rb +0 -90
- data/features/support/headless.rb +0 -26
- data/features/support/paths.rb +0 -101
- data/features/users.feature +0 -18
- data/spec/lib/sufia/role_mapper_spec.rb +0 -28
- data/spec/support/Gemfile +0 -24
- data/spec/views/single_user_link/download.html.erb_spec.rb +0 -5
- data/spec/views/single_user_link/generate_download.html.erb_spec.rb +0 -5
- data/spec/views/single_user_link/generate_show.html.erb_spec.rb +0 -5
- data/spec/views/single_user_link/show.html.erb_spec.rb +0 -5
- data/tasks/cucumber.rake +0 -72
data/spec/factories/users.rb
CHANGED
@@ -1,17 +1,3 @@
|
|
1
|
-
# Copyright © 2012 The Pennsylvania State University
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
|
15
1
|
FactoryGirl.define do
|
16
2
|
factory :user, :class => User do |u|
|
17
3
|
email 'jilluser@example.com'
|
@@ -23,6 +9,11 @@ FactoryGirl.define do
|
|
23
9
|
password 'password'
|
24
10
|
end
|
25
11
|
|
12
|
+
factory :user_with_fixtures, :class => User do |u|
|
13
|
+
email 'archivist2@example.com'
|
14
|
+
password 'password'
|
15
|
+
end
|
16
|
+
|
26
17
|
factory :curator, :class => User do |u|
|
27
18
|
email 'curator1@example.com'
|
28
19
|
password 'password'
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe "Browse Dashboard files" do
|
4
|
+
|
5
|
+
before do
|
6
|
+
sign_in :user_with_fixtures
|
7
|
+
end
|
8
|
+
|
9
|
+
it "should show me some files (from the fixtures)" do
|
10
|
+
click_link "dashboard"
|
11
|
+
click_link "more Keywords"
|
12
|
+
click_link "keyf"
|
13
|
+
page.should have_content "Test mp3"
|
14
|
+
end
|
15
|
+
|
16
|
+
it "should allow me to edit files (from the fixtures)" do
|
17
|
+
click_link "dashboard"
|
18
|
+
click_link "Edit File"
|
19
|
+
page.should have_content "Edit Test mp3"
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe "Browse files" do
|
4
|
+
|
5
|
+
describe "when not logged in" do
|
6
|
+
it "should let us browse some of the fixtures" do
|
7
|
+
visit '/'
|
8
|
+
click_link "more Keywords"
|
9
|
+
click_link "test"
|
10
|
+
# TODO this used to be 1 - 4 of 4, but now we get 5. WTF?
|
11
|
+
# It looks to me like sufia:sufia1, sufia:test3, sufia:test4, sufia:test5, sufia:test6 all should match
|
12
|
+
page.should have_content "1 - 5 of 5"
|
13
|
+
click_link "Test Document PDF"
|
14
|
+
page.should have_content "Download"
|
15
|
+
page.should_not have_content "Edit"
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
19
|
+
|
20
|
+
describe "when logged in" do
|
21
|
+
before do
|
22
|
+
sign_in :user
|
23
|
+
end
|
24
|
+
it "should let us browse some of the fixtures and see the edit link"do
|
25
|
+
click_link "more Keywords"
|
26
|
+
click_link "test"
|
27
|
+
click_link "Test Document PDF"
|
28
|
+
page.should_not have_content "Edit"
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,99 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe "Sending an email via the contact form" do
|
4
|
+
|
5
|
+
before do
|
6
|
+
sign_in :user_with_fixtures
|
7
|
+
end
|
8
|
+
|
9
|
+
it "should send mail" do
|
10
|
+
ContactForm.any_instance.stub(:deliver).and_return(true)
|
11
|
+
visit '/'
|
12
|
+
click_link "Contact"
|
13
|
+
page.should have_content "Contact Form"
|
14
|
+
fill_in "contact_form_name", with: "Test McPherson"
|
15
|
+
fill_in "contact_form_email", with: "archivist1@example.com"
|
16
|
+
fill_in "contact_form_message", with: "I am contacting you regarding ScholarSphere."
|
17
|
+
fill_in "contact_form_subject", with: "My Subject is Cool"
|
18
|
+
select "Depositing content", from: "contact_form_category"
|
19
|
+
click_button "Send"
|
20
|
+
page.should have_content "Thank you"
|
21
|
+
# this step allows the delivery to go back to normal
|
22
|
+
ContactForm.any_instance.unstub(:deliver)
|
23
|
+
end
|
24
|
+
|
25
|
+
it "should give an error when I don't provide a contact type" do
|
26
|
+
visit '/'
|
27
|
+
click_link "Contact"
|
28
|
+
page.should have_content "Contact Form"
|
29
|
+
fill_in "contact_form_name", with: "Test McPherson"
|
30
|
+
fill_in "contact_form_email", with: "archivist1@example.com"
|
31
|
+
fill_in "contact_form_message", with: "I am contacting you regarding ScholarSphere."
|
32
|
+
fill_in "contact_form_subject", with: "My Subject is Cool"
|
33
|
+
click_button "Send"
|
34
|
+
page.should have_content "Sorry, this message was not sent successfully"
|
35
|
+
end
|
36
|
+
|
37
|
+
it "should give an error when I don't provide a valid email" do
|
38
|
+
visit '/'
|
39
|
+
click_link "Contact"
|
40
|
+
page.should have_content "Contact Form"
|
41
|
+
fill_in "contact_form_name", with: "Test McPherson"
|
42
|
+
fill_in "contact_form_email", with: "archivist1"
|
43
|
+
fill_in "contact_form_message", with: "I am contacting you regarding ScholarSphere."
|
44
|
+
fill_in "contact_form_subject", with: "My Subject is Cool"
|
45
|
+
select "Depositing content", from: "contact_form_category"
|
46
|
+
click_button "Send"
|
47
|
+
page.should have_content "Sorry, this message was not sent successfully"
|
48
|
+
end
|
49
|
+
|
50
|
+
it "should give an error when I don't provide a name" do
|
51
|
+
visit '/'
|
52
|
+
click_link "Contact"
|
53
|
+
page.should have_content "Contact Form"
|
54
|
+
fill_in "contact_form_email", with: "archivist1@example.com"
|
55
|
+
fill_in "contact_form_message", with: "I am contacting you regarding ScholarSphere."
|
56
|
+
fill_in "contact_form_subject", with: "My Subject is Cool"
|
57
|
+
select "Depositing content", from: "contact_form_category"
|
58
|
+
click_button "Send"
|
59
|
+
page.should have_content "Sorry, this message was not delivered"
|
60
|
+
end
|
61
|
+
|
62
|
+
it "should give an error when I don't provide a subject" do
|
63
|
+
visit '/'
|
64
|
+
click_link "Contact"
|
65
|
+
page.should have_content "Contact Form"
|
66
|
+
fill_in "contact_form_name", with: "Test McPherson"
|
67
|
+
fill_in "contact_form_email", with: "archivist1@example.com"
|
68
|
+
fill_in "contact_form_message", with: "I am contacting you regarding ScholarSphere."
|
69
|
+
select "Depositing content", from: "contact_form_category"
|
70
|
+
click_button "Send"
|
71
|
+
page.should have_content "Sorry, this message was not sent successfully"
|
72
|
+
end
|
73
|
+
|
74
|
+
it "should give an error when I don't provide a message" do
|
75
|
+
visit '/'
|
76
|
+
click_link "Contact"
|
77
|
+
page.should have_content "Contact Form"
|
78
|
+
fill_in "contact_form_name", with: "Test McPherson"
|
79
|
+
fill_in "contact_form_email", with: "archivist1@example.com"
|
80
|
+
fill_in "contact_form_subject", with: "My Subject is Cool"
|
81
|
+
select "Depositing content", from: "contact_form_category"
|
82
|
+
click_button "Send"
|
83
|
+
page.should have_content "Sorry, this message was not sent successfully"
|
84
|
+
end
|
85
|
+
|
86
|
+
it "should give an error when I provide an invalid captcha" do
|
87
|
+
visit '/'
|
88
|
+
click_link "Contact"
|
89
|
+
page.should have_content "Contact Form"
|
90
|
+
fill_in "contact_form_contact_method", with: "My name is"
|
91
|
+
fill_in "contact_form_name", with: "Test McPherson"
|
92
|
+
fill_in "contact_form_email", with: "archivist1@example.com"
|
93
|
+
fill_in "contact_form_subject", with: "My Subject is Cool"
|
94
|
+
fill_in "contact_form_message", with: "I am contacting you regarding ScholarSphere."
|
95
|
+
select "Depositing content", from: "contact_form_category"
|
96
|
+
click_button "Send"
|
97
|
+
page.should have_content "Sorry, this message was not delivered"
|
98
|
+
end
|
99
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe "Display Dashboard files" do
|
4
|
+
|
5
|
+
before do
|
6
|
+
sign_in :user
|
7
|
+
end
|
8
|
+
|
9
|
+
it "should display the dashboard and have search" do
|
10
|
+
click_link 'dashboard'
|
11
|
+
fill_in "dashboard_search", with: "dash search"
|
12
|
+
click_button "dashboard_submit"
|
13
|
+
page.should have_content "Dashboard"
|
14
|
+
page.should have_content "You searched for: dash search"
|
15
|
+
find_field("search-field-header").value.should be_nil
|
16
|
+
end
|
17
|
+
|
18
|
+
it "should display the dashboard and want to upload files" do
|
19
|
+
click_link 'dashboard'
|
20
|
+
click_link 'Upload File(s)'
|
21
|
+
page.should have_content "Upload"
|
22
|
+
end
|
23
|
+
|
24
|
+
it "should display the dashboard and want to upload files" do
|
25
|
+
click_link 'dashboard'
|
26
|
+
click_link 'Upload File(s)'
|
27
|
+
page.should have_content "Upload"
|
28
|
+
end
|
29
|
+
|
30
|
+
it "should display the dashboard and want to search the whole system" do
|
31
|
+
fill_in "search-field-header", with: "system search"
|
32
|
+
click_button "search-submit-header"
|
33
|
+
page.should have_content "You searched for: system search"
|
34
|
+
page.should_not have_content "Dashboard"
|
35
|
+
find_field("search-field-header").value.should match(/system search/)
|
36
|
+
end
|
37
|
+
|
38
|
+
# @culerity
|
39
|
+
# Scenario: I have files on my dashboard I should see icons
|
40
|
+
# #Given I load sufia fixtures
|
41
|
+
# And I am logged in as "archivist1@example.com"
|
42
|
+
# And I follow "dashboard"
|
43
|
+
# Then I should see "Test Document Text"
|
44
|
+
# When I follow the link within "a[href='/files/test3'].itemtrash"
|
45
|
+
# Then I should see "The file has been deleted"
|
46
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe "Uploading files via web form" do
|
4
|
+
|
5
|
+
before do
|
6
|
+
sign_in :user
|
7
|
+
end
|
8
|
+
|
9
|
+
it "should have an ingest screen" do
|
10
|
+
click_link "upload"
|
11
|
+
page.should have_content "Select files"
|
12
|
+
page.should have_content "Start upload"
|
13
|
+
page.should have_content "Cancel upload"
|
14
|
+
page.should have_xpath '//input[@type="file"]'
|
15
|
+
end
|
16
|
+
|
17
|
+
it "should require checking the terms of service" do
|
18
|
+
click_link "upload"
|
19
|
+
attach_file("files[]", "spec/fixtures/image.jp2")
|
20
|
+
attach_file("files[]", "spec/fixtures/jp2_fits.xml")
|
21
|
+
click_button 'Start upload'
|
22
|
+
page.should have_content "You must accept the terms of service!"
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe "User Profile" do
|
4
|
+
|
5
|
+
before do
|
6
|
+
# FactoryGirl.create(:user)
|
7
|
+
# FactoryGirl.create(:archivist)
|
8
|
+
# FactoryGirl.create(:curator)
|
9
|
+
sign_in :curator
|
10
|
+
end
|
11
|
+
|
12
|
+
it "should be displayed" do
|
13
|
+
click_link "curator1@example.com"
|
14
|
+
page.should have_content "Edit Your Profile"
|
15
|
+
end
|
16
|
+
|
17
|
+
it "should be editable" do
|
18
|
+
click_link "curator1@example.com"
|
19
|
+
click_link "Edit Your Profile"
|
20
|
+
fill_in 'user_twitter_handle', with: 'curatorOfData'
|
21
|
+
click_button 'Save Profile'
|
22
|
+
page.should have_content "Your profile has been updated"
|
23
|
+
page.should have_content "curatorOfData"
|
24
|
+
end
|
25
|
+
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'spec_helper'
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
3
|
describe GenericFileHelper do
|
4
4
|
it "draws add button" do
|
@@ -12,8 +12,15 @@ describe GenericFileHelper do
|
|
12
12
|
end
|
13
13
|
|
14
14
|
it "draws help_icon" do
|
15
|
-
helper.help_icon(:tag)
|
16
|
-
|
15
|
+
str = String.new(helper.help_icon(:tag))
|
16
|
+
doc = Nokogiri::HTML(str)
|
17
|
+
a = doc.xpath('//a').first
|
18
|
+
|
19
|
+
a.attr('data-content').should == "Words or phrases you select to describe what the file is about. These are used to search for content. <em>This is a required field</em>."
|
20
|
+
a.attr('data-original-title').should == "Keyword"
|
21
|
+
a.attr('id').should == "generic_file_tag_help"
|
22
|
+
i = a.children.first
|
23
|
+
i.attr('class').should == 'icon-question-sign icon-large'
|
17
24
|
end
|
18
25
|
|
19
26
|
end
|
@@ -1,18 +1,4 @@
|
|
1
|
-
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
|
15
|
-
require 'spec_helper'
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
16
2
|
|
17
3
|
describe Sufia::IdService do
|
18
4
|
describe "mint" do
|
@@ -1,18 +1,4 @@
|
|
1
|
-
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
|
15
|
-
require 'spec_helper'
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
16
2
|
|
17
3
|
describe AuditJob do
|
18
4
|
before do
|
data/spec/models/batch_spec.rb
CHANGED
@@ -1,18 +1,4 @@
|
|
1
|
-
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
|
15
|
-
require 'spec_helper'
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
16
2
|
|
17
3
|
describe Batch do
|
18
4
|
before(:all) do
|
@@ -1,19 +1,6 @@
|
|
1
1
|
# encoding: UTF-8
|
2
|
-
# Copyright © 2012 The Pennsylvania State University
|
3
|
-
#
|
4
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
# you may not use this file except in compliance with the License.
|
6
|
-
# You may obtain a copy of the License at
|
7
|
-
#
|
8
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
-
#
|
10
|
-
# Unless required by applicable law or agreed to in writing, software
|
11
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
-
# See the License for the specific language governing permissions and
|
14
|
-
# limitations under the License.
|
15
2
|
|
16
|
-
require 'spec_helper'
|
3
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
17
4
|
|
18
5
|
describe BatchUpdateJob do
|
19
6
|
before do
|
@@ -47,10 +34,10 @@ describe BatchUpdateJob do
|
|
47
34
|
it "should log a content update event" do
|
48
35
|
User.any_instance.should_receive(:can?).with(:edit, @file).and_return(true)
|
49
36
|
User.any_instance.should_receive(:can?).with(:edit, @file2).and_return(true)
|
50
|
-
s1 =
|
37
|
+
s1 = double('one')
|
51
38
|
ContentUpdateEventJob.should_receive(:new).with(@file.pid, @user.user_key).and_return(s1)
|
52
39
|
Sufia.queue.should_receive(:push).with(s1).once
|
53
|
-
s2 =
|
40
|
+
s2 = double('two')
|
54
41
|
ContentUpdateEventJob.should_receive(:new).with(@file2.pid, @user.user_key).and_return(s2)
|
55
42
|
Sufia.queue.should_receive(:push).with(s2).once
|
56
43
|
params = {'generic_file' => {'read_groups_string' => '', 'read_users_string' => 'archivist1, archivist2', 'tag' => ['']}, 'id' => @batch.pid, 'controller' => 'batch', 'action' => 'update'}.with_indifferent_access
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'spec_helper'
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
3
|
describe CharacterizeJob do
|
4
4
|
before do
|
@@ -20,7 +20,7 @@ describe CharacterizeJob do
|
|
20
20
|
@generic_file.save!
|
21
21
|
end
|
22
22
|
it "should create a transcode job" do
|
23
|
-
job =
|
23
|
+
job = double("stub video job")
|
24
24
|
if $in_travis
|
25
25
|
@generic_file.stub(:video?).and_return(true)
|
26
26
|
GenericFile.should_receive(:find).with(@generic_file.id).and_return(@generic_file)
|
@@ -42,7 +42,7 @@ describe CharacterizeJob do
|
|
42
42
|
@generic_file.save!
|
43
43
|
end
|
44
44
|
it "should create a transcode job" do
|
45
|
-
job =
|
45
|
+
job = double("stub audio job")
|
46
46
|
if $in_travis
|
47
47
|
@generic_file.stub(:audio?).and_return(true)
|
48
48
|
GenericFile.should_receive(:find).with(@generic_file.id).and_return(@generic_file)
|
@@ -61,7 +61,7 @@ describe CharacterizeJob do
|
|
61
61
|
end
|
62
62
|
it "should create a transcode job. (we'd like ogg too)" do
|
63
63
|
# TODO just copy the 'content' datastream to the mp3 datastream if it's an mp3, and then transcode to ogg
|
64
|
-
job =
|
64
|
+
job = double("stub audio job")
|
65
65
|
if $in_travis
|
66
66
|
@generic_file.stub(:audio?).and_return(true)
|
67
67
|
GenericFile.should_receive(:find).with(@generic_file.id).and_return(@generic_file)
|