From ffedc52eaa33a7a31d3a7b4893387e81163a3d5f Mon Sep 17 00:00:00 2001 From: Pawel Chojnacki Date: Mon, 5 Jun 2017 20:11:22 +0200 Subject: [PATCH] Cleanup Additional Metrics tests --- ...dditional_metrics_deployment_query_spec.rb | 8 ----- .../queries/additional_metrics_query_spec.rb | 1 - .../queries/matched_metrics_query_spec.rb | 12 ++++++- .../additional_metrics_query_helper.rb | 31 ------------------- .../additional_metrics_shared_examples.rb | 12 +++++-- .../matched_metrics_query_helper.rb | 24 -------------- 6 files changed, 20 insertions(+), 68 deletions(-) delete mode 100644 spec/support/prometheus/additional_metrics_query_helper.rb delete mode 100644 spec/support/prometheus/matched_metrics_query_helper.rb diff --git a/spec/lib/gitlab/prometheus/queries/additional_metrics_deployment_query_spec.rb b/spec/lib/gitlab/prometheus/queries/additional_metrics_deployment_query_spec.rb index 93a9ce38d80..836f2be629f 100644 --- a/spec/lib/gitlab/prometheus/queries/additional_metrics_deployment_query_spec.rb +++ b/spec/lib/gitlab/prometheus/queries/additional_metrics_deployment_query_spec.rb @@ -1,22 +1,14 @@ require 'spec_helper' describe Gitlab::Prometheus::Queries::AdditionalMetricsDeploymentQuery, lib: true do - include Prometheus::AdditionalMetricsQueryHelper include Prometheus::MetricBuilders - let(:metric_group_class) { Gitlab::Prometheus::MetricGroup } - let(:metric_class) { Gitlab::Prometheus::Metric } - let(:client) { double('prometheus_client') } let(:environment) { create(:environment, slug: 'environment-slug') } let(:deployment) { create(:deployment, environment: environment) } subject(:query_result) { described_class.new(client).query(deployment.id) } - around do |example| - Timecop.freeze { example.run } - end - include_examples 'additional metrics query' do it 'queries using specific time' do expect(client).to receive(:query_range).with(anything, diff --git a/spec/lib/gitlab/prometheus/queries/additional_metrics_query_spec.rb b/spec/lib/gitlab/prometheus/queries/additional_metrics_query_spec.rb index e5db1326597..6fbd2fd17d6 100644 --- a/spec/lib/gitlab/prometheus/queries/additional_metrics_query_spec.rb +++ b/spec/lib/gitlab/prometheus/queries/additional_metrics_query_spec.rb @@ -1,7 +1,6 @@ require 'spec_helper' describe Gitlab::Prometheus::Queries::AdditionalMetricsQuery, lib: true do - include Prometheus::AdditionalMetricsQueryHelper include Prometheus::MetricBuilders let(:client) { double('prometheus_client') } diff --git a/spec/lib/gitlab/prometheus/queries/matched_metrics_query_spec.rb b/spec/lib/gitlab/prometheus/queries/matched_metrics_query_spec.rb index 34f11205878..2395675a247 100644 --- a/spec/lib/gitlab/prometheus/queries/matched_metrics_query_spec.rb +++ b/spec/lib/gitlab/prometheus/queries/matched_metrics_query_spec.rb @@ -1,12 +1,22 @@ require 'spec_helper' describe Gitlab::Prometheus::Queries::MatchedMetricsQuery, lib: true do - include Prometheus::MatchedMetricsQueryHelper include Prometheus::MetricBuilders let(:metric_group_class) { Gitlab::Prometheus::MetricGroup } let(:metric_class) { Gitlab::Prometheus::Metric } + def series_info_with_environment(*more_metrics) + %w{metric_a metric_b}.concat(more_metrics).map { |metric_name| { '__name__' => metric_name, 'environment' => '' } } + end + let(:metric_names) { %w{metric_a metric_b} } + let(:series_info_without_environment) do + [{ '__name__' => 'metric_a' }, + { '__name__' => 'metric_b' }] + end + let(:partialy_empty_series_info) { [{ '__name__' => 'metric_a', 'environment' => '' }] } + let(:empty_series_info) { [] } + let(:client) { double('prometheus_client') } subject { described_class.new(client) } diff --git a/spec/support/prometheus/additional_metrics_query_helper.rb b/spec/support/prometheus/additional_metrics_query_helper.rb deleted file mode 100644 index 84cbc24a301..00000000000 --- a/spec/support/prometheus/additional_metrics_query_helper.rb +++ /dev/null @@ -1,31 +0,0 @@ -module Prometheus - module AdditionalMetricsQueryHelper - def metric_names - %w{metric_a metric_b} - end - - def query_result - [ - { - 'metric': {}, - 'value': [ - 1488772511.004, - '0.000041021495238095323' - ] - } - ] - end - - def query_range_result - [ - { - 'metric': {}, - 'values': [ - [1488758662.506, '0.00002996364761904785'], - [1488758722.506, '0.00003090239047619091'] - ] - } - ] - end - end -end diff --git a/spec/support/prometheus/additional_metrics_shared_examples.rb b/spec/support/prometheus/additional_metrics_shared_examples.rb index 96a9e1f5049..449a53664c1 100644 --- a/spec/support/prometheus/additional_metrics_shared_examples.rb +++ b/spec/support/prometheus/additional_metrics_shared_examples.rb @@ -1,14 +1,20 @@ RSpec.shared_examples 'additional metrics query' do include Prometheus::MetricBuilders + let(:metric_group_class) { Gitlab::Prometheus::MetricGroup } + let(:metric_class) { Gitlab::Prometheus::Metric } + + let(:metric_names) { %w{metric_a metric_b} } + + let(:query_range_result) do + [{ 'metric': {}, 'values': [[1488758662.506, '0.00002996364761904785'], [1488758722.506, '0.00003090239047619091']] }] + end + before do allow(client).to receive(:label_values).and_return(metric_names) allow(metric_group_class).to receive(:all).and_return([simple_metric_group(metrics: [simple_metric])]) end - let(:metric_group_class) { Gitlab::Prometheus::MetricGroup } - let(:metric_class) { Gitlab::Prometheus::Metric } - context 'with one group where two metrics is found' do before do allow(metric_group_class).to receive(:all).and_return([simple_metric_group]) diff --git a/spec/support/prometheus/matched_metrics_query_helper.rb b/spec/support/prometheus/matched_metrics_query_helper.rb deleted file mode 100644 index 0471a78e426..00000000000 --- a/spec/support/prometheus/matched_metrics_query_helper.rb +++ /dev/null @@ -1,24 +0,0 @@ -module Prometheus - module MatchedMetricsQueryHelper - def metric_names - %w{metric_a metric_b} - end - - def series_info_with_environment(*more_metrics) - %w{metric_a metric_b}.concat(more_metrics).map { |metric_name| { '__name__' => metric_name, 'environment' => '' } } - end - - def series_info_without_environment - [{ '__name__' => 'metric_a' }, - { '__name__' => 'metric_b' }] - end - - def partialy_empty_series_info - [{ '__name__' => 'metric_a', 'environment' => '' }] - end - - def empty_series_info - [] - end - end -end