Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--features/projects/issues/issues.feature30
-rw-r--r--features/step_definitions/profile/profile_keys_steps.rb (renamed from features/step_definitions/profile_keys_steps.rb)0
-rw-r--r--features/step_definitions/profile/profile_steps.rb (renamed from features/step_definitions/profile_steps.rb)0
-rw-r--r--features/step_definitions/project/browse_code_steps.rb (renamed from features/step_definitions/browse_code_steps.rb)0
-rw-r--r--features/step_definitions/project/project_commits_steps.rb (renamed from features/step_definitions/project_commits_steps.rb)0
-rw-r--r--features/step_definitions/project/project_issues_steps.rb47
-rw-r--r--features/step_definitions/project/project_merge_requests_steps.rb (renamed from features/step_definitions/project_merge_requests_steps.rb)0
-rw-r--r--features/step_definitions/project/project_team_steps.rb (renamed from features/step_definitions/project_team_steps.rb)0
-rw-r--r--features/step_definitions/project/project_wiki_steps.rb (renamed from features/step_definitions/project_wiki_steps.rb)0
-rw-r--r--features/step_definitions/project/projects_steps.rb (renamed from features/step_definitions/projects_steps.rb)0
-rw-r--r--features/step_definitions/project_issues_steps.rb22
-rw-r--r--spec/requests/atom/issues_spec.rb40
-rw-r--r--spec/requests/issues_notes_spec.rb27
-rw-r--r--spec/requests/issues_spec.rb155
14 files changed, 115 insertions, 206 deletions
diff --git a/features/projects/issues/issues.feature b/features/projects/issues/issues.feature
index 0ca0792dd8a..a45dd801696 100644
--- a/features/projects/issues/issues.feature
+++ b/features/projects/issues/issues.feature
@@ -7,6 +7,32 @@ Feature: Issues
And I visit project "Shop" issues page
Scenario: I should see open issues
- Given I should see "Release 0.4" open issue
- And I should not see "Release 0.3" closed issue
+ Given I should see "Release 0.4" in issues
+ And I should not see "Release 0.3" in issues
+ Scenario: I should see closed issues
+ Given I click link "Closed"
+ Then I should see "Release 0.3" in issues
+ And I should not see "Release 0.4" in issues
+
+ Scenario: I should see all issues
+ Given I click link "All"
+ Then I should see "Release 0.3" in issues
+ And I should see "Release 0.4" in issues
+
+ Scenario: I visit issue page
+ Given I click link "Release 0.4"
+ Then I should see issue "Release 0.4"
+
+ @javascript
+ Scenario: I submit new unassigned issue
+ Given I click link "New Issue"
+ And I submit new issue "500 error on profile"
+ Given I click link "500 error on profile"
+ Then I should see issue "500 error on profile"
+
+ @javascript
+ Scenario: I comment issue
+ Given I visit issue page "Release 0.4"
+ And I leave a comment like "XML attached"
+ Then I should see commetn "XML attached"
diff --git a/features/step_definitions/profile_keys_steps.rb b/features/step_definitions/profile/profile_keys_steps.rb
index 5ab7e0480ad..5ab7e0480ad 100644
--- a/features/step_definitions/profile_keys_steps.rb
+++ b/features/step_definitions/profile/profile_keys_steps.rb
diff --git a/features/step_definitions/profile_steps.rb b/features/step_definitions/profile/profile_steps.rb
index 4661139c180..4661139c180 100644
--- a/features/step_definitions/profile_steps.rb
+++ b/features/step_definitions/profile/profile_steps.rb
diff --git a/features/step_definitions/browse_code_steps.rb b/features/step_definitions/project/browse_code_steps.rb
index 7f9001bb989..7f9001bb989 100644
--- a/features/step_definitions/browse_code_steps.rb
+++ b/features/step_definitions/project/browse_code_steps.rb
diff --git a/features/step_definitions/project_commits_steps.rb b/features/step_definitions/project/project_commits_steps.rb
index 9b3b0aa1f81..9b3b0aa1f81 100644
--- a/features/step_definitions/project_commits_steps.rb
+++ b/features/step_definitions/project/project_commits_steps.rb
diff --git a/features/step_definitions/project/project_issues_steps.rb b/features/step_definitions/project/project_issues_steps.rb
new file mode 100644
index 00000000000..2c47f37233e
--- /dev/null
+++ b/features/step_definitions/project/project_issues_steps.rb
@@ -0,0 +1,47 @@
+Given /^project "(.*?)" have "(.*?)" open issue$/ do |arg1, arg2|
+ project = Project.find_by_name(arg1)
+ Factory.create(:issue, :title => arg2, :project => project, :author => project.users.first)
+end
+
+Given /^project "(.*?)" have "(.*?)" closed issue$/ do |arg1, arg2|
+ project = Project.find_by_name(arg1)
+ Factory.create(:issue, :title => arg2, :project => project, :author => project.users.first, :closed => true)
+end
+
+Given /^I visit project "(.*?)" issues page$/ do |arg1|
+ visit project_issues_path(Project.find_by_name(arg1))
+end
+
+Given /^I should see "(.*?)" in issues$/ do |arg1|
+ page.should have_content arg1
+end
+
+Given /^I should not see "(.*?)" in issues$/ do |arg1|
+ page.should_not have_content arg1
+end
+
+Then /^I should see issue "(.*?)"$/ do |arg1|
+ issue = Issue.find_by_title(arg1)
+ page.should have_content issue.title
+ page.should have_content issue.author_name
+ page.should have_content issue.project.name
+end
+
+Given /^I visit issue page "(.*?)"$/ do |arg1|
+ issue = Issue.find_by_title(arg1)
+ visit project_issue_path(issue.project, issue)
+end
+
+Given /^I leave a comment like "(.*?)"$/ do |arg1|
+ fill_in "note_note", :with => arg1
+ click_button "Add Comment"
+end
+
+Then /^I should see commetn "(.*?)"$/ do |arg1|
+ page.should have_content(arg1)
+end
+
+Given /^I submit new issue "(.*?)"$/ do |arg1|
+ fill_in "issue_title", :with => arg1
+ click_button "Submit new issue"
+end
diff --git a/features/step_definitions/project_merge_requests_steps.rb b/features/step_definitions/project/project_merge_requests_steps.rb
index 6749773e2b5..6749773e2b5 100644
--- a/features/step_definitions/project_merge_requests_steps.rb
+++ b/features/step_definitions/project/project_merge_requests_steps.rb
diff --git a/features/step_definitions/project_team_steps.rb b/features/step_definitions/project/project_team_steps.rb
index f0bab29a6f8..f0bab29a6f8 100644
--- a/features/step_definitions/project_team_steps.rb
+++ b/features/step_definitions/project/project_team_steps.rb
diff --git a/features/step_definitions/project_wiki_steps.rb b/features/step_definitions/project/project_wiki_steps.rb
index 10de38d9ae3..10de38d9ae3 100644
--- a/features/step_definitions/project_wiki_steps.rb
+++ b/features/step_definitions/project/project_wiki_steps.rb
diff --git a/features/step_definitions/projects_steps.rb b/features/step_definitions/project/projects_steps.rb
index bca1213908d..bca1213908d 100644
--- a/features/step_definitions/projects_steps.rb
+++ b/features/step_definitions/project/projects_steps.rb
diff --git a/features/step_definitions/project_issues_steps.rb b/features/step_definitions/project_issues_steps.rb
deleted file mode 100644
index e83c0e7f399..00000000000
--- a/features/step_definitions/project_issues_steps.rb
+++ /dev/null
@@ -1,22 +0,0 @@
-Given /^project "(.*?)" have "(.*?)" open issue$/ do |arg1, arg2|
- project = Project.find_by_name(arg1)
- Factory.create(:issue, :title => arg2, :project => project, :author => project.users.first)
-end
-
-Given /^project "(.*?)" have "(.*?)" closed issue$/ do |arg1, arg2|
- project = Project.find_by_name(arg1)
- Factory.create(:issue, :title => arg2, :project => project, :author => project.users.first, :closed => true)
-end
-
-Given /^I visit project "(.*?)" issues page$/ do |arg1|
- visit project_issues_path(Project.find_by_name(arg1))
-end
-
-Given /^I should see "(.*?)" open issue$/ do |arg1|
- page.should have_content arg1
-end
-
-Given /^I should not see "(.*?)" closed issue$/ do |arg1|
- page.should_not have_content arg1
-end
-
diff --git a/spec/requests/atom/issues_spec.rb b/spec/requests/atom/issues_spec.rb
new file mode 100644
index 00000000000..8d0b6c4f3fd
--- /dev/null
+++ b/spec/requests/atom/issues_spec.rb
@@ -0,0 +1,40 @@
+require 'spec_helper'
+
+describe "Issues" do
+ let(:project) { Factory :project }
+
+ before do
+ login_as :user
+ project.add_access(@user, :read, :write)
+ end
+
+ describe "GET /issues" do
+ before do
+ @issue = Factory :issue,
+ :author => @user,
+ :assignee => @user,
+ :project => project
+
+ visit project_issues_path(project)
+ end
+
+ it "should render atom feed" do
+ 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)
+ end
+
+ it "should render atom feed via private token" do
+ logout
+ 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)
+ end
+ end
+end
diff --git a/spec/requests/issues_notes_spec.rb b/spec/requests/issues_notes_spec.rb
deleted file mode 100644
index 538098e60bd..00000000000
--- a/spec/requests/issues_notes_spec.rb
+++ /dev/null
@@ -1,27 +0,0 @@
-require 'spec_helper'
-
-describe "Issues" do
- let(:project) { Factory :project }
-
- before do
- login_as :user
- project.add_access(@user, :read, :write)
-
- @issue = Factory :issue,
- :author => @user,
- :assignee => @user,
- :project => project
- end
-
- describe "add new note", :js => true do
- before do
- visit project_issue_path(project, @issue)
- fill_in "note_note", :with => "I commented this issue"
- click_button "Add Comment"
- end
-
- it "should conatin new note" do
- page.should have_content("I commented this issue")
- end
- end
-end
diff --git a/spec/requests/issues_spec.rb b/spec/requests/issues_spec.rb
index 2c8650a8402..ad7b0432f42 100644
--- a/spec/requests/issues_spec.rb
+++ b/spec/requests/issues_spec.rb
@@ -11,161 +11,6 @@ describe "Issues" do
project.add_access(@user2, :read, :write)
end
- describe "GET /issues" do
- before do
- @issue = Factory :issue,
- :author => @user,
- :assignee => @user,
- :project => project
-
- visit project_issues_path(project)
- end
-
- subject { page }
-
- it { should have_content(@issue.title[0..20]) }
- it { should have_content(@issue.project.name) }
- it { should have_content(@issue.assignee.name) }
-
- it "should render atom feed" do
- 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)
- end
-
- it "should render atom feed via private token" do
- logout
- 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)
- end
-
- describe "statuses" do
- before do
- @closed_issue = Factory :issue,
- :author => @user,
- :assignee => @user,
- :project => project,
- :closed => true
- end
-
- it "should show only open" do
- should have_content(@issue.title[0..25])
- should have_no_content(@closed_issue.title)
- end
-
- it "should show only closed" do
- click_link "Closed"
- should have_no_content(@issue.title)
- should have_content(@closed_issue.title[0..25])
- end
-
- it "should show all" do
- click_link "All"
- should have_content(@issue.title[0..25])
- should have_content(@closed_issue.title[0..25])
- end
- end
- end
-
- describe "New issue", :js => true do
- before do
- visit project_issues_path(project)
- click_link "New Issue"
- end
-
- it "should open new issue form" do
- page.should have_content("New Issue")
- end
-
- describe "fill in" do
- describe 'assign to me' do
- before do
- fill_in "issue_title", :with => "bug 345"
- page.execute_script("$('#issue_assignee_id').show();")
- select @user.name, :from => "issue_assignee_id"
- end
-
- it { expect { click_button "Submit new issue" }.to change {Issue.count}.by(1) }
-
- it "should add new issue to table" do
- click_button "Submit new issue"
-
- page.should_not have_content("Add new issue")
- page.should have_content @user.name
- page.should have_content "bug 345"
- page.should have_content project.name
- end
-
- it "should call send mail" do
- Notify.should_not_receive(:new_issue_email)
- click_button "Submit new issue"
- end
- end
-
- describe 'assign to other' do
- before do
- fill_in "issue_title", :with => "bug 345"
- page.execute_script("$('#issue_assignee_id').show();")
- select @user2.name, :from => "issue_assignee_id"
- end
-
- it { expect { click_button "Submit new issue" }.to change {Issue.count}.by(1) }
-
- it "should add new issue to table" do
- click_button "Submit new issue"
-
- page.should_not have_content("Add new issue")
- page.should have_content @user2.name
- page.should have_content "bug 345"
- page.should have_content project.name
- end
-
- it "should call send mail" do
- Issue.observers.enable :issue_observer do
- Notify.should_receive(:new_issue_email).and_return(stub(:deliver => true))
- click_button "Submit new issue"
- end
- end
-
- it "should send valid email to user" do
- Issue.observers.enable :issue_observer do
- with_resque do
- click_button "Submit new issue"
- end
- issue = Issue.last
- email = ActionMailer::Base.deliveries.last
- email.subject.should have_content("New Issue was created")
- email.body.should have_content(issue.title)
- end
- end
-
- end
- end
- end
-
- describe "Show issue" do
- before do
- @issue = Factory :issue,
- :author => @user,
- :assignee => @user,
- :project => project
-
- visit project_issue_path(project, @issue)
- end
-
- it "should have valid show page for issue" do
- page.should have_content @issue.title
- page.should have_content @user.name
- end
- end
-
describe "Edit issue", :js => true do
before do
@issue = Factory :issue,