[refs #581] dont destroy child projects
This commit is contained in:
parent
1c18ee48b2
commit
a0a4c8b100
|
@ -49,7 +49,7 @@ class Project < ActiveRecord::Base
|
|||
after_commit(:on => :create) {|p| p.import_attached_srpm if p.srpm?}# later with resque # should be after create_git_repo
|
||||
# after_rollback lambda { destroy_git_repo rescue true if new_record? }
|
||||
|
||||
has_ancestry
|
||||
has_ancestry :orphan_strategy => :rootify #:adopt not available yet
|
||||
|
||||
has_attached_file :srpm
|
||||
|
||||
|
|
|
@ -1,6 +1,41 @@
|
|||
# -*- encoding : utf-8 -*-
|
||||
require 'spec_helper'
|
||||
|
||||
#describe Project do
|
||||
# pending "add some examples to (or delete) #{__FILE__}"
|
||||
#end
|
||||
describe Project do
|
||||
before(:each) do
|
||||
stub_symlink_methods
|
||||
@root_project = FactoryGirl.create(:project)
|
||||
@child_project = @root_project.fork(FactoryGirl.create(:user))
|
||||
@child_child_project = @child_project.fork(FactoryGirl.create(:user))
|
||||
end
|
||||
|
||||
context 'for destroy root' do
|
||||
before(:each) do
|
||||
@root_project.destroy
|
||||
end
|
||||
|
||||
it "should not be delete child" do
|
||||
Project.where(:id => @child_project).count.should == 1
|
||||
end
|
||||
|
||||
it "should not be delete child of the child" do
|
||||
Project.where(:id => @child_child_project).count.should == 1
|
||||
end
|
||||
end
|
||||
|
||||
# uncommit when will be available :orphan_strategy => :adopt
|
||||
|
||||
#context 'for destroy middle node' do
|
||||
# before(:each) do
|
||||
# @child_project.destroy
|
||||
# end
|
||||
|
||||
# it "should set root project as a parent for orphan child" do
|
||||
# Project.find(@child_child_project).ancestry == @root_project
|
||||
# end
|
||||
|
||||
# it "should not be delete child of the child" do
|
||||
# Project.where(:id => @child_child_project).count.should == 1
|
||||
# end
|
||||
#end
|
||||
end
|
Loading…
Reference in New Issue