diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-04-14 18:09:04 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-04-14 18:09:04 +0300 |
commit | a3dfd311f4660fc81e929058abd6e136ac884ed3 (patch) | |
tree | 4d7087cac6e2ca89df3adea98f92b9eddffa7790 /spec/lib/generators | |
parent | 7f408a3831590a1f98a1e1a04b63acba8937e36b (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/lib/generators')
-rw-r--r-- | spec/lib/generators/gitlab/usage_metric_definition/redis_hll_generator_spec.rb | 16 | ||||
-rw-r--r-- | spec/lib/generators/gitlab/usage_metric_definition_generator_spec.rb | 68 |
2 files changed, 14 insertions, 70 deletions
diff --git a/spec/lib/generators/gitlab/usage_metric_definition/redis_hll_generator_spec.rb b/spec/lib/generators/gitlab/usage_metric_definition/redis_hll_generator_spec.rb index b6ec5bd21b7..021fb8f5f58 100644 --- a/spec/lib/generators/gitlab/usage_metric_definition/redis_hll_generator_spec.rb +++ b/spec/lib/generators/gitlab/usage_metric_definition/redis_hll_generator_spec.rb @@ -3,6 +3,8 @@ require 'generator_helper' RSpec.describe Gitlab::UsageMetricDefinition::RedisHllGenerator do + include UsageDataHelpers + let(:category) { 'test_category' } let(:event) { 'i_test_event' } let(:args) { [category, event] } @@ -13,19 +15,7 @@ RSpec.describe Gitlab::UsageMetricDefinition::RedisHllGenerator do before do stub_const("#{Gitlab::UsageMetricDefinitionGenerator}::TOP_LEVEL_DIR", temp_dir) # Stub Prometheus requests from Gitlab::Utils::UsageData - stub_request(:get, %r{^https?://::1:9090/-/ready}) - .to_return( - status: 200, - body: [{}].to_json, - headers: { 'Content-Type' => 'application/json' } - ) - - stub_request(:get, %r{^https?://::1:9090/api/v1/query\?query=.*}) - .to_return( - status: 200, - body: [{}].to_json, - headers: { 'Content-Type' => 'application/json' } - ) + stub_prometheus_queries end it 'creates metric definition files' do diff --git a/spec/lib/generators/gitlab/usage_metric_definition_generator_spec.rb b/spec/lib/generators/gitlab/usage_metric_definition_generator_spec.rb index 52dc6c96ad1..f8c055ae111 100644 --- a/spec/lib/generators/gitlab/usage_metric_definition_generator_spec.rb +++ b/spec/lib/generators/gitlab/usage_metric_definition_generator_spec.rb @@ -12,19 +12,7 @@ RSpec.describe Gitlab::UsageMetricDefinitionGenerator do before do stub_const("#{described_class}::TOP_LEVEL_DIR", temp_dir) # Stub Prometheus requests from Gitlab::Utils::UsageData - stub_request(:get, 'https://::1:9090/-/ready') - .to_return( - status: 200, - body: [{}].to_json, - headers: { 'Content-Type' => 'application/json' } - ) - - stub_request(:get, %r{^https://::1:9090/api/v1/query\?query=.*}) - .to_return( - status: 200, - body: [{}].to_json, - headers: { 'Content-Type' => 'application/json' } - ) + stub_prometheus_queries end after do @@ -32,38 +20,20 @@ RSpec.describe Gitlab::UsageMetricDefinitionGenerator do end describe 'Creating metric definition file' do - let(:sample_metric) { load_sample_metric_definition } - # Stub version so that `milestone` key remains constant between releases to prevent flakiness. before do stub_const('Gitlab::VERSION', '13.9.0') allow(::Gitlab::Usage::Metrics::NamesSuggestions::Generator).to receive(:generate).and_return('test metric name') end - context 'with product_intelligence_metrics_names_suggestions feature ON' do - let(:sample_metric) { load_sample_metric_definition(filename: 'sample_metric_with_name_suggestions.yml') } - - it 'creates a metric definition file using the template' do - stub_feature_flags(product_intelligence_metrics_names_suggestions: true) - - described_class.new([key_path], { 'dir' => dir }).invoke_all - - metric_definition_path = Dir.glob(File.join(temp_dir, 'metrics/counts_7d/*_test_metric.yml')).first - - expect(YAML.safe_load(File.read(metric_definition_path))).to eq(sample_metric) - end - end - - context 'with product_intelligence_metrics_names_suggestions feature OFF' do - it 'creates a metric definition file using the template' do - stub_feature_flags(product_intelligence_metrics_names_suggestions: false) + let(:sample_metric) { load_sample_metric_definition(filename: 'sample_metric_with_name_suggestions.yml') } - described_class.new([key_path], { 'dir' => dir }).invoke_all + it 'creates a metric definition file using the template' do + described_class.new([key_path], { 'dir' => dir }).invoke_all - metric_definition_path = Dir.glob(File.join(temp_dir, 'metrics/counts_7d/*_test_metric.yml')).first + metric_definition_path = Dir.glob(File.join(temp_dir, 'metrics/counts_7d/*_test_metric.yml')).first - expect(YAML.safe_load(File.read(metric_definition_path))).to eq(sample_metric) - end + expect(YAML.safe_load(File.read(metric_definition_path))).to eq(sample_metric) end end @@ -104,28 +74,12 @@ RSpec.describe Gitlab::UsageMetricDefinitionGenerator do end describe 'Name suggestions' do - context 'with product_intelligence_metrics_names_suggestions feature ON' do - it 'adds name key to metric definition' do - stub_feature_flags(product_intelligence_metrics_names_suggestions: true) - - expect(::Gitlab::Usage::Metrics::NamesSuggestions::Generator).to receive(:generate).and_return('some name') - described_class.new([key_path], { 'dir' => dir }).invoke_all - metric_definition_path = Dir.glob(File.join(temp_dir, 'metrics/counts_7d/*_test_metric.yml')).first - - expect(YAML.safe_load(File.read(metric_definition_path))).to include("name" => "some name") - end - end - - context 'with product_intelligence_metrics_names_suggestions feature OFF' do - it 'adds name key to metric definition' do - stub_feature_flags(product_intelligence_metrics_names_suggestions: false) + it 'adds name key to metric definition' do + expect(::Gitlab::Usage::Metrics::NamesSuggestions::Generator).to receive(:generate).and_return('some name') + described_class.new([key_path], { 'dir' => dir }).invoke_all + metric_definition_path = Dir.glob(File.join(temp_dir, 'metrics/counts_7d/*_test_metric.yml')).first - expect(::Gitlab::Usage::Metrics::NamesSuggestions::Generator).not_to receive(:generate) - described_class.new([key_path], { 'dir' => dir }).invoke_all - metric_definition_path = Dir.glob(File.join(temp_dir, 'metrics/counts_7d/*_test_metric.yml')).first - - expect(YAML.safe_load(File.read(metric_definition_path)).keys).not_to include(:name) - end + expect(YAML.safe_load(File.read(metric_definition_path))).to include("name" => "some name") end end end |