Sha256: 9ffa76e0476efa5a9feed6542f3a051d2040967e8ae51005c834aa31e62b0ea4

Contents?: true

Size: 1.66 KB

Versions: 1

Compression:

Stored size: 1.66 KB

Contents

require_relative '../../../test_helper'

module Troo
  describe Adaptors::Card do
    let(:described_class) { Adaptors::Card }
    let(:resource) do
      OpenStruct.new(
        board_id:           '526d8e130a14a9d846001d96',
        list_id:            '526d8e130a14a9d846001d97',
        id:                 '526d8f19ddb279532e005259',
        member_ids:         ['5195fdb5a8c01a2318004f5d'],
        short_id:           67,
        name:               'My Test Card',
        desc:               'some description',
        url:                'some trello url',
        pos:                16,
        last_activity_date: '2013-12-17 21:48:09 UTC',
        closed:             false)
    end

    describe '#initialize' do
      subject { described_class.new(resource) }

      it 'assigns the resource to an instance variable' do
        subject.instance_variable_get('@resource')
          .must_equal(resource)
      end
    end

    describe '#adapted' do
      subject { described_class.adapt(resource) }

      it 'returns an adapted resource for local persistence' do
        subject.must_equal(
          external_board_id:   '526d8e130a14a9d846001d96',
          external_list_id:    '526d8e130a14a9d846001d97',
          external_card_id:    '526d8f19ddb279532e005259',
          external_member_ids: "[\"5195fdb5a8c01a2318004f5d\"]",
          short_id:            '67',
          name:                'My Test Card',
          desc:                'some description',
          url:                 'some trello url',
          position:            '16',
          last_activity_date:  '2013-12-17 21:48:09 UTC',
          closed:              'false')
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
troo-0.0.8 test/lib/troo/adaptors/card_test.rb