summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrpereira2 <rpereira@gitlab.com>2019-04-04 16:14:08 +0530
committerPeter Leitzen <pleitzen@gitlab.com>2019-04-04 22:22:46 +0200
commit5dd6e752c0c3d572c645ac56a79c6c5a3fbd5157 (patch)
tree3f6d3542c57125751ed9cc21aa2aa354b0da816a
parent833206abf833b0c43e35d97b3f2fea98d91d5572 (diff)
downloadgitlab-ce-58375-proxy-service.tar.gz
Some code improvements58375-proxy-service
- Use strong_memoize for prometheus_adapter since it can be nil in some cases. - Do not phrase spec descriptions with 'should'.
-rw-r--r--app/services/prometheus/proxy_service.rb5
-rw-r--r--spec/services/prometheus/proxy_service_spec.rb4
2 files changed, 6 insertions, 3 deletions
diff --git a/app/services/prometheus/proxy_service.rb b/app/services/prometheus/proxy_service.rb
index cadfe59b900..c5d2b84878b 100644
--- a/app/services/prometheus/proxy_service.rb
+++ b/app/services/prometheus/proxy_service.rb
@@ -3,6 +3,7 @@
module Prometheus
class ProxyService < BaseService
include ReactiveCaching
+ include Gitlab::Utils::StrongMemoize
self.reactive_cache_key = ->(service) { service.cache_key }
self.reactive_cache_lease_timeout = 30.seconds
@@ -91,7 +92,9 @@ module Prometheus
end
def prometheus_adapter
- @prometheus_adapter ||= @proxyable.prometheus_adapter
+ strong_memoize(:prometheus_adapter) do
+ @proxyable.prometheus_adapter
+ end
end
def prometheus_client_wrapper
diff --git a/spec/services/prometheus/proxy_service_spec.rb b/spec/services/prometheus/proxy_service_spec.rb
index 3e2eea12d95..4bdb20de4c9 100644
--- a/spec/services/prometheus/proxy_service_spec.rb
+++ b/spec/services/prometheus/proxy_service_spec.rb
@@ -48,7 +48,7 @@ describe Prometheus::ProxyService do
allow(environment).to receive(:prometheus_adapter).and_return(nil)
end
- it 'should return error' do
+ it 'returns error' do
expect(subject.execute).to eq(
status: :error,
message: 'No prometheus server found',
@@ -63,7 +63,7 @@ describe Prometheus::ProxyService do
allow(prometheus_adapter).to receive(:can_query?).and_return(false)
end
- it 'should return error' do
+ it 'returns error' do
expect(subject.execute).to eq(
status: :error,
message: 'No prometheus server found',