Commit fd338d67 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Merge branch 'master' of github.com:gitlabhq/gitlabhq

parents fedacf52 de5e0e59
......@@ -15,8 +15,8 @@
#= require jquery.atwho
#= require jquery.scrollTo
#= require jquery.blockUI
#= require turbolinks
#= require jquery.turbolinks
#= require turbolinks
#= require bootstrap
#= require select2
#= require raphael
......
......@@ -80,7 +80,7 @@ class Spinach::Features::Dashboard < Spinach::FeatureSteps
end
step 'I should see 1 project at group list' do
page.find('span.last_activity/span').should have_content('1')
find('span.last_activity/span').should have_content('1')
end
def project
......
......@@ -63,7 +63,7 @@ class Spinach::Features::ExploreGroupsFeature < Spinach::FeatureSteps
end
step 'I should not see member roles' do
page.body.should_not match(%r{owner|developer|reporter|guest}i)
body.should_not match(%r{owner|developer|reporter|guest}i)
end
protected
......
......@@ -22,14 +22,14 @@ class Spinach::Features::ExploreProjectsFeature < Spinach::FeatureSteps
step 'I should see empty public project details with http clone info' do
project = Project.find_by(name: 'Empty Public Project')
page.all(:css, '.git-empty .clone').each do |element|
all(:css, '.git-empty .clone').each do |element|
element.text.should include(project.http_url_to_repo)
end
end
step 'I should see empty public project details with ssh clone info' do
project = Project.find_by(name: 'Empty Public Project')
page.all(:css, '.git-empty .clone').each do |element|
all(:css, '.git-empty .clone').each do |element|
element.text.should include(project.url_to_repo)
end
end
......
......@@ -80,6 +80,6 @@ class Spinach::Features::ProjectBrowseBranches < Spinach::FeatureSteps
end
step "I should not see branch 'improve/awesome'" do
page.all(visible: true).should_not have_content 'improve/awesome'
all(visible: true).should_not have_content 'improve/awesome'
end
end
......@@ -17,10 +17,10 @@ class Spinach::Features::ProjectBrowseCommits < Spinach::FeatureSteps
step 'I see commits atom feed' do
commit = @project.repository.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[0..10])
response_headers['Content-Type'].should have_content("application/atom+xml")
body.should have_selector("title", text: "Recent commits to #{@project.name}")
body.should have_selector("author email", text: commit.author_email)
body.should have_selector("entry summary", text: commit.description[0..10])
end
step 'I click on commit link' do
......@@ -72,7 +72,7 @@ class Spinach::Features::ProjectBrowseCommits < Spinach::FeatureSteps
end
step 'The diff links to both the previous and current image' do
links = page.all('.two-up span div a')
links = all('.two-up span div a')
links[0]['href'].should =~ %r{blob/#{sample_image_commit.old_blob_id}}
links[1]['href'].should =~ %r{blob/#{sample_image_commit.new_blob_id}}
end
......
......@@ -29,7 +29,7 @@ class Spinach::Features::ProjectBrowseFiles < Spinach::FeatureSteps
end
step 'I should see raw file content' do
page.source.should == sample_blob.data
source.should == sample_blob.data
end
step 'I click button "edit"' do
......@@ -37,12 +37,12 @@ class Spinach::Features::ProjectBrowseFiles < Spinach::FeatureSteps
end
step 'I can edit code' do
page.execute_script('editor.setValue("GitlabFileEditor")')
page.evaluate_script('editor.getValue()').should == "GitlabFileEditor"
execute_script('editor.setValue("GitlabFileEditor")')
evaluate_script('editor.getValue()').should == "GitlabFileEditor"
end
step 'I edit code' do
page.execute_script('editor.setValue("GitlabFileEditor")')
execute_script('editor.setValue("GitlabFileEditor")')
end
step 'I click link "Diff"' do
......
......@@ -61,7 +61,7 @@ class Spinach::Features::ProjectBrowseTags < Spinach::FeatureSteps
step "I should not see tag 'v1.1.0'" do
within '.tags' do
page.all(visible: true).should_not have_content 'v1.1.0'
all(visible: true).should_not have_content 'v1.1.0'
end
end
......
......@@ -29,7 +29,7 @@ class Spinach::Features::ProjectHooks < Spinach::FeatureSteps
end
step 'I should see newly created hook' do
page.current_path.should == project_hooks_path(current_project)
current_path.should == project_hooks_path(current_project)
page.should have_content(@url)
end
......@@ -44,7 +44,7 @@ class Spinach::Features::ProjectHooks < Spinach::FeatureSteps
end
step 'hook should be triggered' do
page.current_path.should == project_hooks_path(current_project)
current_path.should == project_hooks_path(current_project)
page.should have_selector '.flash-notice',
text: 'Hook successfully executed.'
end
......
......@@ -113,7 +113,7 @@ class Spinach::Features::ProjectIssues < Spinach::FeatureSteps
step 'I should see selected milestone with title "v3.0"' do
issues_milestone_selector = "#issue_milestone_id_chzn > a"
page.find(issues_milestone_selector).should have_content("v3.0")
find(issues_milestone_selector).should have_content("v3.0")
end
When 'I select first assignee from "Shop" project' do
......@@ -126,7 +126,7 @@ class Spinach::Features::ProjectIssues < Spinach::FeatureSteps
issues_assignee_selector = "#issue_assignee_id_chzn > a"
assignee_name = project.users.first.name
page.find(issues_assignee_selector).should have_content(assignee_name)
find(issues_assignee_selector).should have_content(assignee_name)
end
step 'project "Shop" have "Release 0.4" open issue' do
......@@ -164,7 +164,7 @@ class Spinach::Features::ProjectIssues < Spinach::FeatureSteps
step 'I see empty project details with ssh clone info' do
project = Project.find_by(name: 'Empty Project')
page.all(:css, '.git-empty .clone').each do |element|
all(:css, '.git-empty .clone').each do |element|
element.text.should include(project.url_to_repo)
end
end
......
......@@ -30,12 +30,12 @@ class Spinach::Features::ProjectNetworkGraph < Spinach::FeatureSteps
end
When 'I switch ref to "feature"' do
page.select 'feature', from: 'ref'
select 'feature', from: 'ref'
sleep 2
end
When 'I switch ref to "v1.0.0"' do
page.select 'v1.0.0', from: 'ref'
select 'v1.0.0', from: 'ref'
sleep 2
end
......
......@@ -48,8 +48,8 @@ class Spinach::Features::ProjectRedirects < Spinach::FeatureSteps
step 'I should be redirected to "Community" page' do
project = Project.find_by(name: 'Community')
page.current_path.should == "/#{project.path_with_namespace}"
page.status_code.should == 200
current_path.should == "/#{project.path_with_namespace}"
status_code.should == 200
end
step 'I get redirected to signin page where I sign in' do
......@@ -63,7 +63,7 @@ class Spinach::Features::ProjectRedirects < Spinach::FeatureSteps
step 'I should be redirected to "Enterprise" page' do
project = Project.find_by(name: 'Enterprise')
page.current_path.should == "/#{project.path_with_namespace}"
page.status_code.should == 200
current_path.should == "/#{project.path_with_namespace}"
status_code.should == 200
end
end
......@@ -22,7 +22,7 @@ class Spinach::Features::ProjectStar < Spinach::FeatureSteps
# Requires @javascript
step "I click on the star toggle button" do
page.find(".star .toggle", visible: true).click
find(".star .toggle", visible: true).click
end
protected
......
......@@ -2,15 +2,15 @@ module SharedActiveTab
include Spinach::DSL
def ensure_active_main_tab(content)
page.find('.main-nav li.active').should have_content(content)
find('.main-nav li.active').should have_content(content)
end
def ensure_active_sub_tab(content)
page.find('div.content ul.nav-tabs li.active').should have_content(content)
find('div.content ul.nav-tabs li.active').should have_content(content)
end
def ensure_active_sub_nav(content)
page.find('div.content ul.nav-stacked-menu li.active').should have_content(content)
find('div.content ul.nav-stacked-menu li.active').should have_content(content)
end
step 'no other main tabs should be active' do
......
......@@ -2,8 +2,8 @@ module SharedMarkdown
include Spinach::DSL
def header_should_have_correct_id_and_link(level, text, id, parent = ".wiki")
page.find(:css, "#{parent} h#{level}##{id}").text.should == text
page.find(:css, "#{parent} h#{level}##{id} > :last-child")[:href].should =~ /##{id}$/
find(:css, "#{parent} h#{level}##{id}").text.should == text
find(:css, "#{parent} h#{level}##{id} > :last-child")[:href].should =~ /##{id}$/
end
step 'Header "Description header" should have correct id and link' do
......
......@@ -419,6 +419,6 @@ module SharedPaths
# ----------------------------------------
step 'page status code should be 404' do
page.status_code.should == 404
status_code.should == 404
end
end
......@@ -5,6 +5,6 @@ class Spinach::Features::User < Spinach::FeatureSteps
include SharedProject
step 'I should see user "John Doe" page' do
expect(page.title).to match(/^\s*John Doe/)
expect(title).to match(/^\s*John Doe/)
end
end
......@@ -33,7 +33,7 @@ describe "Admin::Hooks", feature: true do
end
it "should open new hook popup" do
page.current_path.should == admin_hooks_path
current_path.should == admin_hooks_path
page.should have_content(@url)
end
end
......@@ -45,7 +45,7 @@ describe "Admin::Hooks", feature: true do
click_link "Test Hook"
end
it { page.current_path.should == admin_hooks_path }
it { current_path.should == admin_hooks_path }
end
end
......@@ -17,12 +17,12 @@ describe "Dashboard Issues Feed", feature: true do
it "should render atom feed via private token" do
visit issues_dashboard_path(:atom, private_token: user.private_token)
page.response_headers['Content-Type'].should have_content("application/atom+xml")
page.body.should have_selector("title", text: "#{user.name} issues")
page.body.should have_selector("author email", text: issue1.author_email)
page.body.should have_selector("entry summary", text: issue1.title)
page.body.should have_selector("author email", text: issue2.author_email)
page.body.should have_selector("entry summary", text: issue2.title)
response_headers['Content-Type'].should have_content("application/atom+xml")
body.should have_selector("title", text: "#{user.name} issues")
body.should have_selector("author email", text: issue1.author_email)
body.should have_selector("entry summary", text: issue1.title)
body.should have_selector("author email", text: issue2.author_email)
body.should have_selector("entry summary", text: issue2.title)
end
end
end
......
......@@ -7,7 +7,7 @@ describe "Dashboard Feed", feature: true do
context "projects atom feed via private token" do
it "should render projects atom feed" do
visit dashboard_path(:atom, private_token: user.private_token)
page.body.should have_selector("feed title")
body.should have_selector("feed title")
end
end
......@@ -24,11 +24,11 @@ describe "Dashboard Feed", feature: true do
end
it "should have issue opened event" do
page.body.should have_content("#{user.name} opened issue ##{issue.iid}")
body.should have_content("#{user.name} opened issue ##{issue.iid}")
end
it "should have issue comment event" do
page.body.should have_content("#{user.name} commented on issue ##{issue.iid}")
body.should have_content("#{user.name} commented on issue ##{issue.iid}")
end
end
end
......
......@@ -13,10 +13,10 @@ describe "Issues Feed", feature: true do
login_with user
visit project_issues_path(project, :atom)
page.response_headers['Content-Type'].should have_content("application/atom+xml")
page.body.should have_selector("title", text: "#{project.name} issues")
page.body.should have_selector("author email", text: issue.author_email)
page.body.should have_selector("entry summary", text: issue.title)
response_headers['Content-Type'].should have_content("application/atom+xml")
body.should have_selector("title", text: "#{project.name} issues")
body.should have_selector("author email", text: issue.author_email)
body.should have_selector("entry summary", text: issue.title)
end
end
......@@ -24,10 +24,10 @@ describe "Issues Feed", feature: true do
it "should render atom feed" do
visit project_issues_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: "#{project.name} issues")
page.body.should have_selector("author email", text: issue.author_email)
page.body.should have_selector("entry summary", text: issue.title)
response_headers['Content-Type'].should have_content("application/atom+xml")
body.should have_selector("title", text: "#{project.name} issues")
body.should have_selector("author email", text: issue.author_email)
body.should have_selector("entry summary", text: issue.title)
end
end
end
......
......@@ -59,9 +59,9 @@ describe "Issues", feature: true do
page.should have_content "Assign to #{@user.name}"
page.first('#s2id_issue_assignee_id').click
first('#s2id_issue_assignee_id').click
sleep 2 # wait for ajax stuff to complete
page.first('.user-result').click
first('.user-result').click
click_button "Save changes"
......@@ -212,7 +212,7 @@ describe "Issues", feature: true do
click_button 'Update Issue'
page.should have_content "Assignee:"
page.has_select?('issue_assignee_id', :selected => project.team.members.first.name)
has_select?('issue_assignee_id', :selected => project.team.members.first.name)
end
end
......@@ -249,7 +249,7 @@ describe "Issues", feature: true do
click_button 'Update Issue'
page.should have_content "Milestone changed to #{milestone.title}"
page.has_select?('issue_assignee_id', :selected => milestone.title)
has_select?('issue_assignee_id', :selected => milestone.title)
end
end
......@@ -283,9 +283,9 @@ describe "Issues", feature: true do
visit project_issue_path(project, issue)
page.should have_content "Assignee: #{user2.name}"
page.first('#s2id_issue_assignee_id').click
first('#s2id_issue_assignee_id').click
sleep 2 # wait for ajax stuff to complete
page.first('.user-result').click
first('.user-result').click
page.should have_content "Assignee: Unassigned"
sleep 2 # wait for ajax stuff to complete
......
......@@ -21,6 +21,6 @@ module LoginHelpers
# Requires Javascript driver.
def logout
page.find(:css, ".icon-signout").click
find(:css, ".icon-signout").click
end
end
......@@ -42,19 +42,19 @@ module UrlAccess
def url_allowed?(user, url)
emulate_user(user)
visit url
(page.status_code != 404 && current_path != new_user_session_path)
(status_code != 404 && current_path != new_user_session_path)
end
def url_denied?(user, url)
emulate_user(user)
visit url
(page.status_code == 404 || current_path == new_user_session_path)
(status_code == 404 || current_path == new_user_session_path)
end
def url_404?(user, url)
emulate_user(user)
visit url
page.status_code == 404
status_code == 404
end
def emulate_user(user)
......
......@@ -17,9 +17,9 @@ module Select2Helper
selector = options[:from]
if options[:multiple]
page.execute_script("$('#{selector}').select2('val', ['#{value}']);")
execute_script("$('#{selector}').select2('val', ['#{value}']);")
else
page.execute_script("$('#{selector}').select2('val', '#{value}');")
execute_script("$('#{selector}').select2('val', '#{value}');")
end
end
end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment