2011-10-08 23:36:38 +02:00
|
|
|
require 'spec_helper'
|
|
|
|
|
|
|
|
describe "Commits" do
|
|
|
|
let(:project) { Factory :project }
|
2012-07-22 13:08:32 +02:00
|
|
|
let!(:commit) { CommitDecorator.decorate(project.commit) }
|
2011-10-26 15:46:25 +02:00
|
|
|
before do
|
2011-10-08 23:36:38 +02:00
|
|
|
login_as :user
|
|
|
|
project.add_access(@user, :read)
|
|
|
|
end
|
|
|
|
|
|
|
|
describe "GET /commits" do
|
2011-10-26 15:46:25 +02:00
|
|
|
before do
|
2011-10-08 23:36:38 +02:00
|
|
|
visit project_commits_path(project)
|
|
|
|
end
|
|
|
|
|
|
|
|
it "should have valid path" do
|
|
|
|
current_path.should == project_commits_path(project)
|
|
|
|
end
|
|
|
|
|
2011-10-26 15:46:25 +02:00
|
|
|
it "should have project name" do
|
2011-10-08 23:36:38 +02:00
|
|
|
page.should have_content(project.name)
|
|
|
|
end
|
|
|
|
|
2011-10-26 15:46:25 +02:00
|
|
|
it "should list commits" do
|
2012-07-22 13:08:32 +02:00
|
|
|
page.should have_content(commit.description)
|
|
|
|
page.should have_content(commit.short_id)
|
2011-10-08 23:36:38 +02:00
|
|
|
end
|
2011-11-11 09:11:27 +01:00
|
|
|
|
|
|
|
it "should render atom feed" do
|
|
|
|
visit project_commits_path(project, :atom)
|
|
|
|
|
|
|
|
page.response_headers['Content-Type'].should have_content("application/atom+xml")
|
|
|
|
page.body.should have_selector("title", :text => "Recent commits to #{project.name}")
|
|
|
|
page.body.should have_selector("author email", :text => commit.author_email)
|
2012-07-22 13:08:32 +02:00
|
|
|
page.body.should have_selector("entry summary", :text => commit.description)
|
2011-11-11 09:11:27 +01:00
|
|
|
end
|
2011-11-15 08:25:26 +01:00
|
|
|
|
|
|
|
it "should render atom feed via private token" do
|
|
|
|
logout
|
|
|
|
visit project_commits_path(project, :atom, :private_token => @user.private_token)
|
|
|
|
|
|
|
|
page.response_headers['Content-Type'].should have_content("application/atom+xml")
|
|
|
|
page.body.should have_selector("title", :text => "Recent commits to #{project.name}")
|
|
|
|
page.body.should have_selector("author email", :text => commit.author_email)
|
2012-07-22 13:08:32 +02:00
|
|
|
page.body.should have_selector("entry summary", :text => commit.description)
|
2011-11-15 08:25:26 +01:00
|
|
|
end
|
2011-10-08 23:36:38 +02:00
|
|
|
end
|
|
|
|
|
2011-10-26 15:46:25 +02:00
|
|
|
describe "GET /commits/:id" do
|
|
|
|
before do
|
2011-11-27 16:35:49 +01:00
|
|
|
visit project_commit_path(project, commit.id)
|
2011-10-08 23:36:38 +02:00
|
|
|
end
|
|
|
|
|
2011-10-26 15:46:25 +02:00
|
|
|
it "should have valid path" do
|
2011-11-27 16:35:49 +01:00
|
|
|
current_path.should == project_commit_path(project, commit.id)
|
2011-10-08 23:36:38 +02:00
|
|
|
end
|
|
|
|
end
|
2012-02-06 21:32:04 +01:00
|
|
|
|
|
|
|
describe "GET /commits/compare" do
|
|
|
|
before do
|
|
|
|
visit compare_project_commits_path(project)
|
|
|
|
end
|
|
|
|
|
|
|
|
it "should have valid path" do
|
|
|
|
current_path.should == compare_project_commits_path(project)
|
|
|
|
end
|
|
|
|
end
|
2011-10-08 23:36:38 +02:00
|
|
|
end
|