hydra-head 3.0.0pre1 → 3.0.0pre2
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile.lock +6 -4
- data/HOW_TO_GET_STARTED.textile +571 -0
- data/HYDRA_ACCESS_CONTROLS.textile +27 -0
- data/INITIAL_APP_MODS.textile +239 -0
- data/README.textile +22 -7
- data/README_RAILS3_CHANGES.textile +23 -2
- data/app/views/catalog/_sort_and_per_page.html.erb +3 -2
- data/app/views/catalog/show.html.erb +1 -1
- data/lib/generators/hydra/cucumber_support_generator.rb +29 -0
- data/lib/generators/hydra/head_generator.rb +6 -14
- data/lib/generators/hydra/hyhead_fixtures_generator.rb +27 -0
- data/lib/generators/hydra/templates/config/initializers/fedora_config.rb +3 -1
- data/lib/hydra-head/version.rb +1 -1
- data/lib/hydra/access_controls_evaluation.rb +8 -4
- data/lib/hydra/{fixtures.rb → fixture_loader.rb} +14 -9
- data/lib/railties/hydra-fixtures.rake +5 -5
- data/tasks/hydra-head.rake +36 -25
- data/test_support/features/file_upload.feature +1 -1
- data/test_support/features/mods_asset_search_result.feature +12 -1
- data/test_support/features/step_definitions/edit_metadata_steps.rb +2 -2
- data/test_support/features/step_definitions/show_document_steps.rb +4 -0
- data/test_support/spec/helpers/access_controls_enforcement_spec.rb +62 -10
- data/vendor/cache/addressable-2.2.6.gem +0 -0
- data/vendor/cache/launchy-2.0.4.gem +0 -0
- data/vendor/cache/mediashelf-loggable-0.4.3.gem +0 -0
- data/vendor/cache/multipart-post-1.1.3.gem +0 -0
- metadata +15 -13
- data/lib/generators/hydra/templates/migrations/add_user_attributes_table.rb +0 -15
- data/test_support/features/html_validity.feature +0 -47
- data/vendor/cache/launchy-2.0.3.gem +0 -0
- data/vendor/cache/mediashelf-loggable-0.4.2.gem +0 -0
- data/vendor/cache/multipart-post-1.1.2.gem +0 -0
@@ -0,0 +1,27 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
require 'rails/generators'
|
3
|
+
require 'rails/generators/migration'
|
4
|
+
|
5
|
+
module Hydra
|
6
|
+
class HyheadFixturesGenerator < Rails::Generators::Base
|
7
|
+
|
8
|
+
source_root File.expand_path('../../../../', __FILE__)
|
9
|
+
|
10
|
+
desc """
|
11
|
+
This Generator copies the hydra-head sample/test objects into your application's test_support/fixtures directory
|
12
|
+
These objects are useful for getting a sense of how hydra works, but you will want to delete them and create your own
|
13
|
+
fixtures to run your application's tests against.
|
14
|
+
|
15
|
+
After running this generator, you can import your fixtures into fedora & solr by running
|
16
|
+
|
17
|
+
rake hydra:fixtures:refresh
|
18
|
+
rake hydra:fixtures:refresh RAILS_ENV=test
|
19
|
+
|
20
|
+
"""
|
21
|
+
|
22
|
+
def copy_hyhead_fixtures
|
23
|
+
directory("test_support/fixtures", "test_support/fixtures")
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
end
|
@@ -7,7 +7,9 @@ require 'active-fedora'
|
|
7
7
|
# This initializes ActiveFedora with config info from RAILS_ROOT/lib/fedora.yml
|
8
8
|
# Among other things, it allows you to access Fedora and Solr (ActiveFedora's copy) as ActiveFedora.fedora and ActiveFedora.solr
|
9
9
|
silence_warnings { ENABLE_SOLR_UPDATES=true }
|
10
|
-
|
10
|
+
|
11
|
+
# Don't need to call ActiveFedora.init any more. It's handled by {ActiveFedora::Railtie}
|
12
|
+
# ActiveFedora.init
|
11
13
|
|
12
14
|
#
|
13
15
|
# Loads EAD descriptors
|
data/lib/hydra-head/version.rb
CHANGED
@@ -69,27 +69,31 @@ module Hydra::AccessControlsEvaluation
|
|
69
69
|
|
70
70
|
private
|
71
71
|
def edit_groups
|
72
|
-
|
72
|
+
edit_group_field = Hydra.config[:permissions][:edit][:group]
|
73
|
+
eg = ((@permissions_solr_document == nil || @permissions_solr_document.fetch(edit_group_field,nil) == nil) ? [] : @permissions_solr_document.fetch(edit_group_field,nil))
|
73
74
|
logger.debug("edit_groups: #{eg.inspect}")
|
74
75
|
return eg
|
75
76
|
end
|
76
77
|
|
77
78
|
# edit implies read, so read_groups is the union of edit and read groups
|
78
79
|
def read_groups
|
79
|
-
|
80
|
+
read_group_field = Hydra.config[:permissions][:read][:group]
|
81
|
+
rg = edit_groups | ((@permissions_solr_document == nil || @permissions_solr_document.fetch(read_group_field,nil) == nil) ? [] : @permissions_solr_document.fetch(read_group_field,nil))
|
80
82
|
logger.debug("read_groups: #{rg.inspect}")
|
81
83
|
return rg
|
82
84
|
end
|
83
85
|
|
84
86
|
def edit_persons
|
85
|
-
|
87
|
+
edit_person_field = Hydra.config[:permissions][:edit][:individual]
|
88
|
+
ep = ((@permissions_solr_document == nil || @permissions_solr_document.fetch(edit_person_field,nil) == nil) ? [] : @permissions_solr_document.fetch(edit_person_field,nil))
|
86
89
|
logger.debug("edit_persons: #{ep.inspect}")
|
87
90
|
return ep
|
88
91
|
end
|
89
92
|
|
90
93
|
# edit implies read, so read_persons is the union of edit and read persons
|
91
94
|
def read_persons
|
92
|
-
|
95
|
+
read_individual_field = Hydra.config[:permissions][:read][:individual]
|
96
|
+
rp = edit_persons | ((@permissions_solr_document == nil || @permissions_solr_document.fetch(read_individual_field,nil) == nil) ? [] : @permissions_solr_document.fetch(read_individual_field,nil))
|
93
97
|
logger.debug("read_persons: #{rp.inspect}")
|
94
98
|
return rp
|
95
99
|
end
|
@@ -1,8 +1,14 @@
|
|
1
1
|
module Hydra
|
2
2
|
|
3
|
-
class
|
4
|
-
|
5
|
-
|
3
|
+
class FixtureLoader
|
4
|
+
attr_accessor :path
|
5
|
+
|
6
|
+
def initialize(path)
|
7
|
+
self.path = path
|
8
|
+
end
|
9
|
+
|
10
|
+
def filename_for_pid(pid)
|
11
|
+
File.join(path, "#{pid.gsub(":","_")}.foxml.xml")
|
6
12
|
end
|
7
13
|
|
8
14
|
def self.delete(pid)
|
@@ -15,14 +21,14 @@ module Hydra
|
|
15
21
|
end
|
16
22
|
end
|
17
23
|
|
18
|
-
def
|
19
|
-
delete(pid)
|
24
|
+
def reload(pid)
|
25
|
+
self.class.delete(pid)
|
20
26
|
import_and_index(pid)
|
21
27
|
end
|
22
28
|
|
23
|
-
def
|
24
|
-
body = import_to_fedora(filename_for_pid(pid))
|
25
|
-
index(pid)
|
29
|
+
def import_and_index(pid)
|
30
|
+
body = self.class.import_to_fedora(filename_for_pid(pid))
|
31
|
+
self.class.index(pid)
|
26
32
|
body
|
27
33
|
end
|
28
34
|
|
@@ -33,7 +39,6 @@ module Hydra
|
|
33
39
|
|
34
40
|
def self.import_to_fedora(filename)
|
35
41
|
file = File.new(filename, "r")
|
36
|
-
puts "Loading #{filename}"
|
37
42
|
result = foxml = Fedora::Repository.instance.ingest(file.read)
|
38
43
|
raise "Failed to ingest the fixture." unless result
|
39
44
|
result.body
|
@@ -2,7 +2,7 @@
|
|
2
2
|
require "active-fedora"
|
3
3
|
require "solrizer-fedora"
|
4
4
|
require "active_support" # This is just to load ActiveSupport::CoreExtensions::String::Inflections
|
5
|
-
require "hydra/
|
5
|
+
require "hydra/fixture_loader"
|
6
6
|
namespace :hydra do
|
7
7
|
|
8
8
|
|
@@ -16,7 +16,7 @@ namespace :hydra do
|
|
16
16
|
raise "You must specify a valid pid. Example: rake hydra:refresh_fixture pid=demo:12"
|
17
17
|
end
|
18
18
|
begin
|
19
|
-
Hydra::
|
19
|
+
Hydra::FixtureLoader.new('test_support/fixtures').reload(ENV["pid"])
|
20
20
|
rescue Errno::ECONNREFUSED => e
|
21
21
|
puts "Can't connect to Fedora! Are you sure jetty is running?"
|
22
22
|
rescue Fedora::ServerError => e
|
@@ -37,7 +37,7 @@ namespace :hydra do
|
|
37
37
|
pid = ENV["pid"]
|
38
38
|
puts "Deleting '#{pid}' from #{Fedora::Repository.instance.fedora_url}"
|
39
39
|
begin
|
40
|
-
Hydra::
|
40
|
+
Hydra::FixtureLoader.delete(pid)
|
41
41
|
rescue Errno::ECONNREFUSED => e
|
42
42
|
puts "Can't connect to Fedora! Are you sure jetty is running?"
|
43
43
|
rescue Fedora::ServerError => e
|
@@ -107,9 +107,9 @@ namespace :hydra do
|
|
107
107
|
Fedora::Repository.register(ENV["destination"])
|
108
108
|
end
|
109
109
|
if !ENV["fixture"].nil?
|
110
|
-
body = Hydra::
|
110
|
+
body = Hydra::FixtureLoader.import_to_fedora(ENV["fixture"])
|
111
111
|
elsif !ENV["pid"].nil?
|
112
|
-
body = Hydra::
|
112
|
+
body = Hydra::FixtureLoader.new('test_support/fixtures').import_and_index(ENV["pid"])
|
113
113
|
else
|
114
114
|
raise "You must specify a path to the fixture or provide its pid. Example: rake hydra:import_fixture fixture=test_support/fixtures/demo_12.foxml.xml"
|
115
115
|
end
|
data/tasks/hydra-head.rake
CHANGED
@@ -7,26 +7,31 @@ namespace :hyhead do
|
|
7
7
|
|
8
8
|
desc "Execute Continuous Integration build (docs, tests with coverage)"
|
9
9
|
task :ci do
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
10
|
+
if ( ENV['environment'] == 'test' )
|
11
|
+
Rake::Task["hyhead:doc"].invoke
|
12
|
+
Rake::Task["hydra:jetty:config"].invoke
|
13
|
+
|
14
|
+
require 'jettywrapper'
|
15
|
+
jetty_params = {
|
16
|
+
:jetty_home => File.expand_path(File.dirname(__FILE__) + '/../jetty'),
|
17
|
+
:quiet => false,
|
18
|
+
:jetty_port => 8983,
|
19
|
+
:solr_home => File.expand_path(File.dirname(__FILE__) + '/../jetty/solr'),
|
20
|
+
:fedora_home => File.expand_path(File.dirname(__FILE__) + '/../jetty/fedora/default'),
|
21
|
+
:startup_wait => 30
|
22
|
+
}
|
23
|
+
|
24
|
+
# does this make jetty run in TEST environment???
|
25
|
+
error = Jettywrapper.wrap(jetty_params) do
|
26
|
+
Rake::Task['hyhead:setup_test_app'].invoke
|
27
|
+
puts %x[rake hyhead:fixtures:refresh RAILS_ENV=test] # calling hydra:fixtures:refresh from the root of the test app
|
28
|
+
Rake::Task['hyhead:test'].invoke
|
29
|
+
end
|
30
|
+
raise "test failures: #{error}" if error
|
31
|
+
else
|
32
|
+
system("rake hyhead:ci environment=test")
|
33
|
+
fail unless $?.success?
|
28
34
|
end
|
29
|
-
raise "test failures: #{error}" if error
|
30
35
|
end
|
31
36
|
|
32
37
|
|
@@ -166,11 +171,6 @@ namespace :hyhead do
|
|
166
171
|
|
167
172
|
FileUtils.rm('public/index.html')
|
168
173
|
|
169
|
-
|
170
|
-
after = 'TestApp::Application.configure do'
|
171
|
-
replace!( "#{path}/config/environments/test.rb", /#{after}/, "#{after}\n config.log_level = :warn\n")
|
172
|
-
|
173
|
-
|
174
174
|
puts "Copying Gemfile from test_support/etc"
|
175
175
|
FileUtils.cp('../../test_support/etc/Gemfile','./Gemfile')
|
176
176
|
|
@@ -197,6 +197,10 @@ namespace :hyhead do
|
|
197
197
|
%x[rails generate hydra:head -df] # using -f to force overwriting of solr.yml
|
198
198
|
errors << 'Error generating default hydra-head install' unless $?.success?
|
199
199
|
|
200
|
+
# set log_level to :warn in the test app's test environment. (:debug is too verbose)
|
201
|
+
after = 'TestApp::Application.configure do'
|
202
|
+
replace!( "#{path}/config/environments/test.rb", /#{after}/, "#{after}\n config.log_level = :warn\n")
|
203
|
+
|
200
204
|
puts "Running rake db:migrate"
|
201
205
|
%x[rake db:migrate]
|
202
206
|
%x[rake db:migrate RAILS_ENV=test]
|
@@ -222,12 +226,19 @@ namespace :hyhead do
|
|
222
226
|
|
223
227
|
puts "Running rspec tests"
|
224
228
|
puts %x[rake hyhead:spec:rcov]
|
229
|
+
rspec_success = $?.success?
|
225
230
|
|
226
231
|
puts "Running cucumber tests"
|
227
232
|
puts %x[rake hyhead:cucumber]
|
233
|
+
cucumber_success = $?.success?
|
228
234
|
|
229
235
|
FileUtils.cd('../../')
|
230
|
-
|
236
|
+
if rspec_success && cucumber_success
|
237
|
+
puts "Completed test suite with no errors"
|
238
|
+
else
|
239
|
+
puts "Test suite encountered failures... check console output for details."
|
240
|
+
fail
|
241
|
+
end
|
231
242
|
end
|
232
243
|
|
233
244
|
desc "Make sure the test app is installed, then run the tasks from its root directory"
|
@@ -25,7 +25,7 @@ Feature: Upload file into a document
|
|
25
25
|
Scenario: Upload files on file assets list page
|
26
26
|
Given I am logged in as "archivist1@example.com"
|
27
27
|
And I am on the file asset list page for hydrangea:fixture_mods_dataset1
|
28
|
-
|
28
|
+
#Then show me the page
|
29
29
|
And I attach the file "test_support/fixtures/image.jp2" to "Filedata"
|
30
30
|
When I press "Upload File"
|
31
31
|
Then I should see "The file image.jp2 has been saved"
|
@@ -4,10 +4,21 @@ Feature: Article Search Result
|
|
4
4
|
In order to find articles
|
5
5
|
I want to see appropriate information about articles in a search result
|
6
6
|
|
7
|
-
Scenario: Viewing search
|
7
|
+
Scenario: Viewing a single search result
|
8
8
|
Given I am on the search page
|
9
9
|
And I fill in "q" with "1234-5678"
|
10
10
|
When I press "submit"
|
11
11
|
Then I should see a link to "the show document page for hydrangea:fixture_mods_article3"
|
12
12
|
And I should see "Test Article"
|
13
13
|
And I should see "Aug. 1, 1998"
|
14
|
+
Scenario: Viewing multiple search results
|
15
|
+
Given I am on the search page
|
16
|
+
And I fill in "q" with "fixture"
|
17
|
+
When I press "submit"
|
18
|
+
Then I should see a link to "the show document page for hydrangea:fixture_mods_article1"
|
19
|
+
Then I should see a link to "the show document page for hydrangea:fixture_mods_article2"
|
20
|
+
Then I should see a link to "the show document page for hydrangea:fixture_mods_dataset1"
|
21
|
+
Then I should see a link to "the show document page for hydrangea:fixture_mods_article3"
|
22
|
+
And I should see "Displaying all 4 items"
|
23
|
+
And I should see a dropdown for "per_page"
|
24
|
+
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require "hydra/
|
1
|
+
require "hydra/fixture_loader"
|
2
2
|
# This is the post-submission complement to "I fill in the following" from web_steps.rb
|
3
3
|
Then /^the following (should contain|contain|should not contain|do not contain):$/ do |bool,table|
|
4
4
|
# table is a Cucumber::Ast::Table
|
@@ -48,7 +48,7 @@ Then /^I should see a "([^"]*)" button(?: within "([^"]*)")?$/ do |button_locato
|
|
48
48
|
end
|
49
49
|
|
50
50
|
Given /^that "([^"]*)" has been loaded into fedora$/ do |pid|
|
51
|
-
Hydra::
|
51
|
+
Hydra::FixtureLoader.new('test_support/fixtures').reload(pid)
|
52
52
|
|
53
53
|
end
|
54
54
|
|
@@ -46,6 +46,10 @@ Then /^I should not see a link to the "([^\"]*)" page$/ do |link_name|
|
|
46
46
|
page.should_not have_xpath(".//a[@href=\"#{path_to(link_name)}\"]")
|
47
47
|
end
|
48
48
|
|
49
|
+
Then /^I should see a dropdown for "([^\"]*)"/ do |id|
|
50
|
+
page.should have_selector("select##{id}")
|
51
|
+
end
|
52
|
+
|
49
53
|
Then /^related links are displayed as urls$/ do
|
50
54
|
pending
|
51
55
|
end
|
@@ -169,7 +169,7 @@ describe Hydra::AccessControlsEnforcement do
|
|
169
169
|
before(:each) do
|
170
170
|
@doc_id = 'hydrangea:fixture_mods_article1'
|
171
171
|
@bad_id = "redrum"
|
172
|
-
@
|
172
|
+
@permissions_solr_response2, @permissions_solr_document = helper.get_permissions_solr_response_for_doc_id(@doc_id)
|
173
173
|
end
|
174
174
|
|
175
175
|
it "should raise Blacklight::InvalidSolrID for an unknown id" do
|
@@ -185,28 +185,80 @@ describe Hydra::AccessControlsEnforcement do
|
|
185
185
|
end
|
186
186
|
|
187
187
|
it "should have a non-nil result for a known id" do
|
188
|
-
@
|
188
|
+
@permissions_solr_document.should_not == nil
|
189
189
|
end
|
190
190
|
it "should have a single document in the response for a known id" do
|
191
|
-
@
|
191
|
+
@permissions_solr_response2.docs.size.should == 1
|
192
192
|
end
|
193
193
|
it 'should have the expected value in the id field' do
|
194
|
-
@
|
194
|
+
@permissions_solr_document.id.should == @doc_id
|
195
195
|
end
|
196
196
|
it 'should have non-nil values for permissions fields that are set on the object' do
|
197
|
-
@
|
198
|
-
@
|
199
|
-
@
|
200
|
-
@
|
201
|
-
@
|
197
|
+
@permissions_solr_document.get(Hydra.config[:permissions][:catchall]).should_not be_nil
|
198
|
+
@permissions_solr_document.get(Hydra.config[:permissions][:discover][:group]).should_not be_nil
|
199
|
+
@permissions_solr_document.get(Hydra.config[:permissions][:edit][:group]).should_not be_nil
|
200
|
+
@permissions_solr_document.get(Hydra.config[:permissions][:edit][:individual]).should_not be_nil
|
201
|
+
@permissions_solr_document.get(Hydra.config[:permissions][:read][:group]).should_not be_nil
|
202
202
|
|
203
203
|
# @document.get(Hydra.config[:permissions][:discover][:individual]).should_not be_nil
|
204
204
|
# @document.get(Hydra.config[:permissions][:read][:individual]).should_not be_nil
|
205
205
|
# @document.get(Hydra.config[:permissions][:owner]).should_not be_nil
|
206
206
|
# @document.get(Hydra.config[:permissions][:embargo_release_date]).should_not be_nil
|
207
207
|
end
|
208
|
+
|
209
|
+
describe "permissions helpers" do
|
210
|
+
before :each do
|
211
|
+
@hydra_config_hash = { :permissions => {
|
212
|
+
:catchall => "access_t",
|
213
|
+
:discover => {:group =>"discover_access_group_t", :individual=>"discover_access_person_t"},
|
214
|
+
:read => {:group =>"read_foobar_group_t", :individual=>"read_foobar_person_t"},
|
215
|
+
:edit => {:group =>"edit_foobar_group_t", :individual=>"edit_foobar_person_t"},
|
216
|
+
:owner => "depositor_t",
|
217
|
+
:embargo_release_date => "embargo_release_date_dt"
|
218
|
+
}}
|
219
|
+
@stub_user = User.new
|
220
|
+
@stub_user.stubs(:is_being_superuser?).returns false
|
221
|
+
end
|
222
|
+
it "should check fields from Hydra.config when checking read permissions" do
|
223
|
+
Hydra.expects(:config).at_least(2).returns(@hydra_config_hash)
|
224
|
+
@permissions_solr_document.expects(:fetch).with("read_foobar_group_t",nil)
|
225
|
+
@permissions_solr_document.expects(:fetch).with("read_foobar_person_t",nil)
|
226
|
+
@permissions_solr_document.expects(:fetch).with("edit_foobar_group_t",nil)
|
227
|
+
@permissions_solr_document.expects(:fetch).with("edit_foobar_person_t",nil)
|
228
|
+
helper.stubs(:current_user).returns(@stub_user)
|
229
|
+
helper.reader?
|
230
|
+
end
|
231
|
+
it "should check fields from Hydra.config when checking edit permissions" do
|
232
|
+
Hydra.expects(:config).at_least(2).returns(@hydra_config_hash)
|
233
|
+
@permissions_solr_document.expects(:fetch).with("edit_foobar_group_t",nil)
|
234
|
+
@permissions_solr_document.expects(:fetch).with("edit_foobar_person_t",nil)
|
235
|
+
helper.stubs(:current_user).returns(@stub_user)
|
236
|
+
helper.editor?
|
237
|
+
end
|
238
|
+
it "should check fields from Hydra.config when executing test_permissions for editor" do
|
239
|
+
Hydra.expects(:config).at_least(2).returns(@hydra_config_hash)
|
240
|
+
@permissions_solr_document.expects(:fetch).with("edit_foobar_group_t",nil)
|
241
|
+
@permissions_solr_document.expects(:fetch).with("edit_foobar_person_t",nil)
|
242
|
+
helper.stubs(:current_user).returns(@stub_user)
|
243
|
+
helper.test_permission(:edit)
|
244
|
+
end
|
245
|
+
it "should check fields from Hydra.config when executing test_permissions for reader" do
|
246
|
+
Hydra.expects(:config).at_least(2).returns(@hydra_config_hash)
|
247
|
+
@permissions_solr_document.expects(:fetch).with("read_foobar_group_t",nil)
|
248
|
+
@permissions_solr_document.expects(:fetch).with("read_foobar_person_t",nil)
|
249
|
+
@permissions_solr_document.expects(:fetch).with("edit_foobar_group_t",nil)
|
250
|
+
@permissions_solr_document.expects(:fetch).with("edit_foobar_person_t",nil)
|
251
|
+
helper.stubs(:current_user).returns(@stub_user)
|
252
|
+
helper.test_permission(:read)
|
253
|
+
end
|
254
|
+
end
|
255
|
+
end
|
256
|
+
|
257
|
+
it "should include the methods from Hydra::AccessControlsEvaluation" do
|
258
|
+
helper.should respond_to(:reader?)
|
259
|
+
helper.should respond_to(:editor?)
|
260
|
+
helper.should respond_to(:test_permission)
|
208
261
|
end
|
209
|
-
|
210
262
|
end
|
211
263
|
|
212
264
|
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hydra-head
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 1923832013
|
5
5
|
prerelease: 5
|
6
6
|
segments:
|
7
7
|
- 3
|
8
8
|
- 0
|
9
9
|
- 0
|
10
10
|
- pre
|
11
|
-
-
|
12
|
-
version: 3.0.
|
11
|
+
- 2
|
12
|
+
version: 3.0.0pre2
|
13
13
|
platform: ruby
|
14
14
|
authors:
|
15
15
|
- Matt Zumwalt, Bess Sadler, Julie Meloni, Naomi Dushay, Jessie Keck, John Scofield, Justin Coyne & many more. See https://github.com/projecthydra/hydra-head/contributors
|
@@ -17,8 +17,7 @@ autorequire:
|
|
17
17
|
bindir: bin
|
18
18
|
cert_chain: []
|
19
19
|
|
20
|
-
date: 2011-
|
21
|
-
default_executable:
|
20
|
+
date: 2011-08-02 00:00:00 Z
|
22
21
|
dependencies:
|
23
22
|
- !ruby/object:Gem::Dependency
|
24
23
|
name: rails
|
@@ -708,6 +707,9 @@ files:
|
|
708
707
|
- .rvmrc
|
709
708
|
- Gemfile
|
710
709
|
- Gemfile.lock
|
710
|
+
- HOW_TO_GET_STARTED.textile
|
711
|
+
- HYDRA_ACCESS_CONTROLS.textile
|
712
|
+
- INITIAL_APP_MODS.textile
|
711
713
|
- README.textile
|
712
714
|
- README_RAILS3_CHANGES.textile
|
713
715
|
- Rakefile
|
@@ -829,7 +831,9 @@ files:
|
|
829
831
|
- lib/application_controller.rb
|
830
832
|
- lib/application_helper.rb
|
831
833
|
- lib/engine.rb
|
834
|
+
- lib/generators/hydra/cucumber_support_generator.rb
|
832
835
|
- lib/generators/hydra/head_generator.rb
|
836
|
+
- lib/generators/hydra/hyhead_fixtures_generator.rb
|
833
837
|
- lib/generators/hydra/templates/config/fedora.yml
|
834
838
|
- lib/generators/hydra/templates/config/initializers/blacklight_config.rb
|
835
839
|
- lib/generators/hydra/templates/config/initializers/fedora_config.rb
|
@@ -841,7 +845,6 @@ files:
|
|
841
845
|
- lib/generators/hydra/templates/config/solr.yml
|
842
846
|
- lib/generators/hydra/templates/config/solr_mappings.yml
|
843
847
|
- lib/generators/hydra/templates/fedora_conf/conf/fedora.fcfg
|
844
|
-
- lib/generators/hydra/templates/migrations/add_user_attributes_table.rb
|
845
848
|
- lib/generators/hydra/templates/migrations/create_superusers.rb
|
846
849
|
- lib/generators/hydra/templates/solr_conf/conf/schema.xml
|
847
850
|
- lib/generators/hydra/templates/solr_conf/conf/solrconfig.xml
|
@@ -858,7 +861,7 @@ files:
|
|
858
861
|
- lib/hydra/common_mods_index_methods.rb
|
859
862
|
- lib/hydra/controller.rb
|
860
863
|
- lib/hydra/file_assets_helper.rb
|
861
|
-
- lib/hydra/
|
864
|
+
- lib/hydra/fixture_loader.rb
|
862
865
|
- lib/hydra/generic_content.rb
|
863
866
|
- lib/hydra/generic_image.rb
|
864
867
|
- lib/hydra/image.rb
|
@@ -903,7 +906,6 @@ files:
|
|
903
906
|
- test_support/features/file_assets_list.feature
|
904
907
|
- test_support/features/file_upload.feature
|
905
908
|
- test_support/features/home_page.feature
|
906
|
-
- test_support/features/html_validity.feature
|
907
909
|
- test_support/features/mods_asset_contributors_edit.feature
|
908
910
|
- test_support/features/mods_asset_create.feature
|
909
911
|
- test_support/features/mods_asset_edit.feature
|
@@ -994,6 +996,7 @@ files:
|
|
994
996
|
- vendor/cache/activerecord-3.0.9.gem
|
995
997
|
- vendor/cache/activeresource-3.0.9.gem
|
996
998
|
- vendor/cache/activesupport-3.0.9.gem
|
999
|
+
- vendor/cache/addressable-2.2.6.gem
|
997
1000
|
- vendor/cache/arel-2.0.10.gem
|
998
1001
|
- vendor/cache/blacklight-3.0.0.gem
|
999
1002
|
- vendor/cache/block_helpers-0.3.3.gem
|
@@ -1022,15 +1025,15 @@ files:
|
|
1022
1025
|
- vendor/cache/json-1.5.3.gem
|
1023
1026
|
- vendor/cache/json_pure-1.5.3.gem
|
1024
1027
|
- vendor/cache/kaminari-0.12.4.gem
|
1025
|
-
- vendor/cache/launchy-2.0.
|
1028
|
+
- vendor/cache/launchy-2.0.4.gem
|
1026
1029
|
- vendor/cache/linecache-0.46.gem
|
1027
1030
|
- vendor/cache/logger-1.2.8.gem
|
1028
1031
|
- vendor/cache/mail-2.2.19.gem
|
1029
1032
|
- vendor/cache/marc-0.4.3.gem
|
1030
|
-
- vendor/cache/mediashelf-loggable-0.4.
|
1033
|
+
- vendor/cache/mediashelf-loggable-0.4.3.gem
|
1031
1034
|
- vendor/cache/mime-types-1.16.gem
|
1032
1035
|
- vendor/cache/mocha-0.9.12.gem
|
1033
|
-
- vendor/cache/multipart-post-1.1.
|
1036
|
+
- vendor/cache/multipart-post-1.1.3.gem
|
1034
1037
|
- vendor/cache/nokogiri-1.5.0.gem
|
1035
1038
|
- vendor/cache/om-1.2.5.gem
|
1036
1039
|
- vendor/cache/polyglot-0.3.1.gem
|
@@ -1070,7 +1073,6 @@ files:
|
|
1070
1073
|
- vendor/cache/xml-simple-1.1.0.gem
|
1071
1074
|
- vendor/cache/xpath-0.1.4.gem
|
1072
1075
|
- vendor/cache/yard-0.7.2.gem
|
1073
|
-
has_rdoc: true
|
1074
1076
|
homepage: http://projecthydra.org
|
1075
1077
|
licenses: []
|
1076
1078
|
|
@@ -1102,7 +1104,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1102
1104
|
requirements: []
|
1103
1105
|
|
1104
1106
|
rubyforge_project:
|
1105
|
-
rubygems_version: 1.6
|
1107
|
+
rubygems_version: 1.8.6
|
1106
1108
|
signing_key:
|
1107
1109
|
specification_version: 3
|
1108
1110
|
summary: Hydra-Head Rails Engine (requires Rails3)
|