Commit 02db31b71d72b74bf5718483efcb5da5e0d1e4b3
1 parent
242fd923
Exists in
master
and in
1 other branch
Fix problem_controller and spec
Showing
2 changed files
with
17 additions
and
23 deletions
Show diff stats
app/controllers/problems_controller.rb
| @@ -64,9 +64,9 @@ class ProblemsController < ApplicationController | @@ -64,9 +64,9 @@ class ProblemsController < ApplicationController | ||
| 64 | def create_issue | 64 | def create_issue |
| 65 | body = "" # TODO render_issue_body | 65 | body = "" # TODO render_issue_body |
| 66 | title = "" # TODO generate_title | 66 | title = "" # TODO generate_title |
| 67 | - issue = Issue.new(problem: problem, user: current_user, title: title, body: body) | 67 | + issue = Issue.new(issue_tracker: problem.app.issue_tracker, user: current_user, title: title, body: body) |
| 68 | unless issue.save | 68 | unless issue.save |
| 69 | - flash[:error] = issue_creation.errors.full_messages.join(', ') | 69 | + flash[:error] = issue.errors.full_messages.join(', ') |
| 70 | end | 70 | end |
| 71 | 71 | ||
| 72 | redirect_to app_problem_path(app, problem) | 72 | redirect_to app_problem_path(app, problem) |
spec/controllers/problems_controller_spec.rb
| @@ -263,39 +263,33 @@ describe ProblemsController do | @@ -263,39 +263,33 @@ describe ProblemsController do | ||
| 263 | end | 263 | end |
| 264 | 264 | ||
| 265 | context "successful issue creation" do | 265 | context "successful issue creation" do |
| 266 | - context "lighthouseapp tracker" do | ||
| 267 | - let(:notice) { Fabricate :notice } | ||
| 268 | - let(:problem) { notice.problem } | 266 | + let(:notice) { Fabricate :notice } |
| 267 | + let(:problem) { notice.problem } | ||
| 268 | + let(:issue_tracker) { Fabricate(:issue_tracker) } | ||
| 269 | 269 | ||
| 270 | - before(:each) do | ||
| 271 | - controller.stub(:problem).and_return(problem) | ||
| 272 | - controller.stub(:current_user).and_return(admin) | ||
| 273 | - IssueCreation.should_receive(:new).with(problem, admin, nil, request).and_return(double(:execute => true)) | ||
| 274 | - post :create_issue, :app_id => problem.app.id, :id => problem.id | ||
| 275 | - end | 270 | + before do |
| 271 | + problem.app.issue_tracker = issue_tracker | ||
| 272 | + problem.app.save! | ||
| 273 | + controller.stub(:current_user).and_return(admin) | ||
| 274 | + post :create_issue, app_id: problem.app.id, id: problem.id | ||
| 275 | + end | ||
| 276 | 276 | ||
| 277 | - it "should redirect to problem page" do | ||
| 278 | - expect(response).to redirect_to( app_problem_path(problem.app, problem) ) | ||
| 279 | - expect(flash[:error]).to be_blank | ||
| 280 | - end | 277 | + it "should redirect to problem page" do |
| 278 | + expect(response).to redirect_to( app_problem_path(problem.app, problem) ) | ||
| 279 | + expect(flash[:error]).to be_blank | ||
| 281 | end | 280 | end |
| 282 | end | 281 | end |
| 283 | 282 | ||
| 284 | context "error during request to a tracker" do | 283 | context "error during request to a tracker" do |
| 285 | - before(:each) do | ||
| 286 | - IssueCreation.should_receive(:new).with(problem, admin, nil, request).and_return( | ||
| 287 | - double(:execute => false, :errors => double(:full_messages => ['not create'])) | ||
| 288 | - ) | ||
| 289 | - controller.stub(:problem).and_return(problem) | ||
| 290 | - post :create_issue, :app_id => problem.app.id, :id => problem.id | 284 | + before do |
| 285 | + post :create_issue, app_id: problem.app.id, id: problem.id | ||
| 291 | end | 286 | end |
| 292 | 287 | ||
| 293 | it "should redirect to problem page" do | 288 | it "should redirect to problem page" do |
| 294 | expect(response).to redirect_to( app_problem_path(problem.app, problem) ) | 289 | expect(response).to redirect_to( app_problem_path(problem.app, problem) ) |
| 295 | - expect(flash[:error]).to eql 'not create' | 290 | + expect(flash[:error]).to eql "This app has no issue tracker setup." |
| 296 | end | 291 | end |
| 297 | end | 292 | end |
| 298 | - | ||
| 299 | end | 293 | end |
| 300 | 294 | ||
| 301 | describe "DELETE /apps/:app_id/problems/:id/unlink_issue" do | 295 | describe "DELETE /apps/:app_id/problems/:id/unlink_issue" do |