hydra-head 4.0.3 → 4.1.0
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.
- data/.gitignore +1 -0
- data/HISTORY.textile +17 -2
- data/app/assets/stylesheets/hydra/html_refactor.css +3 -30
- data/app/assets/stylesheets/hydra/styles.css +6 -64
- data/app/controllers/downloads_controller.rb +1 -1
- data/app/controllers/hydra/assets_controller.rb +10 -1
- data/app/controllers/hydra/contributors_controller.rb +15 -1
- data/app/controllers/hydra/file_assets_controller.rb +1 -1
- data/app/controllers/hydra/permissions_controller.rb +14 -0
- data/app/helpers/hydra/article_metadata_helper_behavior.rb +14 -1
- data/app/helpers/hydra/downloads_helper_behavior.rb +6 -0
- data/app/helpers/hydra/facets_helper_behavior.rb +7 -0
- data/app/helpers/hydra/generic_content_objects_helper_behavior.rb +6 -0
- data/app/helpers/hydra/hydra_assets_helper_behavior.rb +10 -0
- data/app/helpers/hydra/hydra_fedora_metadata_helper_behavior.rb +31 -0
- data/app/helpers/hydra/hydra_helper_behavior.rb +18 -7
- data/app/helpers/hydra/hydra_uploader_helper_behavior.rb +5 -0
- data/app/helpers/hydra/inline_editable_metadata_helper_behavior.rb +6 -0
- data/app/helpers/hydra/javascript_includes_helper_behavior.rb +7 -0
- data/app/helpers/hydra/personalization_helper_behavior.rb +5 -0
- data/app/helpers/hydra/release_process_helper_behavior.rb +5 -0
- data/app/models/generic_content.rb +3 -0
- data/app/models/generic_image.rb +3 -0
- data/app/models/superuser.rb +4 -2
- data/app/models/user_attribute.rb +7 -2
- data/app/views/_add_assets_links.html.erb +4 -4
- data/app/views/catalog/_index_partials/_default.html.erb +2 -2
- data/app/views/catalog/show.html.erb +1 -1
- data/app/views/generic_contents/_index.html.erb +2 -2
- data/app/views/generic_images/_edit.html.erb +1 -1
- data/app/views/generic_images/_index.html.erb +2 -2
- data/app/views/hydra/file_assets/_file_assets_form.html.erb +1 -1
- data/app/views/hydra/file_assets/_index.html.erb +2 -2
- data/app/views/hydra/file_assets/_result.html.erb +1 -1
- data/app/views/layouts/hydra-head.html.erb +4 -1
- data/app/views/mods_assets/_index_list.html.erb +1 -1
- data/app/views/mods_assets/_index_table.html.erb +2 -2
- data/app/views/mods_assets/_show.html.erb +1 -1
- data/app/views/mods_assets/_show_file_assets.html.erb +1 -1
- data/config/jetty.yml +1 -1
- data/config/locales/hydra.en.yml +7 -0
- data/config/solr.yml +1 -1
- data/config/solr_mappings.yml +2 -2
- data/hydra-head.gemspec +5 -4
- data/lib/generators/hydra/head_generator.rb +6 -5
- data/lib/generators/hydra/templates/config/fedora.yml +1 -1
- data/lib/generators/hydra/templates/config/solr.yml +1 -1
- data/lib/hydra-head/version.rb +1 -1
- data/lib/hydra.rb +13 -11
- data/lib/hydra/assets.rb +5 -135
- data/lib/hydra/catalog.rb +6 -44
- data/lib/hydra/controller.rb +10 -27
- data/lib/hydra/controller/assets_controller_behavior.rb +142 -0
- data/lib/hydra/controller/catalog_controller_behavior.rb +56 -0
- data/lib/hydra/controller/controller_behavior.rb +59 -0
- data/lib/hydra/controller/file_assets_behavior.rb +142 -0
- data/lib/hydra/controller/repository_controller_behavior.rb +119 -0
- data/lib/hydra/controller/upload_behavior.rb +139 -0
- data/lib/hydra/file_assets.rb +3 -138
- data/lib/hydra/file_assets_helper.rb +6 -133
- data/lib/hydra/generic_content.rb +15 -0
- data/lib/hydra/generic_image.rb +10 -0
- data/lib/hydra/global_configurable.rb +46 -0
- data/lib/hydra/model_methods.rb +3 -3
- data/lib/hydra/model_mixins.rb +1 -1
- data/lib/hydra/model_mixins/solr_document_extension.rb +24 -0
- data/lib/hydra/repository_controller.rb +4 -95
- data/lib/hydra/ui/controller.rb +1 -2
- data/lib/hydra/user.rb +13 -1
- data/lib/railties/hydra-fixtures.rake +1 -1
- data/tasks/hydra-head.rake +2 -0
- data/{app/models → test_support/etc}/common_metadata_asset.rb +1 -2
- data/test_support/features/mods_asset_show.feature +1 -1
- data/test_support/features/support/env.rb +2 -0
- data/test_support/features/support/paths.rb +2 -0
- data/test_support/spec/controllers/catalog_controller_spec.rb +8 -0
- data/test_support/spec/controllers/catalog_controller_viewing_context_spec.rb +10 -1
- data/test_support/spec/controllers/catalog_valid_html_spec.rb +8 -0
- data/test_support/spec/controllers/contributors_controller_spec.rb +10 -0
- data/test_support/spec/controllers/file_assets_controller_spec.rb +15 -3
- data/test_support/spec/controllers/hydra-assets_controller_spec.rb +11 -1
- data/test_support/spec/controllers/hydra_controller_spec.rb +15 -4
- data/test_support/spec/controllers/permissions_controller_spec.rb +8 -0
- data/test_support/spec/helpers/access_controls_enforcement_spec.rb +1 -2
- data/test_support/spec/helpers/file_assets_helper_spec.rb +1 -1
- data/test_support/spec/helpers/generic_content_objects_helper_spec.rb +10 -1
- data/test_support/spec/helpers/hydra-repository_controller_spec.rb +1 -1
- data/test_support/spec/helpers/hydra_assets_helper_spec.rb +8 -0
- data/test_support/spec/helpers/hydra_fedora_metadata_helper_spec.rb +11 -0
- data/test_support/spec/helpers/hydra_helper_spec.rb +18 -0
- data/test_support/spec/helpers/hydra_model_methods_spec.rb +0 -12
- data/test_support/spec/helpers/hydra_uploader_helper_spec.rb +8 -0
- data/test_support/spec/helpers/javascript_includes_helper_spec.rb +9 -1
- data/test_support/spec/lib/catalog_spec.rb +10 -3
- data/test_support/spec/lib/global_configurable_spec.rb +98 -0
- data/test_support/spec/lib/model_methods_spec.rb +29 -0
- data/test_support/spec/models/generic_content_spec.rb +11 -0
- data/test_support/spec/models/generic_image_spec.rb +15 -0
- data/test_support/spec/models/user_spec.rb +25 -0
- metadata +39 -37
- data/app/models/ability.rb +0 -5
- data/app/models/hydra/ability.rb +0 -137
- data/app/models/hydra/datastream/common_mods_index_methods.rb +0 -47
- data/app/models/hydra/datastream/mods_article.rb +0 -530
- data/app/models/hydra/datastream/mods_dataset.rb +0 -173
- data/app/models/hydra/datastream/mods_generic_content.rb +0 -498
- data/app/models/hydra/datastream/mods_image.rb +0 -497
- data/app/models/hydra/datastream/rights_metadata.rb +0 -191
- data/app/models/hydra/role_mapper_behavior.rb +0 -33
- data/app/models/role_mapper.rb +0 -6
- data/lib/hydra/access_controls_enforcement.rb +0 -237
- data/lib/hydra/access_controls_evaluation.rb +0 -38
- data/lib/hydra/common_mods_index_methods.rb +0 -46
- data/lib/hydra/model_mixins/mods_object.rb +0 -17
- data/lib/hydra/model_mixins/rights_metadata.rb +0 -357
- data/lib/hydra/mods_article.rb +0 -535
- data/lib/hydra/mods_dataset.rb +0 -177
- data/lib/hydra/mods_generic_content.rb +0 -500
- data/lib/hydra/mods_image.rb +0 -500
- data/lib/uva/mods_index_methods.rb +0 -30
- data/test_support/spec/lib/common_mods_index_methods_spec.rb +0 -26
- data/test_support/spec/models/ability_spec.rb +0 -40
- data/test_support/spec/models/hydra_rights_metadata_spec.rb +0 -175
- data/test_support/spec/models/role_mapper_spec.rb +0 -22
- data/test_support/spec/unit/rights_metadata_spec.rb +0 -80
data/lib/hydra/ui/controller.rb
CHANGED
@@ -33,7 +33,6 @@ module Hydra::UI::Controller
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def load_css
|
36
|
-
stylesheet_links << ["hydra/html_refactor", {:media=>"all"}]
|
37
36
|
end
|
38
37
|
|
39
38
|
def load_js
|
@@ -44,4 +43,4 @@ module Hydra::UI::Controller
|
|
44
43
|
javascript_includes << ['spin.min.js' ]
|
45
44
|
end
|
46
45
|
|
47
|
-
end
|
46
|
+
end
|
data/lib/hydra/user.rb
CHANGED
@@ -1,23 +1,35 @@
|
|
1
|
-
# will move to lib/hydra/access_control folder/namespace in release 5.x
|
2
1
|
# Injects behaviors into User model so that it will work with Hydra Access Controls
|
3
2
|
# By default, this module assumes you are using the User model created by Blacklight, which uses Devise.
|
4
3
|
# To integrate your own User implementation into Hydra, override this Module or define your own User model in app/models/user.rb within your Hydra head.
|
4
|
+
require 'deprecation'
|
5
5
|
module Hydra::User
|
6
|
+
extend Deprecation
|
6
7
|
|
7
8
|
def self.included(klass)
|
8
9
|
# Other modules to auto-include
|
9
10
|
klass.send(:include, Hydra::SuperuserAttributes)
|
10
11
|
end
|
11
12
|
|
13
|
+
# This method should display the unique identifier for this user as defined by devise.
|
14
|
+
# The unique identifier is what access controls will be enforced against.
|
15
|
+
def user_key
|
16
|
+
send(Devise.authentication_keys.first)
|
17
|
+
end
|
18
|
+
|
19
|
+
|
12
20
|
# This method should display the unique identifier for this user
|
13
21
|
# the unique identifier is what access controls will be enforced against.
|
14
22
|
def unique_id
|
15
23
|
return to_s
|
16
24
|
end
|
25
|
+
deprecation_deprecate :unique_id
|
26
|
+
|
27
|
+
|
17
28
|
|
18
29
|
# For backwards compatibility with the Rails2 User models in Hydra/Blacklight
|
19
30
|
def login
|
20
31
|
return unique_id
|
21
32
|
end
|
33
|
+
deprecation_deprecate :login
|
22
34
|
|
23
35
|
end
|
@@ -23,7 +23,7 @@ namespace :hydra do
|
|
23
23
|
foo = loader.reload(pid)
|
24
24
|
puts "Updated #{pid}"
|
25
25
|
rescue Errno::ECONNREFUSED => e
|
26
|
-
puts "Can't connect to Fedora! Are you sure jetty is running?"
|
26
|
+
puts "Can't connect to Fedora! Are you sure jetty is running? (#{ActiveFedora::Base.connection_for_pid(pid).inspect})"
|
27
27
|
rescue Exception => e
|
28
28
|
puts("Received a Fedora error while loading #{pid}\n#{e}")
|
29
29
|
logger.error("Received a Fedora error while loading #{pid}\n#{e}")
|
data/tasks/hydra-head.rake
CHANGED
@@ -132,6 +132,8 @@ namespace :hyhead do
|
|
132
132
|
|
133
133
|
puts "Copying Gemfile from test_support/etc"
|
134
134
|
FileUtils.cp('../../test_support/etc/Gemfile','./Gemfile')
|
135
|
+
puts "Copying test model CommonMetadataAsset from test_support/etc"
|
136
|
+
FileUtils.cp('../../test_support/etc/common_metadata_asset.rb','./app/models/')
|
135
137
|
|
136
138
|
puts "Copying fixtures into test app spec/fixtures directory"
|
137
139
|
FileUtils.mkdir_p( File.join('.','spec') )
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# @deprecated This is intended as
|
1
|
+
# @deprecated This is intended as a model used for testing (to cover all views). This will be removed no later than 6.x
|
2
2
|
# EXAMPLE of a basic model that conforms to Hydra commonMetadata cModel and has basic MODS metadata (currently "Article" is the MODS exemplar)
|
3
3
|
class CommonMetadataAsset < ActiveFedora::Base
|
4
4
|
|
@@ -16,4 +16,3 @@ class CommonMetadataAsset < ActiveFedora::Base
|
|
16
16
|
include Hydra::ModelMethods
|
17
17
|
|
18
18
|
end
|
19
|
-
|
@@ -29,7 +29,7 @@ Feature: ModsAsset Show View
|
|
29
29
|
|
30
30
|
Scenario: Public visit Document Show Page for a private document
|
31
31
|
Given I am on the show document page for hydrangea:fixture_archivist_only_mods_article
|
32
|
-
Then I should be on the
|
32
|
+
Then I should be on the login page
|
33
33
|
And I should see "You do not have sufficient access privileges to read this document, which has been marked private" within ".alert"
|
34
34
|
|
35
35
|
@overwritten
|
@@ -10,6 +10,14 @@ require 'mocha'
|
|
10
10
|
# rake cucumber
|
11
11
|
|
12
12
|
describe CatalogController do
|
13
|
+
before :all do
|
14
|
+
@behavior = Hydra::Controller::CatalogControllerBehavior.deprecation_behavior
|
15
|
+
Hydra::Controller::CatalogControllerBehavior.deprecation_behavior = :silence
|
16
|
+
end
|
17
|
+
|
18
|
+
after :all do
|
19
|
+
Hydra::Controller::CatalogControllerBehavior.deprecation_behavior = @behavior
|
20
|
+
end
|
13
21
|
|
14
22
|
before do
|
15
23
|
#controller.stubs(:protect_from_forgery).returns("meh")
|
@@ -9,6 +9,15 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
9
9
|
# rake cucumber
|
10
10
|
|
11
11
|
describe CatalogController do
|
12
|
+
before :all do
|
13
|
+
@behavior = Hydra::Controller::CatalogControllerBehavior.deprecation_behavior
|
14
|
+
Hydra::Controller::CatalogControllerBehavior.deprecation_behavior = :silence
|
15
|
+
end
|
16
|
+
|
17
|
+
after :all do
|
18
|
+
Hydra::Controller::CatalogControllerBehavior.deprecation_behavior = @behavior
|
19
|
+
end
|
20
|
+
|
12
21
|
|
13
22
|
before do
|
14
23
|
controller.stubs(:load_fedora_document)
|
@@ -46,7 +55,7 @@ describe CatalogController do
|
|
46
55
|
|
47
56
|
get :edit, :id=>"hydrangea:fixture_mods_article1"
|
48
57
|
response.should redirect_to(:action => 'show')
|
49
|
-
flash[:
|
58
|
+
flash[:alert].should == "You do not have sufficient privileges to edit this document. You have been redirected to the read-only view."
|
50
59
|
end
|
51
60
|
it "should render normally if user has edit permissions" do
|
52
61
|
controller.expects(:can?).with(:edit, anything()).returns(true)
|
@@ -33,6 +33,14 @@ end
|
|
33
33
|
|
34
34
|
|
35
35
|
describe CatalogController do
|
36
|
+
before :all do
|
37
|
+
@behavior = Hydra::Controller::ControllerBehavior.deprecation_behavior
|
38
|
+
Hydra::Controller::ControllerBehavior.deprecation_behavior = :silence
|
39
|
+
end
|
40
|
+
|
41
|
+
after :all do
|
42
|
+
Hydra::Controller::ControllerBehavior.deprecation_behavior = @behavior
|
43
|
+
end
|
36
44
|
describe "Home Page" do
|
37
45
|
|
38
46
|
it "Should have Valid HTML when not logged in" do
|
@@ -9,6 +9,16 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
9
9
|
# rake cucumber
|
10
10
|
|
11
11
|
describe Hydra::ContributorsController do
|
12
|
+
before :all do
|
13
|
+
@behavior = Hydra::ContributorsController.deprecation_behavior
|
14
|
+
Hydra::ContributorsController.deprecation_behavior = :silence
|
15
|
+
|
16
|
+
end
|
17
|
+
|
18
|
+
after :all do
|
19
|
+
Hydra::ContributorsController.deprecation_behavior = @behavior
|
20
|
+
|
21
|
+
end
|
12
22
|
|
13
23
|
describe "create" do
|
14
24
|
it "should support adding new person / contributor / organization nodes" do
|
@@ -2,7 +2,6 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
2
2
|
|
3
3
|
describe Hydra::FileAssetsController do
|
4
4
|
include Devise::TestHelpers
|
5
|
-
|
6
5
|
before do
|
7
6
|
session[:user]='bob'
|
8
7
|
end
|
@@ -53,11 +52,24 @@ describe Hydra::FileAssetsController do
|
|
53
52
|
mock_user = mock("User")
|
54
53
|
mock_user.stubs(:email).returns("fake_user@example.com")
|
55
54
|
mock_user.stubs(:is_being_superuser?).returns(false)
|
55
|
+
mock_user.stubs(:persisted?).returns(true)
|
56
56
|
mock_user.stubs(:new_record?).returns(false)
|
57
57
|
controller.stubs(:current_user).returns(mock_user)
|
58
58
|
request.env["HTTP_REFERER"] = "http://example.com/?q=search"
|
59
59
|
get(:show, :id=>"hydrangea:fixture_file_asset1")
|
60
|
-
response.should redirect_to(
|
60
|
+
response.should redirect_to(root_url)
|
61
|
+
end
|
62
|
+
it "should redirect to the login page if the user is not logged in" do
|
63
|
+
mock_user = mock("User")
|
64
|
+
mock_user.stubs(:email).returns("fake_user@example.com")
|
65
|
+
mock_user.stubs(:is_being_superuser?).returns(false)
|
66
|
+
mock_user.stubs(:persisted?).returns(false)
|
67
|
+
mock_user.stubs(:new_record?).returns(true)
|
68
|
+
controller.stubs(:current_user).returns(mock_user)
|
69
|
+
request.env["HTTP_REFERER"] = "http://example.com/?q=search"
|
70
|
+
get(:show, :id=>"hydrangea:fixture_file_asset1")
|
71
|
+
response.should redirect_to("http://test.host/users/sign_in")
|
72
|
+
session['user_return_to'].should =~ /fixture_file_asset1/
|
61
73
|
end
|
62
74
|
it "should redirect to index view if the file does not exist" do
|
63
75
|
get(:show, :id=>"example:invalid_object")
|
@@ -149,7 +161,7 @@ describe Hydra::FileAssetsController do
|
|
149
161
|
describe "create" do
|
150
162
|
before :each do
|
151
163
|
mock_user = mock("User")
|
152
|
-
mock_user.stubs(:
|
164
|
+
mock_user.stubs(:user_key).returns('user@example.com')
|
153
165
|
mock_warden = mock("Warden")
|
154
166
|
mock_warden.stubs(:authenticate).returns(mock_user)
|
155
167
|
request.env['warden'] = mock_warden
|
@@ -9,9 +9,19 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
9
9
|
# rake cucumber
|
10
10
|
|
11
11
|
describe Hydra::AssetsController do
|
12
|
+
before :all do
|
13
|
+
@behavior = Hydra::AssetsController.deprecation_behavior
|
14
|
+
Hydra::AssetsController.deprecation_behavior = :silence
|
15
|
+
end
|
16
|
+
|
17
|
+
after :all do
|
18
|
+
Hydra::AssetsController.deprecation_behavior = @behavior
|
19
|
+
end
|
12
20
|
|
13
21
|
before do
|
14
|
-
|
22
|
+
@user = FactoryGirl.create(:user)
|
23
|
+
sign_in @user
|
24
|
+
controller.stubs(:enforce_access_controls).returns(true)
|
15
25
|
end
|
16
26
|
|
17
27
|
it "should use DocumentController" do
|
@@ -1,9 +1,7 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
|
-
class HydraControllerTest <
|
4
|
-
include Hydra::Controller
|
3
|
+
class HydraControllerTest < ActionController::Base
|
5
4
|
end
|
6
|
-
|
7
5
|
describe HydraControllerTest do
|
8
6
|
|
9
7
|
after :all do
|
@@ -14,10 +12,23 @@ describe HydraControllerTest do
|
|
14
12
|
HydraControllerTest.expects(:helper).with(:hydra)
|
15
13
|
HydraControllerTest.expects(:helper).with(:hydra_assets)
|
16
14
|
HydraControllerTest.stubs(:before_filter)
|
17
|
-
HydraControllerTest.send(:include, Hydra::Controller)
|
15
|
+
HydraControllerTest.send(:include, Hydra::Controller::ControllerBehavior)
|
18
16
|
end
|
19
17
|
|
20
18
|
describe "load_fedora_document" do
|
19
|
+
before :all do
|
20
|
+
@behavior = Hydra::Controller::ControllerBehavior.deprecation_behavior
|
21
|
+
Hydra::Controller::ControllerBehavior.deprecation_behavior = :silence
|
22
|
+
end
|
23
|
+
|
24
|
+
after :all do
|
25
|
+
Hydra::Controller::ControllerBehavior.deprecation_behavior = @behavior
|
26
|
+
end
|
27
|
+
|
28
|
+
before do
|
29
|
+
HydraControllerTest.send(:include, Hydra::Controller::ControllerBehavior)
|
30
|
+
end
|
31
|
+
|
21
32
|
|
22
33
|
it "should load @document_fedora and @file_assets" do
|
23
34
|
controller.params[:id] = 'hydrangea:fixture_mods_article1'
|
@@ -1,6 +1,14 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
3
|
describe Hydra::PermissionsController do
|
4
|
+
before :all do
|
5
|
+
@behavior = Hydra::PermissionsController.deprecation_behavior
|
6
|
+
Hydra::PermissionsController.deprecation_behavior = :silence
|
7
|
+
end
|
8
|
+
|
9
|
+
after :all do
|
10
|
+
Hydra::PermissionsController.deprecation_behavior = @behavior
|
11
|
+
end
|
4
12
|
describe "create" do
|
5
13
|
it "should create a new permissions entry" do
|
6
14
|
@asset = ModsAsset.create
|
@@ -39,8 +39,7 @@ describe Hydra::AccessControlsEnforcement do
|
|
39
39
|
helper.stubs(:can?).with(:read, nil).returns(true)
|
40
40
|
helper.stubs(:redirect_to)
|
41
41
|
@permissions_solr_document = SolrDocument.new({"edit_access_person_t"=>["testuser@example.com"], "embargo_release_date_dt"=>(Date.parse(Time.now.to_s)+2).to_s})
|
42
|
-
helper.send(:enforce_show_permissions, {})
|
43
|
-
flash[:alert].should == "This item is under embargo. You do not have sufficient access privileges to read this document."
|
42
|
+
lambda {helper.send(:enforce_show_permissions, {})}.should raise_error Hydra::AccessDenied, "This item is under embargo. You do not have sufficient access privileges to read this document."
|
44
43
|
end
|
45
44
|
end
|
46
45
|
describe "apply_gated_discovery" do
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
|
-
describe Hydra::
|
3
|
+
describe Hydra::Controller::UploadBehavior do
|
4
4
|
|
5
5
|
it "should respond to datastream_id" do
|
6
6
|
helper.should respond_to :datastream_id ### API method, test that it's there to be overridden
|
@@ -1,8 +1,17 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
3
|
describe GenericContentObjectsHelper do
|
4
|
+
before :all do
|
5
|
+
@behavior = Hydra::GenericContentObjectsHelperBehavior.deprecation_behavior
|
6
|
+
Hydra::GenericContentObjectsHelperBehavior.deprecation_behavior = :silence
|
7
|
+
end
|
8
|
+
|
9
|
+
after :all do
|
10
|
+
Hydra::GenericContentObjectsHelperBehavior.deprecation_behavior = @behavior
|
11
|
+
end
|
12
|
+
|
4
13
|
it "should have a url for a pid" do
|
5
|
-
helper.datastream_disseminator_url('hydra:123', 'sampleDs').should match /http:\/\/127.0.0.1
|
14
|
+
helper.datastream_disseminator_url('hydra:123', 'sampleDs').should match /http:\/\/127.0.0.1:\d+\/fedora-test\/get\/hydra:123\/sampleDs/
|
6
15
|
end
|
7
16
|
|
8
17
|
end
|
@@ -8,7 +8,7 @@ require File.expand_path( File.join( File.dirname(__FILE__),'..','spec_helper')
|
|
8
8
|
# or
|
9
9
|
# rake cucumber
|
10
10
|
|
11
|
-
describe Hydra::
|
11
|
+
describe Hydra::Controller::RepositoryControllerBehavior do
|
12
12
|
|
13
13
|
describe "load_document_from_params" do
|
14
14
|
it "should choose which model to use based on submitted params" do
|
@@ -1,6 +1,14 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
3
|
describe HydraAssetsHelper do
|
4
|
+
before :all do
|
5
|
+
@behavior = Hydra::HydraAssetsHelperBehavior.deprecation_behavior
|
6
|
+
Hydra::HydraAssetsHelperBehavior.deprecation_behavior = :silence
|
7
|
+
end
|
8
|
+
|
9
|
+
after :all do
|
10
|
+
Hydra::HydraAssetsHelperBehavior.deprecation_behavior = @behavior
|
11
|
+
end
|
4
12
|
include HydraAssetsHelper
|
5
13
|
|
6
14
|
describe "link_to_create_asset" do
|
@@ -1,6 +1,17 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
3
|
describe HydraFedoraMetadataHelper do
|
4
|
+
before :all do
|
5
|
+
@behavior = Hydra::HydraFedoraMetadataHelperBehavior.deprecation_behavior
|
6
|
+
@form_behavior = Hydra::HydraFedoraMetadataHelperBehavior::HydraFormFor.deprecation_behavior
|
7
|
+
Hydra::HydraFedoraMetadataHelperBehavior.deprecation_behavior = :silence
|
8
|
+
Hydra::HydraFedoraMetadataHelperBehavior::HydraFormFor.deprecation_behavior = :silence
|
9
|
+
end
|
10
|
+
|
11
|
+
after :all do
|
12
|
+
Hydra::HydraFedoraMetadataHelperBehavior.deprecation_behavior = @behavior
|
13
|
+
Hydra::HydraFedoraMetadataHelperBehavior::HydraFormFor.deprecation_behavior = @form_behavior
|
14
|
+
end
|
4
15
|
|
5
16
|
before(:all) do
|
6
17
|
@resource = mock("fedora object")
|
@@ -12,6 +12,15 @@ describe HydraHelper do
|
|
12
12
|
end
|
13
13
|
|
14
14
|
describe "get_html_data_with_label" do
|
15
|
+
before :all do
|
16
|
+
@behavior = Hydra::HydraHelperBehavior.deprecation_behavior
|
17
|
+
Hydra::HydraHelperBehavior.deprecation_behavior = :silence
|
18
|
+
end
|
19
|
+
|
20
|
+
after :all do
|
21
|
+
Hydra::HydraHelperBehavior.deprecation_behavior = @behavior
|
22
|
+
end
|
23
|
+
|
15
24
|
before(:all) do
|
16
25
|
@default_html = " <p>Default Hello</p><ol>
|
17
26
|
<li>1</li>
|
@@ -56,6 +65,15 @@ describe HydraHelper do
|
|
56
65
|
end
|
57
66
|
|
58
67
|
describe "get_textile_data_with_label" do
|
68
|
+
before :all do
|
69
|
+
@behavior = Hydra::HydraHelperBehavior.deprecation_behavior
|
70
|
+
Hydra::HydraHelperBehavior.deprecation_behavior = :silence
|
71
|
+
end
|
72
|
+
|
73
|
+
after :all do
|
74
|
+
Hydra::HydraHelperBehavior.deprecation_behavior = @behavior
|
75
|
+
end
|
76
|
+
|
59
77
|
before(:all) do
|
60
78
|
@sample_document = {'relation_t'=>['http://example.com','"Salt Dev":https://salt-dev.stanford.edu/catalog']}
|
61
79
|
end
|
@@ -2,18 +2,6 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
2
2
|
|
3
3
|
describe Hydra::ModelMethods do
|
4
4
|
|
5
|
-
describe "apply_depositor_metadata" do
|
6
|
-
it "should set the depositor metadata field and assign edit permissions to the given depositor_id" do
|
7
|
-
prop_ds = mock("properties ds")
|
8
|
-
rights_ds = mock("rights ds")
|
9
|
-
prop_ds.expects(:respond_to?).with(:depositor_values).returns(true)
|
10
|
-
prop_ds.expects(:depositor_values=).with("foouser")
|
11
|
-
rights_ds.expects(:update_indexed_attributes).with([:edit_access, :person]=>"foouser")
|
12
|
-
|
13
|
-
helper.stubs(:datastreams).returns({"rightsMetadata"=>rights_ds,"properties"=>prop_ds})
|
14
|
-
helper.apply_depositor_metadata("foouser")
|
15
|
-
end
|
16
|
-
end
|
17
5
|
|
18
6
|
describe "set_title_and_label" do
|
19
7
|
before(:each) do
|
@@ -1,6 +1,14 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
3
|
describe HydraUploaderHelper do
|
4
|
+
before :all do
|
5
|
+
@behavior = Hydra::HydraUploaderHelperBehavior.deprecation_behavior
|
6
|
+
Hydra::HydraUploaderHelperBehavior.deprecation_behavior = :silence
|
7
|
+
end
|
8
|
+
|
9
|
+
after :all do
|
10
|
+
Hydra::HydraUploaderHelperBehavior.deprecation_behavior = @behavior
|
11
|
+
end
|
4
12
|
|
5
13
|
describe "upload_url" do
|
6
14
|
it "should use container_id if its available" do
|