diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-03-02 18:07:42 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-03-02 18:07:42 +0000 |
commit | 7b52c7cb634ef7047d30b0337fe477bcdcedf41d (patch) | |
tree | 374ca9e908204488422046f10e340d1500780362 /spec/lib/gitlab/sidekiq_middleware | |
parent | b375c6c05fbd03aea33a9ee9f82e678bdaa8c3cc (diff) | |
download | gitlab-ce-7b52c7cb634ef7047d30b0337fe477bcdcedf41d.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/lib/gitlab/sidekiq_middleware')
-rw-r--r-- | spec/lib/gitlab/sidekiq_middleware/client_metrics_spec.rb | 29 | ||||
-rw-r--r-- | spec/lib/gitlab/sidekiq_middleware/server_metrics_spec.rb | 22 |
2 files changed, 29 insertions, 22 deletions
diff --git a/spec/lib/gitlab/sidekiq_middleware/client_metrics_spec.rb b/spec/lib/gitlab/sidekiq_middleware/client_metrics_spec.rb index daee2c0bbd0..689c7e40727 100644 --- a/spec/lib/gitlab/sidekiq_middleware/client_metrics_spec.rb +++ b/spec/lib/gitlab/sidekiq_middleware/client_metrics_spec.rb @@ -9,7 +9,7 @@ describe Gitlab::SidekiqMiddleware::ClientMetrics do let(:queue) { :test } let(:worker_class) { worker.class } let(:job) { {} } - let(:default_labels) { { queue: queue.to_s, boundary: "", external_dependencies: "no", feature_category: "", latency_sensitive: "no" } } + let(:default_labels) { { queue: queue.to_s, boundary: "", external_dependencies: "no", feature_category: "", urgency: "default" } } shared_examples "a metrics client middleware" do context "with mocked prometheus" do @@ -46,17 +46,17 @@ describe Gitlab::SidekiqMiddleware::ClientMetrics do it_behaves_like "a metrics client middleware" do let(:worker) { TestNonAttributedWorker.new } - let(:labels) { default_labels } + let(:labels) { default_labels.merge(urgency: "") } end end context "when workers are attributed" do - def create_attributed_worker_class(latency_sensitive, external_dependencies, resource_boundary, category) + def create_attributed_worker_class(urgency, external_dependencies, resource_boundary, category) klass = Class.new do include Sidekiq::Worker include WorkerAttributes - latency_sensitive_worker! if latency_sensitive + urgency urgency if urgency worker_has_external_dependencies! if external_dependencies worker_resource_boundary resource_boundary unless resource_boundary == :unknown feature_category category unless category.nil? @@ -64,17 +64,24 @@ describe Gitlab::SidekiqMiddleware::ClientMetrics do stub_const("TestAttributedWorker", klass) end - let(:latency_sensitive) { false } + let(:urgency) { nil } let(:external_dependencies) { false } let(:resource_boundary) { :unknown } let(:feature_category) { nil } - let(:worker_class) { create_attributed_worker_class(latency_sensitive, external_dependencies, resource_boundary, feature_category) } + let(:worker_class) { create_attributed_worker_class(urgency, external_dependencies, resource_boundary, feature_category) } let(:worker) { worker_class.new } - context "latency sensitive" do + context "high urgency" do it_behaves_like "a metrics client middleware" do - let(:latency_sensitive) { true } - let(:labels) { default_labels.merge(latency_sensitive: "yes") } + let(:urgency) { :high } + let(:labels) { default_labels.merge(urgency: "high") } + end + end + + context "no urgency" do + it_behaves_like "a metrics client middleware" do + let(:urgency) { :none } + let(:labels) { default_labels.merge(urgency: "none") } end end @@ -108,11 +115,11 @@ describe Gitlab::SidekiqMiddleware::ClientMetrics do context "combined" do it_behaves_like "a metrics client middleware" do - let(:latency_sensitive) { true } + let(:urgency) { :high } let(:external_dependencies) { true } let(:resource_boundary) { :cpu } let(:feature_category) { :authentication } - let(:labels) { default_labels.merge(latency_sensitive: "yes", external_dependencies: "yes", boundary: "cpu", feature_category: "authentication") } + let(:labels) { default_labels.merge(urgency: "high", external_dependencies: "yes", boundary: "cpu", feature_category: "authentication") } end end end diff --git a/spec/lib/gitlab/sidekiq_middleware/server_metrics_spec.rb b/spec/lib/gitlab/sidekiq_middleware/server_metrics_spec.rb index 65a961b34f8..47442f4ee86 100644 --- a/spec/lib/gitlab/sidekiq_middleware/server_metrics_spec.rb +++ b/spec/lib/gitlab/sidekiq_middleware/server_metrics_spec.rb @@ -11,7 +11,7 @@ describe Gitlab::SidekiqMiddleware::ServerMetrics do let(:job) { {} } let(:job_status) { :done } let(:labels_with_job_status) { labels.merge(job_status: job_status.to_s) } - let(:default_labels) { { queue: queue.to_s, boundary: "", external_dependencies: "no", feature_category: "", latency_sensitive: "no" } } + let(:default_labels) { { queue: queue.to_s, boundary: "", external_dependencies: "no", feature_category: "", urgency: "default" } } shared_examples "a metrics middleware" do context "with mocked prometheus" do @@ -130,34 +130,34 @@ describe Gitlab::SidekiqMiddleware::ServerMetrics do include Sidekiq::Worker end let(:worker) { TestNonAttributedWorker.new } - let(:labels) { default_labels } + let(:labels) { default_labels.merge(urgency: "") } it_behaves_like "a metrics middleware" end context "when workers are attributed" do - def create_attributed_worker_class(latency_sensitive, external_dependencies, resource_boundary, category) + def create_attributed_worker_class(urgency, external_dependencies, resource_boundary, category) Class.new do include Sidekiq::Worker include WorkerAttributes - latency_sensitive_worker! if latency_sensitive + urgency urgency if urgency worker_has_external_dependencies! if external_dependencies worker_resource_boundary resource_boundary unless resource_boundary == :unknown feature_category category unless category.nil? end end - let(:latency_sensitive) { false } + let(:urgency) { nil } let(:external_dependencies) { false } let(:resource_boundary) { :unknown } let(:feature_category) { nil } - let(:worker_class) { create_attributed_worker_class(latency_sensitive, external_dependencies, resource_boundary, feature_category) } + let(:worker_class) { create_attributed_worker_class(urgency, external_dependencies, resource_boundary, feature_category) } let(:worker) { worker_class.new } - context "latency sensitive" do - let(:latency_sensitive) { true } - let(:labels) { default_labels.merge(latency_sensitive: "yes") } + context "high urgency" do + let(:urgency) { :high } + let(:labels) { default_labels.merge(urgency: "high") } it_behaves_like "a metrics middleware" end @@ -191,11 +191,11 @@ describe Gitlab::SidekiqMiddleware::ServerMetrics do end context "combined" do - let(:latency_sensitive) { true } + let(:urgency) { :none } let(:external_dependencies) { true } let(:resource_boundary) { :cpu } let(:feature_category) { :authentication } - let(:labels) { default_labels.merge(latency_sensitive: "yes", external_dependencies: "yes", boundary: "cpu", feature_category: "authentication") } + let(:labels) { default_labels.merge(urgency: "none", external_dependencies: "yes", boundary: "cpu", feature_category: "authentication") } it_behaves_like "a metrics middleware" end |