Removes deprecated specs

pull/1203/head
Hagen Schink 11 years ago
parent b2696f223c
commit 93455d489a
  1. 102
      spec/controllers/planning_element_types_controller_spec.rb
  2. 284
      spec/models/planning_element_type_spec.rb

@ -1,102 +0,0 @@
#-- copyright
# OpenProject is a project management system.
#
# Copyright (C) 2012-2013 the OpenProject Team
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License version 3.
#
# See doc/COPYRIGHT.rdoc for more details.
#++
require File.expand_path('../../spec_helper', __FILE__)
describe PlanningElementTypesController do
let (:current_user) { FactoryGirl.create(:admin) }
before do
User.stub(:current).and_return current_user
end
def enable_type(project, type)
FactoryGirl.create(:enabled_planning_element_type,
:project_id => project.id,
:planning_element_type_id => type.id)
end
describe 'without project scope' do
describe 'index.html' do
def fetch
get 'index'
end
it_should_behave_like "a controller action with require_admin"
end
describe 'new.html' do
def fetch
get 'new'
end
it_should_behave_like "a controller action with require_admin"
end
describe 'create.html' do
def fetch
post 'create', :planning_element_type => FactoryGirl.build(:planning_element_type).attributes
end
def expect_redirect_to
planning_element_types_path
end
it_should_behave_like "a controller action with require_admin"
end
describe 'edit.html' do
def fetch
@available_type = FactoryGirl.create(:planning_element_type, :id => '1337')
get 'edit', :id => '1337'
end
it_should_behave_like "a controller action with require_admin"
end
describe 'update.html' do
def fetch
@available_type = FactoryGirl.create(:planning_element_type, :id => '1337')
get 'update', :id => '1337', :planning_element_type => {:name => 'blubs'}
end
def expect_redirect_to
planning_element_types_path
end
it_should_behave_like "a controller action with require_admin"
end
describe "move.html" do
def fetch
@available_planning_element_type = FactoryGirl.create(:planning_element_type, :id => '1337')
post 'move', :id => '1337', :planning_element_type => {:move_to => 'highest'}
end
def expect_redirect_to
planning_element_types_path
end
it_should_behave_like "a controller action with require_admin"
end
describe 'confirm_destroy.html' do
def fetch
@available_type = FactoryGirl.create(:planning_element_type, :id => '1337')
get 'confirm_destroy', :id => '1337'
end
it_should_behave_like "a controller action with require_admin"
end
describe 'destroy.html' do
def fetch
@available_type = FactoryGirl.create(:planning_element_type, :id => '1337')
post 'destroy', :id => '1337'
end
def expect_redirect_to
planning_element_types_path
end
it_should_behave_like "a controller action with require_admin"
end
end
end

