Module: ConvenientService::RSpec::Helpers::StubService

Included in:
ConvenientService::RSpec::Helpers
Defined in:
lib/convenient_service/rspec/helpers/stub_service.rb

Instance Method Summary collapse

Instance Method Details

#return_errorConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultMock



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

def return_error
  ConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultMock.new(status: :error)
end

#return_failureConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultMock



98
99
100
# File 'lib/convenient_service/rspec/helpers/stub_service.rb', line 98

def return_failure
  ConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultMock.new(status: :failure)
end

#return_result(status) ⇒ ConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultMock



84
85
86
# File 'lib/convenient_service/rspec/helpers/stub_service.rb', line 84

def return_result(status)
  ConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultMock.new(status: status)
end

#return_result_mockConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultUnmock



112
113
114
# File 'lib/convenient_service/rspec/helpers/stub_service.rb', line 112

def return_result_mock
  ConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultUnmock.new
end

#return_successConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultMock



91
92
93
# File 'lib/convenient_service/rspec/helpers/stub_service.rb', line 91

def return_success
  ConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ResultMock.new(status: :success)
end

#stub_service(service_class) ⇒ ConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ServiceStub

Stubs service if it was NOT stubbed before, otherwise - overrides the previous stub.

Examples:

Unstub service with any arguments.

class Service
  include ConvenientService::Standard::Config

  def result
    success
  end
end

RSpec.describe Service do
  include ConvenientService::RSpec::Helpers::StubService
  include ConvenientService::RSpec::Matchers::Results

  it "works" do
    stub_service(Service).to return_error.with_code(:custom_code)

    expect(Service).to be_error.with_code(:custom_code)
  end
end

Parameters:

Returns:

Since:

  • 1.0.0



41
42
43
# File 'lib/convenient_service/rspec/helpers/stub_service.rb', line 41

def stub_service(service_class)
  service_class.stub_result
end

#unstub_service(service_class) ⇒ ConvenientService::Service::Plugins::CanHaveStubbedResults::Entities::ServiceUnstub

Unstubs service if it was stubbed before, otherwise - does nothing.

Examples:

Unstub service with any arguments.

class Service
  include ConvenientService::Standard::Config

  def result
    success
  end
end

RSpec.describe Service do
  include ConvenientService::RSpec::Helpers::StubService
  include ConvenientService::RSpec::Matchers::Results

  it "works" do
    stub_service(Service).to return_error.with_code(:custom_code)

    unstub_service(Service).to return_result_mock

    expect(Service).to be_success.without_data
  end
end

Parameters:

Returns:

Since:

  • 1.0.0



76
77
78
# File 'lib/convenient_service/rspec/helpers/stub_service.rb', line 76

def unstub_service(service_class)
  service_class.unstub_result
end