Sha256: 6b9ac11d9b29387cc5fd09520b971a90601239aa585bad839c9504537a7d84c0

Contents?: true

Size: 1.14 KB

Versions: 2

Compression:

Stored size: 1.14 KB

Contents

require 'fedora-migrate'
require 'rspec/core'
require 'rspec/core/rake_task'
require 'jettywrapper'
Jettywrapper.url = "https://github.com/projecthydra/hydra-jetty/archive/migrate.zip"

RSpec::Core::RakeTask.new(:spec)

desc "Run continuous integration tests"
task ci: ['jetty:clean'] do
  jetty_params = Jettywrapper.load_config
  error = Jettywrapper.wrap(jetty_params) do
    Rake::Task['fixtures:load'].invoke
    Rake::Task['spec'].invoke
  end
  raise "test failures: #{error}" if error
end
namespace :fixtures do

  desc "Load Fedora3 fixtures for testing; use FIXTURE_PATH= for your own"
  task :load do
    repo = FedoraMigrate.source
    path = ENV["FIXTURE_PATH"] || "spec/fixtures/objects"
    Dir.glob(File.join(path,"*.xml")).each do |f|
      fixture = File.open(f)
      begin
        repo.connection.ingest(file: fixture.read)
      rescue
        puts "Failed to load #{fixture.path} (skipping)"
      end
    end
  end

  desc "Remove all objects from Fedora3"
  task :unload do
    repo = FedoraMigrate.source
    repo.connection.search("").collect { |o| o.delete }
  end

  desc "Reload fixtures into Fedora3"
  task reload: [:unload, :load]

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
fedora-migrate-0.3.0 tasks/dev.rake
fedora-migrate-0.2.0 tasks/dev.rake