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 |