Sha256: 0effddf97d0cccc87ad7a8d71d036cc03d981b404ea3ee8b21ab2778b575bc27

Contents?: true

Size: 891 Bytes

Versions: 12

Compression:

Stored size: 891 Bytes

Contents

# frozen_string_literal: true

module Soaspec
  # Enables Exchange to store and retrieve variables so that one
  # exchange can make assertions based on a previous one
  module VariableStorer
    # Stores a value in the api handler that can be accessed by the provided name
    # @param [Symbol] name Name of method to use to access this value within handler
    # @param [String] value Path to value to store
    def store(name, value)
      exchange_handler.store(name, self[value])
    end

    # Retrieve the stored value from the Api Handler
    # @param [String, Symbol] name Name of value to retrieve
    # @return [Object] value from the Api Handler stored previously
    def retrieve(name)
      method = '__stored_val__' + name.to_s
      raise ArgumentError('Value not stored at ') unless exchange_handler.respond_to? method

      exchange_handler.send(method)
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
soaspec-0.3.11 lib/soaspec/exchange/variable_storer.rb
soaspec-0.3.10 lib/soaspec/exchange/variable_storer.rb
soaspec-0.3.9 lib/soaspec/exchange/variable_storer.rb
soaspec-0.3.8 lib/soaspec/exchange/variable_storer.rb
soaspec-0.3.7 lib/soaspec/exchange/variable_storer.rb
soaspec-0.3.6 lib/soaspec/exchange/variable_storer.rb
soaspec-0.3.3 lib/soaspec/exchange/variable_storer.rb
soaspec-0.3.2 lib/soaspec/exchange/variable_storer.rb
soaspec-0.3.1 lib/soaspec/exchange/variable_storer.rb
soaspec-0.2.32 lib/soaspec/exchange/variable_storer.rb
soaspec-0.2.31 lib/soaspec/exchange/variable_storer.rb
soaspec-0.2.30 lib/soaspec/exchange/variable_storer.rb