Sha256: 8ef6df568450429b461f39b0ea9ad76bee569ed0a90be3f4b250d23a8d5eae2e
Contents?: true
Size: 1.72 KB
Versions: 2
Compression:
Stored size: 1.72 KB
Contents
require File.expand_path("../spec_helper", __FILE__) describe Keen::HTTP::Async do let(:project_id) { "12345" } let(:write_key) { "abcdewrite" } let(:collection) { "users" } let(:api_url) { "https://fake.keen.io" } let(:event_properties) { { "name" => "Bob" } } let(:api_success) { { "created" => true } } describe "synchrony" do before do @client = Keen::Client.new( :project_id => project_id, :write_key => write_key, :api_url => api_url) end describe "success" do it "should post the event data" do stub_keen_post(api_event_resource_url(api_url, collection), 201, api_success) EM.synchrony { @client.publish_async(collection, event_properties) expect_keen_post(api_event_resource_url(api_url, collection), event_properties, "async", write_key) EM.stop } end it "should recieve the right response 'synchronously'" do stub_keen_post(api_event_resource_url(api_url, collection), 201, api_success) EM.synchrony { @client.publish_async(collection, event_properties).should == api_success EM.stop } end end describe "failure" do it "should raise an exception" do stub_request(:post, api_event_resource_url(api_url, collection)).to_timeout e = nil EM.synchrony { begin @client.publish_async(collection, event_properties).should == api_success rescue Exception => exception e = exception end e.class.should == Keen::HttpError e.message.should == "Keen IO Exception: HTTP em-synchrony publish_async error: WebMock timeout error" EM.stop } end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
keen-0.7.2 | spec/synchrony/synchrony_spec.rb |
keen-0.7.1 | spec/synchrony/synchrony_spec.rb |