Sha256: a6cb1f2effbf70c88a5950806f4c73d684423b6c6fa96fac9509ef2647f6b4f2

Contents?: true

Size: 1.66 KB

Versions: 1

Compression:

Stored size: 1.66 KB

Contents

require 'intercom'
require 'minitest/autorun'

describe "api.intercom.io dummy data requests" do
  before :each do
    Intercom.app_id = "dummy-app-id"
    Intercom.api_key = "dummy-secret-key"
    Intercom.protocol = "http"
    Intercom.hostname = "intercom.dev"
  end

  it "should get all user" do
    Intercom::User.all.count.must_be :>, 0
  end

  it "should get a user" do
    user = Intercom::User.find(:email => "somebody@example.com")
    user.name.must_equal "Somebody"
  end

  it "not found... " do
    proc { Intercom::User.find(:email => "not-found@example.com") }.must_raise Intercom::ResourceNotFound
  end

  it "server error" do
    proc { Intercom::User.find(:email => "server-error@example.com") }.must_raise Intercom::ServerError
  end

  it "authentication failure with bad api key" do
    Intercom.app_id = "bad-app-id"
    Intercom.api_key = "bad-secret-key"
    proc { Intercom::User.find(:email => "not-found@example.com") }.must_raise Intercom::AuthenticationError
  end

  it "should find_all messages for a user" do
    message_thread = Intercom::MessageThread.find_all(:email => "somebody@example.com").first
    %w(thread_id read messages created_at updated_at created_by_user).each do |expected|
      message_thread.send(expected).wont_be_nil
    end
  end

  it "should mark message_thread as read" do
    message_thread = Intercom::MessageThread.find_all(:email => "somebody@example.com").first
    message_thread.mark_as_read!
  end

  it "should create some impression" do
    impression = Intercom::Impression.create(:email => 'somebody@example.com')
    impression.unread_messages.must_be :>, 0
    impression.email.must_equal 'somebody@example.com'
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
intercom-0.0.6 spec/integration/intercom_api_integration_spec.rb