rewrite project commits features using spinach
This commit is contained in:
parent
7aeb92b8e4
commit
080bd12e16
24 changed files with 178 additions and 20 deletions
44
features/steps/project_browse_branches.rb
Normal file
44
features/steps/project_browse_branches.rb
Normal file
|
@ -0,0 +1,44 @@
|
|||
class ProjectBrowseBranches < Spinach::FeatureSteps
|
||||
Then 'I should see "Shop" recent branches list' do
|
||||
page.should have_content "Branches"
|
||||
page.should have_content "master"
|
||||
end
|
||||
|
||||
Given 'I click link "All"' do
|
||||
click_link "All"
|
||||
end
|
||||
|
||||
Then 'I should see "Shop" all branches list' do
|
||||
page.should have_content "Branches"
|
||||
page.should have_content "master"
|
||||
end
|
||||
|
||||
Given 'I click link "Protected"' do
|
||||
click_link "Protected"
|
||||
end
|
||||
|
||||
Then 'I should see "Shop" protected branches list' do
|
||||
within "table" do
|
||||
page.should have_content "stable"
|
||||
page.should_not have_content "master"
|
||||
end
|
||||
end
|
||||
|
||||
Given 'I sign in as a user' do
|
||||
login_as :user
|
||||
end
|
||||
|
||||
And 'I own project "Shop"' do
|
||||
@project = Factory :project, :name => "Shop"
|
||||
@project.add_access(@user, :admin)
|
||||
end
|
||||
|
||||
And 'project "Shop" has protected branches' do
|
||||
project = Project.find_by_name("Shop")
|
||||
project.protected_branches.create(:name => "stable")
|
||||
end
|
||||
|
||||
Given 'I visit project branches page' do
|
||||
visit branches_project_repository_path(@project)
|
||||
end
|
||||
end
|
60
features/steps/project_browse_commits.rb
Normal file
60
features/steps/project_browse_commits.rb
Normal file
|
@ -0,0 +1,60 @@
|
|||
class ProjectBrowseCommits < Spinach::FeatureSteps
|
||||
Then 'I see project commits' do
|
||||
current_path.should == project_commits_path(@project)
|
||||
|
||||
commit = @project.commit
|
||||
page.should have_content(@project.name)
|
||||
page.should have_content(commit.message)
|
||||
page.should have_content(commit.id.to_s[0..5])
|
||||
end
|
||||
|
||||
Given 'I click atom feed link' do
|
||||
click_link "Feed"
|
||||
end
|
||||
|
||||
Then 'I see commits atom feed' do
|
||||
commit = CommitDecorator.decorate(@project.commit)
|
||||
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)
|
||||
page.body.should have_selector("entry summary", :text => commit.description)
|
||||
end
|
||||
|
||||
Given 'I click on commit link' do
|
||||
visit project_commit_path(@project, ValidCommit::ID)
|
||||
end
|
||||
|
||||
Then 'I see commit info' do
|
||||
page.should have_content ValidCommit::MESSAGE
|
||||
page.should have_content "Showing 1 changed file"
|
||||
end
|
||||
|
||||
Given 'I visit compare refs page' do
|
||||
visit compare_project_commits_path(@project)
|
||||
end
|
||||
|
||||
And 'I fill compare fields with refs' do
|
||||
fill_in "from", :with => "master"
|
||||
fill_in "to", :with => "stable"
|
||||
click_button "Compare"
|
||||
end
|
||||
|
||||
And 'I see compared refs' do
|
||||
page.should have_content "Commits (27)"
|
||||
page.should have_content "Compare View"
|
||||
page.should have_content "Showing 73 changed files"
|
||||
end
|
||||
|
||||
Given 'I sign in as a user' do
|
||||
login_as :user
|
||||
end
|
||||
|
||||
And 'I own project "Shop"' do
|
||||
@project = Factory :project, :name => "Shop"
|
||||
@project.add_access(@user, :admin)
|
||||
end
|
||||
|
||||
Given 'I visit project commits page' do
|
||||
visit project_commits_path(@project)
|
||||
end
|
||||
end
|
19
features/steps/project_browse_tags.rb
Normal file
19
features/steps/project_browse_tags.rb
Normal file
|
@ -0,0 +1,19 @@
|
|||
class ProjectBrowseTags < Spinach::FeatureSteps
|
||||
Then 'I should see "Shop" all tags list' do
|
||||
page.should have_content "Tags"
|
||||
page.should have_content "v1.2.1"
|
||||
end
|
||||
|
||||
Given 'I sign in as a user' do
|
||||
login_as :user
|
||||
end
|
||||
|
||||
And 'I own project "Shop"' do
|
||||
@project = Factory :project, :name => "Shop"
|
||||
@project.add_access(@user, :admin)
|
||||
end
|
||||
|
||||
Given 'I visit project tags page' do
|
||||
visit tags_project_repository_path(@project)
|
||||
end
|
||||
end
|
23
features/steps/project_comment_commit.rb
Normal file
23
features/steps/project_comment_commit.rb
Normal file
|
@ -0,0 +1,23 @@
|
|||
class ProjectCommentCommit < Spinach::FeatureSteps
|
||||
Given 'I leave a comment like "XML attached"' do
|
||||
fill_in "note_note", :with => "XML attached"
|
||||
click_button "Add Comment"
|
||||
end
|
||||
|
||||
Then 'I should see comment "XML attached"' do
|
||||
page.should have_content "XML attached"
|
||||
end
|
||||
|
||||
Given 'I sign in as a user' do
|
||||
login_as :user
|
||||
end
|
||||
|
||||
And 'I own project "Shop"' do
|
||||
@project = Factory :project, :name => "Shop"
|
||||
@project.add_access(@user, :admin)
|
||||
end
|
||||
|
||||
Given 'I visit project commit page' do
|
||||
visit project_commit_path(@project, ValidCommit::ID)
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue