require 'spec_helper' describe IssueTrackers::GithubIssuesTracker do it "should create an issue on GitHub Issues with problem params, and set issue link for problem" do repo = "test_user/test_repo" notice = Fabricate :notice notice.app.github_repo = repo tracker = Fabricate :github_issues_tracker, :app => notice.app problem = notice.problem number = 5 @issue_link = "https://github.com/#{repo}/issues/#{number}" body = < 201, :headers => { 'Location' => @issue_link, 'Content-Type' => 'application/json', }, :body => body ) problem.app.issue_tracker.create_issue(problem) problem.reload requested = have_requested(:post, "https://#{tracker.username}:#{tracker.password}@api.github.com/repos/#{repo}/issues") WebMock.should requested.with(:body => /[production][foo#bar] FooError: Too Much Bar/) WebMock.should requested.with(:body => /See this exception on Errbit/) problem.issue_link.should == @issue_link end end