class Messaging::Fixtures::Message
Constants
- Error
Public Class Methods
build(message, source_message=nil, print_title_context: nil, title_context_name: nil, detail_message_class: nil, &test_block)
click to toggle source
# File lib/messaging/fixtures/message.rb, line 53 def self.build(message, source_message=nil, print_title_context: nil, title_context_name: nil, detail_message_class: nil, &test_block) new(message, source_message, print_title_context, title_context_name, detail_message_class, test_block) end
Public Instance Methods
assert_attribute_value(name, value)
click to toggle source
# File lib/messaging/fixtures/message.rb, line 139 def assert_attribute_value(name, value) context "Attribute Value" do attribute_value = message.public_send(name) test "#{name}" do detail "Attribute Value: #{attribute_value.inspect}" detail "Compare Value: #{value.inspect}" assert(attribute_value == value) end end end
assert_attributes_assigned(attribute_names=nil)
click to toggle source
# File lib/messaging/fixtures/message.rb, line 92 def assert_attributes_assigned(attribute_names=nil) fixture( Schema::Fixtures::Assignment, message, attribute_names, print_title_context: false, attributes_context_name: "Attributes Assigned" ) end
Also aliased as: assert_all_attributes_assigned
assert_attributes_copied(attribute_names=nil)
click to toggle source
# File lib/messaging/fixtures/message.rb, line 103 def assert_attributes_copied(attribute_names=nil) if source_message.nil? test "Source message not nil" do detail "Source Message: nil" refute(source_message.nil?) end return end fixture( Schema::Fixtures::Equality, source_message, message, attribute_names, ignore_class: true, print_title_context: false, attributes_context_name: "Attributes Copied: #{source_message_type} => #{message_type}" ) end
assert_follows()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 132 def assert_follows metadata = message.metadata source_metadata = source_message&.metadata fixture(Follows, metadata, source_metadata) end
assert_metadata(&test_block)
click to toggle source
# File lib/messaging/fixtures/message.rb, line 123 def assert_metadata(&test_block) fixture( Metadata, message.metadata, source_message&.metadata, &test_block ) end
call()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 57 def call if print_title_context? context "#{title_context_name}" do call! end else call! end end
call!()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 67 def call! if test_block.nil? raise Error, "Message fixture must be executed with a block" end if message.nil? test "Not nil" do detail "Message: nil" detail "Remaining message tests are skipped" refute(message.nil?) end return end if detail_message_class? detail "Message Class: #{message_class.name}" end if not source_message.nil? detail "Source Message Class: #{source_message_class.name}" end test_block.call(self) end
detail_message_class?()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 44 def detail_message_class? if @detail_message_class.nil? @detail_message_class = true end @detail_message_class end
message_class()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 9 def message_class message.class end
message_type()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 13 def message_type message_class.name.split('::').last end
print_title_context?()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 25 def print_title_context? if @print_title_context.nil? @print_title_context = true end @print_title_context end
source_message_class()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 17 def source_message_class source_message.class end
source_message_type()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 21 def source_message_type source_message_class.name.split('::').last end
title_context_name()
click to toggle source
# File lib/messaging/fixtures/message.rb, line 32 def title_context_name if @title_context_name.nil? @title_context_name = "Message" if not message.nil? @title_context_name = "#{@title_context_name}: #{message_type}" end end @title_context_name end