Class: Pact::Provider::State::ProviderState

Inherits:
Object
  • Object
show all
Extended by:
DSL
Defined in:
lib/pact/provider/state/provider_state.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, namespace, &block) ⇒ ProviderState

Returns a new instance of ProviderState.



74
75
76
77
78
79
80
# File 'lib/pact/provider/state/provider_state.rb', line 74

def initialize name, namespace, &block
  @name = name
  @namespace = namespace
  @set_up_defined = false
  @tear_down_defined = false
  @no_op_defined = false
end

Instance Attribute Details

#nameObject

Returns the value of attribute name.



69
70
71
# File 'lib/pact/provider/state/provider_state.rb', line 69

def name
  @name
end

#namespaceObject

Returns the value of attribute namespace.



70
71
72
# File 'lib/pact/provider/state/provider_state.rb', line 70

def namespace
  @namespace
end

Instance Method Details

#finalizeObject



101
102
103
# File 'lib/pact/provider/state/provider_state.rb', line 101

def finalize
  validate
end

#registerObject



96
97
98
99
# File 'lib/pact/provider/state/provider_state.rb', line 96

def register
  ProviderStates.register(namespaced(name), self)
  self
end

#register_no_opObject



115
116
117
# File 'lib/pact/provider/state/provider_state.rb', line 115

def register_no_op
  @no_op_defined = true
end

#register_set_up(&block) ⇒ Object



105
106
107
108
# File 'lib/pact/provider/state/provider_state.rb', line 105

def register_set_up &block
  @set_up_block = block
  @set_up_defined = true
end

#register_tear_down(&block) ⇒ Object



110
111
112
113
# File 'lib/pact/provider/state/provider_state.rb', line 110

def register_tear_down &block
  @tear_down_block = block
  @tear_down_defined = true
end

#set_up(params = {}) ⇒ Object



119
120
121
122
123
124
# File 'lib/pact/provider/state/provider_state.rb', line 119

def set_up params = {}
  if @set_up_block
    include_provider_state_configured_modules
    instance_exec params, &@set_up_block
  end
end

#tear_down(params = {}) ⇒ Object



126
127
128
129
130
131
# File 'lib/pact/provider/state/provider_state.rb', line 126

def tear_down params = {}
  if @tear_down_block
    include_provider_state_configured_modules
    instance_exec params, &@tear_down_block
  end
end