Class: ConvenientService::RSpec::Helpers::Classes::StubService::Entities::ResultSpec

Inherits:
Object
  • Object
show all
Defined in:
lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb

Instance Method Summary collapse

Constructor Details

#initialize(status:, service_class: nil, chain: {}) ⇒ void

Parameters:

  • status (Symbol)
  • service_class (Class) (defaults to: nil)
  • chain (Hash) (defaults to: {})


25
26
27
28
29
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 25

def initialize(status:, service_class: nil, chain: {})
  @status = status
  @service_class = service_class
  @chain = chain
end

Instance Method Details

#==(other) ⇒ Boolean?

Parameters:

  • other (Object)

    Can be any type.

Returns:

  • (Boolean, nil)


113
114
115
116
117
118
119
120
121
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 113

def ==(other)
  return unless other.instance_of?(self.class)

  return false if status != other.status
  return false if service_class != other.service_class
  return false if chain != other.chain

  true
end

#and_code(code) ⇒ ConvenientService::RSpec::Helpers::Classes::StubService::Entities::ResultSpec



93
94
95
96
97
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 93

def and_code(code)
  chain[:code] = code

  self
end

#and_data(data) ⇒ ConvenientService::RSpec::Helpers::Classes::StubService::Entities::ResultSpec



73
74
75
76
77
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 73

def and_data(data)
  chain[:data] = data

  self
end

#and_message(message) ⇒ ConvenientService::RSpec::Helpers::Classes::StubService::Entities::ResultSpec



83
84
85
86
87
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 83

def and_message(message)
  chain[:message] = message

  self
end

#calculate_valueObject

Returns:

  • (Object)


105
106
107
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 105

def calculate_value
  service_class.__send__(status, **kwargs).copy(overrides: {kwargs: {stubbed_result: true}})
end

#for(service_class) ⇒ ConvenientService::RSpec::Helpers::Classes::StubService::Entities::ResultSpec



35
36
37
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 35

def for(service_class)
  self.class.new(status: status, service_class: service_class, chain: chain)
end

#with_code(code) ⇒ ConvenientService::RSpec::Helpers::Classes::StubService::Entities::ResultSpec



63
64
65
66
67
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 63

def with_code(code)
  chain[:code] = code

  self
end

#with_data(data) ⇒ ConvenientService::RSpec::Helpers::Classes::StubService::Entities::ResultSpec



43
44
45
46
47
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 43

def with_data(data)
  chain[:data] = data

  self
end

#with_message(message) ⇒ ConvenientService::RSpec::Helpers::Classes::StubService::Entities::ResultSpec



53
54
55
56
57
# File 'lib/convenient_service/rspec/helpers/classes/stub_service/entities/result_spec.rb', line 53

def with_message(message)
  chain[:message] = message

  self
end