1
1
# encoding: UTF-8
2
+ # frozen_string_literal: true
3
+
2
4
require 'rest-client'
3
5
require 'logging_factory'
4
6
require_relative './model/times'
@@ -24,8 +26,8 @@ class AbstractClient
24
26
attr_accessor :logger
25
27
26
28
def initialize ( host , port )
27
- fail 'Cannot instantiate AbstractClient class. You must subclass it.' if self . class == AbstractClient
28
- fail 'Host/port must not be nil' unless host && port
29
+ raise 'Cannot instantiate AbstractClient class. You must subclass it.' if self . class == AbstractClient
30
+ raise 'Host/port must not be nil' unless host && port
29
31
protocol = ( 'https' if port == 443 ) || 'http'
30
32
@base = RestClient ::Resource . new ( "#{ protocol } ://#{ host } :#{ port } " , headers : { 'Content-Type' => 'application/json' } )
31
33
@logger = ::LoggingFactory ::DEFAULT_FACTORY . log ( self . class )
@@ -34,7 +36,7 @@ def initialize(host, port)
34
36
# Clear all expectations with the given request
35
37
# @param request [Request] the request to use to clear an expectation
36
38
# @return [Object] the response from the clear action
37
- def clear ( request )
39
+ def clear ( request ) # rubocop:disable Metrics/AbcSize
38
40
request = camelized_hash ( HTTP_REQUEST => Request . new ( symbolize_keys ( request ) ) )
39
41
40
42
logger . debug ( "Clearing expectation with request: #{ request } " )
@@ -61,7 +63,7 @@ def reset
61
63
# Retrieve the list of requests that have been processed by the server
62
64
# @param request [Request] to filter requests
63
65
# @return [Object] the list of responses processed by the server
64
- def retrieve ( request = nil )
66
+ def retrieve ( request = nil ) # rubocop:disable Metrics/AbcSize
65
67
request = request ? camelized_hash ( HTTP_REQUEST => Request . new ( symbolize_keys ( request ) ) ) : { }
66
68
67
69
logger . debug ( 'Retrieving request list from mockserver' )
@@ -95,7 +97,7 @@ def dump_log(request = nil, java = false)
95
97
# @param request [Request] to filter requests
96
98
# @param times [Times] expected number of times
97
99
# @return [Object] the list of responses processed by the server that match the request
98
- def verify ( request , times = exactly ( 1 ) )
100
+ def verify ( request , times = exactly ( 1 ) ) # rubocop:disable Metrics/AbcSize
99
101
logger . debug ( 'Sending query for verify to mockserver' )
100
102
results = retrieve ( request )
101
103
@@ -105,7 +107,7 @@ def verify(request, times = exactly(1))
105
107
is_exact = !times . unlimited
106
108
107
109
fulfilled = is_exact ? ( num_times == results . size ) : ( num_times <= results . size )
108
- fail "Expected request to be present: [#{ num_times } ] (#{ is_exact ? 'exactly' : 'at least' } ). But found: [#{ results . size } ]" unless fulfilled
110
+ raise "Expected request to be present: [#{ num_times } ] (#{ is_exact ? 'exactly' : 'at least' } ). But found: [#{ results . size } ]" unless fulfilled
109
111
results
110
112
end
111
113
end
0 commit comments