Sha256: b9bf2e3a7c47acf9f59f7454e5a1964d1f3e3dc59ed8f534ca1ab7abbee5ccd3
Contents?: true
Size: 1.34 KB
Versions: 2
Compression:
Stored size: 1.34 KB
Contents
# frozen_string_literal: true module TwilioBase module Fake module Chat class Channel Channel = Struct.new(:attrs) do def friendly_name attrs[:friendly_name] end def attributes attrs.dig(:attributes) end def messages TwilioBase::Fake::Chat::Message.new end def members TwilioBase::Fake::Chat::Member.new end def sid @sid ||= FactoryBot.generate(:channel_sid) end def delete TwilioBase::Fake::Chat::Channel.channels.pop end def update(update_attrs) attrs.merge! update_attrs end end cattr_accessor :channels self.channels = [] def initialize(channel_sid = nil) self.channel_sid = channel_sid end def create(attrs) self.class.channels << Channel.new(attrs) channels.last end def fetch raise ArgumentError unless matched_channel? self.class.channels.last end private attr_accessor :channel_sid def matched_channel? self.class.channels.detect do |channel| channel.sid == channel_sid end.present? end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
twilio_base-1.11.1101 | spec/support/twilio_base/fake/chat/channel.rb |
twilio_base-1.11.11 | spec/support/twilio_base/fake/chat/channel.rb |