require_relative "../../../test_helper" module Troo module External describe MemberAdaptor do let(:described_class) { MemberAdaptor } let(:resource) { OpenStruct.new({ id: "5195fdb5a8c01a2318004f5d", username: "gavinlaking1", email: "gavinlaking@gmail.com", full_name: "Gavin Laking", initials: "GL", avatar_id: "some_avatar_id", bio: "some bio", url: "http://www.gavinlaking.name/" }) } 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_member_id: "5195fdb5a8c01a2318004f5d", username: "gavinlaking1", email: "gavinlaking@gmail.com", full_name: "Gavin Laking", initials: "GL", avatar_id: "some_avatar_id", bio: "some bio", url: "http://www.gavinlaking.name/", }) end end end end end