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.



211
212
213
# File 'lib/spikard/testing.rb', line 211

def initialize(native_sse)
  @native_sse = native_sse
end

Instance Method Details

#bodyObject



215
216
217
# File 'lib/spikard/testing.rb', line 215

def body
  @native_sse.body
end

#eventsObject



219
220
221
# File 'lib/spikard/testing.rb', line 219

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

#events_as_jsonObject



223
224
225
226
227
228
229
# File 'lib/spikard/testing.rb', line 223

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