Sha256: e6f17710d0ab14391980efdb0960e11c788b11ec346adc5f493929d7001cd8bf

Contents?: true

Size: 1.84 KB

Versions: 14

Compression:

Stored size: 1.84 KB

Contents

require "spec_helper"

describe Pubnub::Audit do
  it_behaves_like "an event"

  context "given basic parameters" do
    before :each do
      Pubnub::Audit.any_instance.stub(:current_time).and_return 1462972157
      Pubnub::Audit.any_instance.stub(:signature).and_return "P3xhzqxwFJSFthJbnByZog-U4j1S5TMFeuUxqKNgMM0="

      @pubnub = Pubnub::Client.new(
        subscribe_key: "sub-a-mock-key",
        publish_key: "pub-a-mock-key",
        secret_key: "sec-a-mock-key",
        auth_key: "ruby-test-auth",
        uuid: "ruby-test-uuid",
      )
    end

    it "works" do
      VCR.use_cassette("lib/events/audit-works", record: :once) do
        envelope = @pubnub.audit(
          channel: :demo,
        ).value

        expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
        expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
      end
    end

    it "forms valid ErrorEnvelope on error" do
      VCR.use_cassette("lib/events/audit-error", record: :once) do
        envelope = @pubnub.audit(
          channel: :demo,
        ).value

        expect(envelope.is_a?(Pubnub::ErrorEnvelope)).to eq true
        expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
        expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
      end
    end

    it "forms valid ErrorEnvelope on json error" do
      VCR.use_cassette("lib/events/audit-json-error", record: :once) do
        envelope = @pubnub.audit(
          channel: :demo,
        ).value
        expect(envelope.is_a?(Pubnub::ErrorEnvelope)).to eq true
        expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
        expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
pubnub-4.6.0 spec/lib/events/audit_spec.rb
pubnub-4.5.0 spec/lib/events/audit_spec.rb
pubnub-4.4.0 spec/lib/events/audit_spec.rb
pubnub-4.3.0 spec/lib/events/audit_spec.rb
pubnub-4.2.7 spec/lib/events/audit_spec.rb
pubnub-4.2.6 spec/lib/events/audit_spec.rb
pubnub-4.2.5 spec/lib/events/audit_spec.rb
pubnub-4.2.4 spec/lib/events/audit_spec.rb
pubnub-4.2.3 spec/lib/events/audit_spec.rb
pubnub-4.2.2 spec/lib/events/audit_spec.rb
pubnub-4.2.1 spec/lib/events/audit_spec.rb
pubnub-4.2.0 spec/lib/events/audit_spec.rb
pubnub-4.1.6 spec/lib/events/audit_spec.rb
pubnub-4.1.5 spec/lib/events/audit_spec.rb