class Cucumber::Messages::ExternalAttachment

#
A formatter or other consumer of messages may replace an Attachment with an ExternalAttachment if it makes sense to do so.
only a URL reference is stored.
on the filesystem and should not be loaded into memory. Instead of embedding the content,
This message type is used for large attachments (e.g., video files) that are already
Represents an attachment that is stored externally rather than embedded in the message stream.
#
Represents the ExternalAttachment message in Cucumber’s message protocol.
#

def self.from_h(hash)

#
Cucumber::Messages::ExternalAttachment.from_h(some_hash) # => #

corresponding snake_cased attributes.
If the hash keys are camelCased, they are properly assigned to the
Returns a new ExternalAttachment from the given hash.
#
def self.from_h(hash)
  return nil if hash.nil?
  new(
    url: hash[:url],
    media_type: hash[:mediaType],
    test_case_started_id: hash[:testCaseStartedId],
    test_step_id: hash[:testStepId],
    test_run_hook_started_id: hash[:testRunHookStartedId],
    timestamp: Timestamp.from_h(hash[:timestamp])
  )
end

def initialize(

def initialize(
  url: '',
  media_type: '',
  test_case_started_id: nil,
  test_step_id: nil,
  test_run_hook_started_id: nil,
  timestamp: nil
)
  @url = url
  @media_type = media_type
  @test_case_started_id = test_case_started_id
  @test_step_id = test_step_id
  @test_run_hook_started_id = test_run_hook_started_id
  @timestamp = timestamp
  super()
end