2016-11-09 3 views
0

私はthis projectでの使用のために宝石https://github.com/toptal/disqus_apiを試していますが、私の認証の詳細を受け入れるために苦労しています。それは別の質問に終わるかもしれませんが、今はソースコードを調べていくつかの手動デバッグをしたかったのです。bundleは、実際のソースコードにアクセスしていないdisqus_apiを開きますか?

問題は、私がbundle open disqus_apiのときに何か奇妙なことが起こっています。ファイルを探しているようですが、デバッガを使って中断するなどして変更を加えると、そのファイルが選択されません(エラーが発生したときに行をシフトダウンする必要がある場合は、行番号は変更されません) 。

私は完全に間違った場所にいないかもしれないという兆候の1つは、宝石の全体のlibディレクトリを一時的に削除しても、コアDisqusApiクラスをロードしている間に、そのクラスに対して 'show-source'今度はError: Couldn't locate a definition for DisqusApi!を出力します。

(追加する編集):

具体的には、それは私がそれを編集した後、我々は持っているので、this file

の行70です:

def perform_request #line 68 
    require 'byebug' #69 
    byebug #70 
    yield.tap do |response| #71 
    raise InvalidApiRequestError.new(response) if response['code'] != 0 #72 
    end 
end 

をしかし、それはこのようにERRS : DisqusApi::InvalidApiRequestError: {"code"=>5, "response"=>"Invalid API key"} from /Users/sashacooper/.rvm/gems/ruby-2.3.1/gems/disqus_api-0.0.5/lib/disqus_api/api.rb:70:in perform_requestのブロック '

何が起こっているのですか?プロジェクトのGemfile.rb

group :development do 
    gem 'byebug' 
end 
  • 答えて

    1

    byebug宝石を使用し

    1. ターミナル

      bundle open disqus_api 
      
    2. disqus_api宝石を開きます
    3. 宝石のlib/disqus_api.rbにはbyebug gemが必要です。それは、デバッガをトリップいない - 私は(明確にするためにOPを編集した)デバッガのブレークを試みることによって、どのような意味だあなたは

    +0

    をデバッグしたい行に

    require 'byebug' 
  • 置きますdebuggerコール。 – Arepo

  • +0

    すべての手順、特に手順3を実行してもよろしいですか? – rebagliatte

    +0

    特定。それは私が最初にやろうとしていたことです(そして、直前の行にrequireとdebugger文を置くので、エラーメッセージの行番号が変わってしまいます)。だから何らかの理由で私はこれが実行されているコードではないと思います。 – Arepo

    関連する問題