Sha256: 0e8dff9c8c189908792efba50a0a44f71ce2b80b74f1da9a31bf213f9a269634

Contents?: true

Size: 782 Bytes

Versions: 2

Compression:

Stored size: 782 Bytes

Contents

require 'spec_helper'

describe Filepreviews::Response do
  let(:response) { Filepreviews::Response }

  describe '.new' do
    it 'returns an Response instance' do
      expect(response.new({})).to be_an_instance_of(Filepreviews::Response)
    end

    it 'calls responsify' do
      json = JSON.parse({hey: "wow"}.to_json)
      expect(response.new(json).hey).to eq("wow")
    end
  end

  describe '.responsify' do
    json = JSON.parse({url: "filepreviews.io", testing: true}.to_json)

    context 'when a Hash or JSON response is passed' do
      it 'transforms body attributes into callable methods' do
        responsify = response.new(json)

        expect(responsify.url).to eq("filepreviews.io")
        expect(responsify.testing).to eq(true)
      end
    end
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
filepreviews-2.0.9 spec/filepreviews/response_spec.rb
filepreviews-2.0.8 spec/filepreviews/response_spec.rb