Class: Shokkenki::Provider::Model::Interaction

Inherits:
Object
  • Object
show all
Defined in:
lib/shokkenki/provider/model/interaction.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(label, request, response, required_fixtures) ⇒ Interaction

Returns a new instance of Interaction.



10
11
12
13
14
15
# File 'lib/shokkenki/provider/model/interaction.rb', line 10

def initialize label, request, response, required_fixtures
  @label = label
  @request = request
  @response = response
  @required_fixtures = required_fixtures
end

Instance Attribute Details

#labelObject (readonly)

Returns the value of attribute label.



8
9
10
# File 'lib/shokkenki/provider/model/interaction.rb', line 8

def label
  @label
end

#requestObject (readonly)

Returns the value of attribute request.



8
9
10
# File 'lib/shokkenki/provider/model/interaction.rb', line 8

def request
  @request
end

#required_fixturesObject (readonly)

Returns the value of attribute required_fixtures.



8
9
10
# File 'lib/shokkenki/provider/model/interaction.rb', line 8

def required_fixtures
  @required_fixtures
end

#responseObject (readonly)

Returns the value of attribute response.



8
9
10
# File 'lib/shokkenki/provider/model/interaction.rb', line 8

def response
  @response
end

Class Method Details

.from_hash(hash) ⇒ Object



17
18
19
20
21
22
23
24
# File 'lib/shokkenki/provider/model/interaction.rb', line 17

def self.from_hash hash
  new(
    hash[:label],
    Shokkenki::Term::TermFactory.from_json(hash[:request]),
    Shokkenki::Term::TermFactory.from_json(hash[:response]),
    hash[:fixtures].map {|f| FixtureRequirement.from_hash f }
  )
end