Event & Wiki models specs
This commit is contained in:
parent
ef32e01b4c
commit
8ee0993fdf
4 changed files with 78 additions and 2 deletions
|
@ -7,7 +7,6 @@ class Wiki < ActiveRecord::Base
|
||||||
|
|
||||||
before_update :set_slug
|
before_update :set_slug
|
||||||
|
|
||||||
|
|
||||||
def to_param
|
def to_param
|
||||||
slug
|
slug
|
||||||
end
|
end
|
||||||
|
|
|
@ -64,9 +64,11 @@ Factory.add(:web_hook, WebHook) do |obj|
|
||||||
obj.url = Faker::Internet.url
|
obj.url = Faker::Internet.url
|
||||||
end
|
end
|
||||||
|
|
||||||
Factory.add(:wikis, WebHook) do |obj|
|
Factory.add(:wiki, Wiki) do |obj|
|
||||||
obj.title = Faker::Lorem.sentence
|
obj.title = Faker::Lorem.sentence
|
||||||
obj.content = Faker::Lorem.sentence
|
obj.content = Faker::Lorem.sentence
|
||||||
|
obj.user = Factory(:user)
|
||||||
|
obj.project = Factory(:project)
|
||||||
end
|
end
|
||||||
|
|
||||||
Factory.add(:event, Event) do |obj|
|
Factory.add(:event, Event) do |obj|
|
||||||
|
|
|
@ -20,6 +20,14 @@ describe Event do
|
||||||
it { should belong_to(:project) }
|
it { should belong_to(:project) }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe "Respond to" do
|
||||||
|
it { should respond_to(:author_name) }
|
||||||
|
it { should respond_to(:author_email) }
|
||||||
|
it { should respond_to(:issue_title) }
|
||||||
|
it { should respond_to(:merge_request_title) }
|
||||||
|
it { should respond_to(:commits) }
|
||||||
|
end
|
||||||
|
|
||||||
describe "Creation" do
|
describe "Creation" do
|
||||||
before do
|
before do
|
||||||
@event = Factory :event
|
@event = Factory :event
|
||||||
|
@ -29,4 +37,40 @@ describe Event do
|
||||||
@event.should be_valid
|
@event.should be_valid
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe "Push event" do
|
||||||
|
before do
|
||||||
|
project = Factory :project
|
||||||
|
@user = project.owner
|
||||||
|
|
||||||
|
data = {
|
||||||
|
:before => "0000000000000000000000000000000000000000",
|
||||||
|
:after => "0220c11b9a3e6c69dc8fd35321254ca9a7b98f7e",
|
||||||
|
:ref => "refs/heads/master",
|
||||||
|
:user_id => @user.id,
|
||||||
|
:user_name => @user.name,
|
||||||
|
:repository => {
|
||||||
|
:name => project.name,
|
||||||
|
:url => "localhost/rubinius",
|
||||||
|
:description => "",
|
||||||
|
:homepage => "localhost/rubinius",
|
||||||
|
:private => true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@event = Event.create(
|
||||||
|
:project => project,
|
||||||
|
:action => Event::Pushed,
|
||||||
|
:data => data,
|
||||||
|
:author_id => @user.id
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
|
it { @event.push?.should be_true }
|
||||||
|
it { @event.allowed?.should be_true }
|
||||||
|
it { @event.new_branch?.should be_true }
|
||||||
|
it { @event.new_tag?.should be_false }
|
||||||
|
it { @event.branch_name.should == "master" }
|
||||||
|
it { @event.author.should == @user }
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
31
spec/models/wiki_spec.rb
Normal file
31
spec/models/wiki_spec.rb
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
require 'spec_helper'
|
||||||
|
|
||||||
|
describe Wiki do
|
||||||
|
describe "Associations" do
|
||||||
|
it { should belong_to(:project) }
|
||||||
|
it { should belong_to(:user) }
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "Validation" do
|
||||||
|
it { should validate_presence_of(:title) }
|
||||||
|
it { should validate_presence_of(:content) }
|
||||||
|
it { should validate_presence_of(:user_id) }
|
||||||
|
end
|
||||||
|
|
||||||
|
it { Factory(:wiki).should be_valid }
|
||||||
|
end
|
||||||
|
# == Schema Information
|
||||||
|
#
|
||||||
|
# Table name: snippets
|
||||||
|
#
|
||||||
|
# id :integer not null, primary key
|
||||||
|
# title :string(255)
|
||||||
|
# content :text
|
||||||
|
# author_id :integer not null
|
||||||
|
# project_id :integer not null
|
||||||
|
# created_at :datetime
|
||||||
|
# updated_at :datetime
|
||||||
|
# file_name :string(255)
|
||||||
|
# expires_at :datetime
|
||||||
|
#
|
||||||
|
|
Loading…
Add table
Reference in a new issue