Class: Spikard::Testing::SseStream

Inherits:
Object
  • Object
show all
Defined in:
lib/spikard/testing.rb

Overview

SSE stream wrapper

Instance Method Summary collapse

Constructor Details

#initialize(native_sse) ⇒ SseStream

Returns a new instance of SseStream.



142
143
144
# File 'lib/spikard/testing.rb', line 142

def initialize(native_sse)
  @native_sse = native_sse
end

Instance Method Details

#bodyObject



146
147
148
# File 'lib/spikard/testing.rb', line 146

def body
  @native_sse.body
end

#eventsObject



150
151
152
# File 'lib/spikard/testing.rb', line 150

def events
  parsed_chunks.map { |chunk| InlineSseEvent.new(chunk) }
end

#events_as_jsonObject



154
155
156
157
158
159
160
# File 'lib/spikard/testing.rb', line 154

def events_as_json
  parsed_chunks.filter_map do |chunk|
    JSON.parse(chunk)
  rescue JSON::ParserError
    nil
  end
end