Class: GraphWeaver::Testing::Replayer

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

Overview

Serves recorded responses; raises MissingRecording on unknown requests rather than silently faking.

Instance Method Summary collapse

Constructor Details

#initialize(cassette) ⇒ Replayer

Returns a new instance of Replayer.



139
140
141
# File 'lib/graph_weaver/testing/cassette.rb', line 139

def initialize(cassette)
  @cassette = cassette.is_a?(Cassette) ? cassette : Cassette.new(cassette)
end

Instance Method Details

#execute(query, variables: {}) ⇒ Object

Raises:



143
144
145
146
147
148
# File 'lib/graph_weaver/testing/cassette.rb', line 143

def execute(query, variables: {})
  entry = @cassette.lookup(query, variables)
  raise MissingRecording.new(path: @cassette.path, query:) unless entry

  entry["response"]
end