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 | 64 | def create_issue |
| 65 | 65 | body = "" # TODO render_issue_body |
| 66 | 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 | 68 | unless issue.save |
| 69 | - flash[:error] = issue_creation.errors.full_messages.join(', ') | |
| 69 | + flash[:error] = issue.errors.full_messages.join(', ') | |
| 70 | 70 | end |
| 71 | 71 | |
| 72 | 72 | redirect_to app_problem_path(app, problem) | ... | ... |
spec/controllers/problems_controller_spec.rb
| ... | ... | @@ -263,39 +263,33 @@ describe ProblemsController do |
| 263 | 263 | end |
| 264 | 264 | |
| 265 | 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 | 280 | end |
| 282 | 281 | end |
| 283 | 282 | |
| 284 | 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 | 286 | end |
| 292 | 287 | |
| 293 | 288 | it "should redirect to problem page" do |
| 294 | 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 | 291 | end |
| 297 | 292 | end |
| 298 | - | |
| 299 | 293 | end |
| 300 | 294 | |
| 301 | 295 | describe "DELETE /apps/:app_id/problems/:id/unlink_issue" do | ... | ... |