Sha256: be23b21557d521f00f3745023f06f685b17ceb25397d0a3b6fa1119eadabbf1e

Contents?: true

Size: 1.35 KB

Versions: 6

Compression:

Stored size: 1.35 KB

Contents

require_relative "../../../test_helper"

module Troo
  module External
    describe CommentAdaptor do
      let(:described_class) { CommentAdaptor }
      let(:resource) { OpenStruct.new({
        id:                "51f9277b2822b8654f0023af",
        member_creator_id: "5195fdb5a8c01a2318004f5d",
        date:              "2013-12-17 22:01:13 UTC",
        data: {
          "text"  => "My Test Comment",
          "board" => { "id" => "526d8e130a14a9d846001d96" },
          "card"  => { "id" => "526d8f19ddb279532e005259" } } })
      }

      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 suitable for local persistence" do
          subject.must_equal({
            external_comment_id: "51f9277b2822b8654f0023af",
            external_board_id:   "526d8e130a14a9d846001d96",
            external_card_id:    "526d8f19ddb279532e005259",
            external_member_id:  "5195fdb5a8c01a2318004f5d",
            date:                "2013-12-17 22:01:13 UTC",
            text:                "My Test Comment",
          })
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
troo-0.0.7 test/lib/troo/external/comment_adaptor_test.rb
troo-0.0.6 test/lib/troo/external/comment_adaptor_test.rb
troo-0.0.5 test/lib/troo/external/comment_adaptor_test.rb
troo-0.0.4 test/lib/troo/external/comment_adaptor_test.rb
troo-0.0.3 test/lib/troo/external/comment_adaptor_test.rb
troo-0.0.2 test/lib/troo/external/comment_adaptor_test.rb