Sha256: fa58c7548b8979ba59c682f874c889f823bf9c793196b6c1cb9385e1ee60a60b

Contents?: true

Size: 816 Bytes

Versions: 1

Compression:

Stored size: 816 Bytes

Contents

require 'spec_helper'

describe Resource::Property::Parser do
  subject {Resource::Property.new(:login)}

  let(:item)            {{login: "jackiechan2010"}}
  let(:serializer_mock) {mock :serializer}

  before do
    subject.stub!(:serializer).and_return serializer_mock
  end

  it "tries to serialize value" do
    serializer_mock.should_receive(:serialize).with(item[:login]).and_return(item[:login])
    subject.parse(item)
  end

  context "when there is a values map" do
    let(:values) {{paid: '01', unpaid: '02'}}

    subject do
      options = {values: values}
      Resource::Property.new(:payment_status, options)
    end

    it "maps value" do
      serializer_mock.should_receive(:serialize).with("02").and_return "02"
      subject.parse({payment_status: "02"}).should == :unpaid
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
transcriber-0.0.26 spec/unit/resource/parser/property_spec.rb