0

S3 にファイルを永続化するイベント マシン ライブラリである、happening gem を使用しています。rspec テストを実行して aws バケットからファイルを「GET」すると、エラーが発生します。

エラー O/P:

    RuntimeError: eventmachine not initialized: evma_connect_to_server
/home/ubuntu/.rvm/gems/ruby-1.9.3-p392/gems/eventmachine-1.0.3/lib/eventmachine.rb:665:in `connect_server'
/home/ubuntu/.rvm/gems/ruby-1.9.3-p392/gems/eventmachine-1.0.3/lib/eventmachine.rb:665:in `bind_connect'
/home/ubuntu/.rvm/gems/ruby-1.9.3-p392/gems/em-http-request-1.0.3/lib/em-http/http_connection.rb:54:in `activate_connection'
/home/ubuntu/.rvm/gems/ruby-1.9.3-p392/gems/em-http-request-1.0.3/lib/em-http/http_connection.rb:89:in `setup_request'
/home/ubuntu/.rvm/gems/ruby-1.9.3-p392/gems/em-http-request-1.0.3/lib/em-http/http_connection.rb:4:in `get'
/home/ubuntu/.rvm/gems/ruby-1.9.3-p392/gems/happening-0.2.5/lib/happening/s3/request.rb:35:in `execute'
/home/ubuntu/.rvm/gems/ruby-1.9.3-p392/gems/happening-0.2.5/lib/happening/s3/item.rb:44:in `get'\

同様の問題に直面した団体はありますか?

ありがとう

4

1 に答える 1

0

with_apiこれは、ブロックを追加することで解決できます

  it "should return pong response" do
    with_api API do
      get_request(path: "/api/ping") do |async|
        async.response.should == { ping: "pong" }.to_json
      end
    end
  end

から継承するあなたのAPIクラスはどこAPIですかGoliath::API

そしてspec_helper.rb追加するには:

require 'goliath/test_helper'
RSpec.configure do |c|
  c.include Goliath::TestHelper, :example_group => {
    :file_path => /spec\/api/
  }
end
于 2013-12-04T23:11:24.973 に答える