@ -1,284 +0,0 @@
#-- copyright
# OpenProject is a project management system.
#
# Copyright (C) 2012-2013 the OpenProject Team
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License version 3.
#
# See doc/COPYRIGHT.rdoc for more details.
#++
require File.expand_path('../../spec_helper', __FILE__)
describe PlanningElementType do
describe '- Relations ' do
describe '#planning_elements' do
it 'can read planning_elements w/ the help of the has_many association' do
planning_element_type = FactoryGirl.create(:planning_element_type)
planning_element = FactoryGirl.create(:planning_element,
:planning_element_type_id => planning_element_type.id)
planning_element_type.reload
planning_element_type.planning_elements.size.should == 1
planning_element_type.planning_elements.first.should == planning_element
end
it 'nullifies dependent planning_elements' do
planning_element_type = FactoryGirl.create(:planning_element_type)
planning_element = FactoryGirl.create(:planning_element,
:planning_element_type_id => planning_element_type.id)
planning_element_type.reload
planning_element_type.destroy
planning_element.reload
planning_element.planning_element_type_id.should be_nil
end
end
describe '#enabled_planning_element_types' do
it 'can read enabled_planning_element_types w/ the help of the has_many association' do
planning_element_type = FactoryGirl.create(:planning_element_type)
enabled_planning_element_type = FactoryGirl.create(:enabled_planning_element_type,
:planning_element_type_id => planning_element_type.id)
planning_element_type.reload
planning_element_type.enabled_planning_element_types.size.should == 1
planning_element_type.enabled_planning_element_types.first.should == enabled_planning_element_type
end
it 'deletes dependent enabled_planning_element_types' do
planning_element_type = FactoryGirl.create(:planning_element_type)
enabled_planning_element_type = FactoryGirl.create(:enabled_planning_element_type,
:planning_element_type_id => planning_element_type.id)
planning_element_type.reload
planning_element_type.destroy
expect { enabled_planning_element_type.reload }.to raise_error(ActiveRecord::RecordNotFound)
end
end
describe '#projects' do
it 'can read projects w/ the help of the has_many-through association' do
planning_element_type = FactoryGirl.create(:planning_element_type)
project = FactoryGirl.create(:project)
enabled_planning_element_type = FactoryGirl.create(:enabled_planning_element_type,
:project_id => project.id,
:planning_element_type_id => planning_element_type.id)
planning_element_type.reload
planning_element_type.projects.size.should == 1
planning_element_type.projects.first.should == project
end
end
describe '#default_planning_element_types' do
it 'can read disabled_planning_element_types w/ the help of the has_many association' do
planning_element_type = FactoryGirl.create(:planning_element_type)
default_planning_element_type = FactoryGirl.create(:default_planning_element_type,
:planning_element_type_id => planning_element_type.id)
planning_element_type.reload
planning_element_type.default_planning_element_types.size.should == 1
planning_element_type.default_planning_element_types.first.should == default_planning_element_type
end
it 'deletes dependent default_planning_element_types' do
planning_element_type = FactoryGirl.create(:planning_element_type)
default_planning_element_type = FactoryGirl.create(:default_planning_element_type,
:planning_element_type_id => planning_element_type.id)
planning_element_type.reload
planning_element_type.destroy
expect { default_planning_element_type.reload }.to raise_error(ActiveRecord::RecordNotFound)
end
end
describe '#project_type' do
it 'can read the project_type w/ the help of the has_many-through association' do
project_type = FactoryGirl.create(:project_type)
planning_element_type = FactoryGirl.create(:planning_element_type)
default_planning_element_type = FactoryGirl.create(:default_planning_element_type,
:project_type_id => project_type.id,
:planning_element_type_id => planning_element_type.id)
planning_element_type.reload
planning_element_type.project_types.size.should == 1
planning_element_type.project_types.first.should == project_type
end
end
describe '#color' do
it 'can read the color w/ the help of the belongs_to association' do
color = FactoryGirl.create(:color)
planning_element_type = FactoryGirl.create(:planning_element_type,
:color_id => color.id)
planning_element_type.reload
planning_element_type.color.should == color
end
end
end
describe '- Validations ' do
let(:attributes) {
{:name => 'Planning Element Type No. 1'}
}
describe 'name' do
it 'is invalid w/o a name' do
attributes[:name] = nil
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should_not be_valid
planning_element_type.errors[:name].should be_present
planning_element_type.errors[:name].should == ["can't be blank"]
end
it 'is invalid w/ a name longer than 255 characters' do
attributes[:name] = "A" * 500
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should_not be_valid
planning_element_type.errors[:name].should be_present
planning_element_type.errors[:name].should == ["is too long (maximum is 255 characters)"]
end
end
describe 'in_aggregation' do
it 'is invalid w/o the in_aggregation property' do
attributes[:in_aggregation] = nil
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should_not be_valid
planning_element_type.errors[:in_aggregation].should be_present
end
it 'is valid w/ in_aggregation set to true' do
attributes[:in_aggregation] = true
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should be_valid
end
it 'is valid w/ in_aggregation set to false' do
attributes[:in_aggregation] = false
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should be_valid
end
end
describe 'is_default' do
it 'is invalid w/o the is_default property' do
attributes[:is_default] = nil
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should_not be_valid
planning_element_type.errors[:is_default].should be_present
end
it 'is valid w/ is_default set to true' do
attributes[:is_default] = true
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should be_valid
end
it 'is valid w/ is_default set to false' do
attributes[:is_default] = false
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should be_valid
end
end
describe 'is_milestone' do
it 'is invalid w/o the is_milestone property' do
attributes[:is_milestone] = nil
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should_not be_valid
planning_element_type.errors[:is_milestone].should be_present
end
it 'is valid w/ is_milestone set to true' do
attributes[:is_milestone] = true
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should be_valid
end
it 'is valid w/ is_milestone set to false' do
attributes[:is_milestone] = false
planning_element_type = PlanningElementType.new(attributes)
planning_element_type.should be_valid
end
end
end
describe '#enabled_in?' do
let(:planning_element_type) { FactoryGirl.create(:planning_element_type) }
describe 'for nil' do
it 'returns false' do
planning_element_type.should_not be_enabled_in(nil)
end
end
describe 'for projects' do
let(:project) { FactoryGirl.create(:project) }
describe 'when planning element type is enabled in given project' do
before do
project.planning_element_types << planning_element_type
end
it 'returns true' do
planning_element_type.should be_enabled_in(project)
end
end
describe 'when planning element type is not enabled in given project' do
it 'returns false' do
planning_element_type.should_not be_enabled_in(project)
end
end
end
describe 'for project types' do
let(:project_type) { FactoryGirl.create(:project_type) }
describe 'when planning element type is default in given project type' do
before do
project_type.planning_element_types << planning_element_type
end
it 'returns true' do
planning_element_type.should be_enabled_in(project_type)
end
end
describe 'when planning element type is not default in given project type' do
it 'return false' do
planning_element_type.should_not be_enabled_in(project_type)
end
end
end
end
end
Loading…
Cancel
Save