{"action":"created","comment":{"url":"https://api.github.com/repos/bellycard/napa/pulls/comments/23584606","id":23584606,"diff_hunk":"@@ -11,35 +12,29 @@\n require 'napa'\n require 'napa/rspec_extensions/response_helpers'\n \n+module NapaSpecClassHelpers\n+  # Apparently Thor's last name is Odinson... who knew?!\n+  # http://marvel.com/universe/Thor_(Thor_Odinson)\n+  # http://www.infinitelooper.com/?v=4D7cPH7DHgA#/170;230\n+  def tell_me_mr_odinson_what_good_is_a_phone_call_if_youre_unable_to_speak?\n+    before do |spec|\n+      allow_any_instance_of(Thor::Shell::Basic)\n+        .to receive(:stdout).and_return(object_spy $stdout)\n+      allow_any_instance_of(Thor::Shell::Basic)\n+        .to receive(:stderr).and_return(object_spy $stderr)\n+    end\n+  end\n+end\n+\n+ActiveRecord::Schema.verbose = false\n+\n # from https://gist.github.com/adamstegman/926858\n RSpec.configure do |config|\n   config.include Napa::RspecExtensions::ResponseHelpers\n-\n-  config.before(:all) { silence_output }\n-  config.after(:all) { enable_output }\n-\n+  config.extend  NapaSpecClassHelpers\n   config.include ActsAsFu\n \n   config.before(:each) do\n-    allow(Napa).to receive(:initialize)","path":"spec/spec_helper.rb","position":39,"original_position":39,"commit_id":"55a6ad8da7681d3aef1f3f3a7e3de5156d99f8a6","original_commit_id":"55a6ad8da7681d3aef1f3f3a7e3de5156d99f8a6","user":{"login":"JoshCheek","id":77495,"avatar_url":"https://avatars.githubusercontent.com/u/77495?v=3","gravatar_id":"","url":"https://api.github.com/users/JoshCheek","html_url":"https://github.com/JoshCheek","followers_url":"https://api.github.com/users/JoshCheek/followers","following_url":"https://api.github.com/users/JoshCheek/following{/other_user}","gists_url":"https://api.github.com/users/JoshCheek/gists{/gist_id}","starred_url":"https://api.github.com/users/JoshCheek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JoshCheek/subscriptions","organizations_url":"https://api.github.com/users/JoshCheek/orgs","repos_url":"https://api.github.com/users/JoshCheek/repos","events_url":"https://api.github.com/users/JoshCheek/events{/privacy}","received_events_url":"https://api.github.com/users/JoshCheek/received_events","type":"User","site_admin":false},"body":":heart: ","created_at":"2015-01-27T03:09:29Z","updated_at":"2015-01-27T03:09:29Z","html_url":"https://github.com/bellycard/napa/pull/175#discussion_r23584606","pull_request_url":"https://api.github.com/repos/bellycard/napa/pulls/175","_links":{"self":{"href":"https://api.github.com/repos/bellycard/napa/pulls/comments/23584606"},"html":{"href":"https://github.com/bellycard/napa/pull/175#discussion_r23584606"},"pull_request":{"href":"https://api.github.com/repos/bellycard/napa/pulls/175"}}},"pull_request":{"url":"https://api.github.com/repos/bellycard/napa/pulls/175","id":27988503,"html_url":"https://github.com/bellycard/napa/pull/175","diff_url":"https://github.com/bellycard/napa/pull/175.diff","patch_url":"https://github.com/bellycard/napa/pull/175.patch","issue_url":"https://api.github.com/repos/bellycard/napa/issues/175","number":175,"state":"open","locked":false,"title":"Hey! Spec suite! Leave them streams alone!","user":{"login":"JoshCheek","id":77495,"avatar_url":"https://avatars.githubusercontent.com/u/77495?v=3","gravatar_id":"","url":"https://api.github.com/users/JoshCheek","html_url":"https://github.com/JoshCheek","followers_url":"https://api.github.com/users/JoshCheek/followers","following_url":"https://api.github.com/users/JoshCheek/following{/other_user}","gists_url":"https://api.github.com/users/JoshCheek/gists{/gist_id}","starred_url":"https://api.github.com/users/JoshCheek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JoshCheek/subscriptions","organizations_url":"https://api.github.com/users/JoshCheek/orgs","repos_url":"https://api.github.com/users/JoshCheek/repos","events_url":"https://api.github.com/users/JoshCheek/events{/privacy}","received_events_url":"https://api.github.com/users/JoshCheek/received_events","type":"User","site_admin":false},"body":"Apparently this https://gist.github.com/adamstegman/926858 was to get\r\nRSpec to stfu. But now it calmed down again, so not necessary.\r\nAnd it affects other things, like swallowing print statements,\r\ncausing pry to omit output, and hiding other output that is potentially\r\nlegitimate.\r\n\r\nHowever, one nice side effect was that it caught other loudmouths in the dragnet:\r\n\r\n* ActiveRecord::Migration, apparently there is a globaly flag you set to\r\n  tell it to shush.\r\n* Thor::Shell... I gave up on this one. Had tried passing in `shell`\r\n  like any sensible interface, but it was blowing up pretty hard. Had\r\n  tried wiping out here https://github.com/erikhuda/thor/blob/53b3fc89ce750258e19c53b1a99b32dd5941451a/lib/thor/shell.rb#L6\r\n  but it's passing around classes instead of instances, so its like you\r\n  have to have layers on layers of fake classes. Tried passing it here\r\n  https://github.com/erikhuda/thor/blob/53b3fc89ce750258e19c53b1a99b32dd5941451a/lib/thor/shell.rb#L53\r\n  but the indirection of who'se inheriting from whom and calling what on\r\n  what and which vars got set by whatever wherever were just too much\r\n  for me at this hour, so fuck it. Stub it.\r\n* CodeClimate is logging directly to stderr. You can get it to stfu with:\r\n  `CodeClimate::TestReporter.configuration.logger = Logger.new('/dev/null')`\r\n  Put it before the `CodeClimate::TestReporter.start` I didn't do it b/c\r\n  it was doing this before (it runs before output streams were silenced)\r\n  so I figured maybe someone wanted it that way on purpose. Plus, you\r\n  probably do want it logging in CI, which you'd probably do by setting an\r\n  env var there, and then silencing it unless you see the var. Since I\r\n  don't have access to your CI, and getting all that config wired up\r\n  right tends to be fragile, I figured it'd be best to leave it.\r\n\r\nWent with a matrix theme, b/c the vindictive side of me enjoyed the idea\r\nof Thor's stupid mouth getting melted shut.","created_at":"2015-01-25T06:51:37Z","updated_at":"2015-01-27T03:09:29Z","closed_at":null,"merged_at":null,"merge_commit_sha":"e59768b389bf44b9b410bae484e070d760280dc3","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/bellycard/napa/pulls/175/commits","review_comments_url":"https://api.github.com/repos/bellycard/napa/pulls/175/comments","review_comment_url":"https://api.github.com/repos/bellycard/napa/pulls/comments/{number}","comments_url":"https://api.github.com/repos/bellycard/napa/issues/175/comments","statuses_url":"https://api.github.com/repos/bellycard/napa/statuses/55a6ad8da7681d3aef1f3f3a7e3de5156d99f8a6","head":{"label":"JoshCheek:selective-silence","ref":"selective-silence","sha":"55a6ad8da7681d3aef1f3f3a7e3de5156d99f8a6","user":{"login":"JoshCheek","id":77495,"avatar_url":"https://avatars.githubusercontent.com/u/77495?v=3","gravatar_id":"","url":"https://api.github.com/users/JoshCheek","html_url":"https://github.com/JoshCheek","followers_url":"https://api.github.com/users/JoshCheek/followers","following_url":"https://api.github.com/users/JoshCheek/following{/other_user}","gists_url":"https://api.github.com/users/JoshCheek/gists{/gist_id}","starred_url":"https://api.github.com/users/JoshCheek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JoshCheek/subscriptions","organizations_url":"https://api.github.com/users/JoshCheek/orgs","repos_url":"https://api.github.com/users/JoshCheek/repos","events_url":"https://api.github.com/users/JoshCheek/events{/privacy}","received_events_url":"https://api.github.com/users/JoshCheek/received_events","type":"User","site_admin":false},"repo":{"id":29802456,"name":"napa","full_name":"JoshCheek/napa","owner":{"login":"JoshCheek","id":77495,"avatar_url":"https://avatars.githubusercontent.com/u/77495?v=3","gravatar_id":"","url":"https://api.github.com/users/JoshCheek","html_url":"https://github.com/JoshCheek","followers_url":"https://api.github.com/users/JoshCheek/followers","following_url":"https://api.github.com/users/JoshCheek/following{/other_user}","gists_url":"https://api.github.com/users/JoshCheek/gists{/gist_id}","starred_url":"https://api.github.com/users/JoshCheek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JoshCheek/subscriptions","organizations_url":"https://api.github.com/users/JoshCheek/orgs","repos_url":"https://api.github.com/users/JoshCheek/repos","events_url":"https://api.github.com/users/JoshCheek/events{/privacy}","received_events_url":"https://api.github.com/users/JoshCheek/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/JoshCheek/napa","description":"A simple framework for building APIs with Grape","fork":true,"url":"https://api.github.com/repos/JoshCheek/napa","forks_url":"https://api.github.com/repos/JoshCheek/napa/forks","keys_url":"https://api.github.com/repos/JoshCheek/napa/keys{/key_id}","collaborators_url":"https://api.github.com/repos/JoshCheek/napa/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/JoshCheek/napa/teams","hooks_url":"https://api.github.com/repos/JoshCheek/napa/hooks","issue_events_url":"https://api.github.com/repos/JoshCheek/napa/issues/events{/number}","events_url":"https://api.github.com/repos/JoshCheek/napa/events","assignees_url":"https://api.github.com/repos/JoshCheek/napa/assignees{/user}","branches_url":"https://api.github.com/repos/JoshCheek/napa/branches{/branch}","tags_url":"https://api.github.com/repos/JoshCheek/napa/tags","blobs_url":"https://api.github.com/repos/JoshCheek/napa/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/JoshCheek/napa/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/JoshCheek/napa/git/refs{/sha}","trees_url":"https://api.github.com/repos/JoshCheek/napa/git/trees{/sha}","statuses_url":"https://api.github.com/repos/JoshCheek/napa/statuses/{sha}","languages_url":"https://api.github.com/repos/JoshCheek/napa/languages","stargazers_url":"https://api.github.com/repos/JoshCheek/napa/stargazers","contributors_url":"https://api.github.com/repos/JoshCheek/napa/contributors","subscribers_url":"https://api.github.com/repos/JoshCheek/napa/subscribers","subscription_url":"https://api.github.com/repos/JoshCheek/napa/subscription","commits_url":"https://api.github.com/repos/JoshCheek/napa/commits{/sha}","git_commits_url":"https://api.github.com/repos/JoshCheek/napa/git/commits{/sha}","comments_url":"https://api.github.com/repos/JoshCheek/napa/comments{/number}","issue_comment_url":"https://api.github.com/repos/JoshCheek/napa/issues/comments/{number}","contents_url":"https://api.github.com/repos/JoshCheek/napa/contents/{+path}","compare_url":"https://api.github.com/repos/JoshCheek/napa/compare/{base}...{head}","merges_url":"https://api.github.com/repos/JoshCheek/napa/merges","archive_url":"https://api.github.com/repos/JoshCheek/napa/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/JoshCheek/napa/downloads","issues_url":"https://api.github.com/repos/JoshCheek/napa/issues{/number}","pulls_url":"https://api.github.com/repos/JoshCheek/napa/pulls{/number}","milestones_url":"https://api.github.com/repos/JoshCheek/napa/milestones{/number}","notifications_url":"https://api.github.com/repos/JoshCheek/napa/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/JoshCheek/napa/labels{/name}","releases_url":"https://api.github.com/repos/JoshCheek/napa/releases{/id}","created_at":"2015-01-25T04:20:52Z","updated_at":"2015-01-25T04:20:53Z","pushed_at":"2015-01-25T06:51:10Z","git_url":"git://github.com/JoshCheek/napa.git","ssh_url":"git@github.com:JoshCheek/napa.git","clone_url":"https://github.com/JoshCheek/napa.git","svn_url":"https://github.com/JoshCheek/napa","homepage":null,"size":1321,"stargazers_count":0,"watchers_count":0,"language":"Ruby","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"bellycard:master","ref":"master","sha":"7350ee95cca1cb3efd0e5ec111d636b35be57273","user":{"login":"bellycard","id":1090217,"avatar_url":"https://avatars.githubusercontent.com/u/1090217?v=3","gravatar_id":"","url":"https://api.github.com/users/bellycard","html_url":"https://github.com/bellycard","followers_url":"https://api.github.com/users/bellycard/followers","following_url":"https://api.github.com/users/bellycard/following{/other_user}","gists_url":"https://api.github.com/users/bellycard/gists{/gist_id}","starred_url":"https://api.github.com/users/bellycard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bellycard/subscriptions","organizations_url":"https://api.github.com/users/bellycard/orgs","repos_url":"https://api.github.com/users/bellycard/repos","events_url":"https://api.github.com/users/bellycard/events{/privacy}","received_events_url":"https://api.github.com/users/bellycard/received_events","type":"Organization","site_admin":false},"repo":{"id":13999902,"name":"napa","full_name":"bellycard/napa","owner":{"login":"bellycard","id":1090217,"avatar_url":"https://avatars.githubusercontent.com/u/1090217?v=3","gravatar_id":"","url":"https://api.github.com/users/bellycard","html_url":"https://github.com/bellycard","followers_url":"https://api.github.com/users/bellycard/followers","following_url":"https://api.github.com/users/bellycard/following{/other_user}","gists_url":"https://api.github.com/users/bellycard/gists{/gist_id}","starred_url":"https://api.github.com/users/bellycard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bellycard/subscriptions","organizations_url":"https://api.github.com/users/bellycard/orgs","repos_url":"https://api.github.com/users/bellycard/repos","events_url":"https://api.github.com/users/bellycard/events{/privacy}","received_events_url":"https://api.github.com/users/bellycard/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/bellycard/napa","description":"A simple framework for building APIs with Grape","fork":false,"url":"https://api.github.com/repos/bellycard/napa","forks_url":"https://api.github.com/repos/bellycard/napa/forks","keys_url":"https://api.github.com/repos/bellycard/napa/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bellycard/napa/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bellycard/napa/teams","hooks_url":"https://api.github.com/repos/bellycard/napa/hooks","issue_events_url":"https://api.github.com/repos/bellycard/napa/issues/events{/number}","events_url":"https://api.github.com/repos/bellycard/napa/events","assignees_url":"https://api.github.com/repos/bellycard/napa/assignees{/user}","branches_url":"https://api.github.com/repos/bellycard/napa/branches{/branch}","tags_url":"https://api.github.com/repos/bellycard/napa/tags","blobs_url":"https://api.github.com/repos/bellycard/napa/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bellycard/napa/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bellycard/napa/git/refs{/sha}","trees_url":"https://api.github.com/repos/bellycard/napa/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bellycard/napa/statuses/{sha}","languages_url":"https://api.github.com/repos/bellycard/napa/languages","stargazers_url":"https://api.github.com/repos/bellycard/napa/stargazers","contributors_url":"https://api.github.com/repos/bellycard/napa/contributors","subscribers_url":"https://api.github.com/repos/bellycard/napa/subscribers","subscription_url":"https://api.github.com/repos/bellycard/napa/subscription","commits_url":"https://api.github.com/repos/bellycard/napa/commits{/sha}","git_commits_url":"https://api.github.com/repos/bellycard/napa/git/commits{/sha}","comments_url":"https://api.github.com/repos/bellycard/napa/comments{/number}","issue_comment_url":"https://api.github.com/repos/bellycard/napa/issues/comments/{number}","contents_url":"https://api.github.com/repos/bellycard/napa/contents/{+path}","compare_url":"https://api.github.com/repos/bellycard/napa/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bellycard/napa/merges","archive_url":"https://api.github.com/repos/bellycard/napa/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bellycard/napa/downloads","issues_url":"https://api.github.com/repos/bellycard/napa/issues{/number}","pulls_url":"https://api.github.com/repos/bellycard/napa/pulls{/number}","milestones_url":"https://api.github.com/repos/bellycard/napa/milestones{/number}","notifications_url":"https://api.github.com/repos/bellycard/napa/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bellycard/napa/labels{/name}","releases_url":"https://api.github.com/repos/bellycard/napa/releases{/id}","created_at":"2013-10-30T21:15:59Z","updated_at":"2015-01-26T13:57:28Z","pushed_at":"2015-01-23T19:40:57Z","git_url":"git://github.com/bellycard/napa.git","ssh_url":"git@github.com:bellycard/napa.git","clone_url":"https://github.com/bellycard/napa.git","svn_url":"https://github.com/bellycard/napa","homepage":null,"size":1321,"stargazers_count":76,"watchers_count":76,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":44,"mirror_url":null,"open_issues_count":14,"forks":44,"open_issues":14,"watchers":76,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/bellycard/napa/pulls/175"},"html":{"href":"https://github.com/bellycard/napa/pull/175"},"issue":{"href":"https://api.github.com/repos/bellycard/napa/issues/175"},"comments":{"href":"https://api.github.com/repos/bellycard/napa/issues/175/comments"},"review_comments":{"href":"https://api.github.com/repos/bellycard/napa/pulls/175/comments"},"review_comment":{"href":"https://api.github.com/repos/bellycard/napa/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/bellycard/napa/pulls/175/commits"},"statuses":{"href":"https://api.github.com/repos/bellycard/napa/statuses/55a6ad8da7681d3aef1f3f3a7e3de5156d99f8a6"}}}}