diff options
Diffstat (limited to 'spec/lib/gitlab/usage/metrics/instrumentations/csv_imports_users_metric_spec.rb')
-rw-r--r-- | spec/lib/gitlab/usage/metrics/instrumentations/csv_imports_users_metric_spec.rb | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/spec/lib/gitlab/usage/metrics/instrumentations/csv_imports_users_metric_spec.rb b/spec/lib/gitlab/usage/metrics/instrumentations/csv_imports_users_metric_spec.rb new file mode 100644 index 00000000000..1f620c2502d --- /dev/null +++ b/spec/lib/gitlab/usage/metrics/instrumentations/csv_imports_users_metric_spec.rb @@ -0,0 +1,27 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe Gitlab::Usage::Metrics::Instrumentations::CsvImportsUsersMetric, feature_category: :importers do + let(:expected_value) { 3 } + let(:expected_query) { "SELECT COUNT(DISTINCT \"csv_issue_imports\".\"user_id\") FROM \"csv_issue_imports\"" } + + before_all do + import = create :issue_csv_import, created_at: 3.days.ago + create :issue_csv_import, created_at: 35.days.ago + create :issue_csv_import, created_at: 3.days.ago + create :issue_csv_import, created_at: 3.days.ago, user: import.user + end + + it_behaves_like 'a correct instrumented metric value and query', { time_frame: 'all' } + + it_behaves_like 'a correct instrumented metric value and query', { time_frame: '28d' } do + let(:expected_value) { 2 } + let(:start) { 30.days.ago.to_fs(:db) } + let(:finish) { 2.days.ago.to_fs(:db) } + let(:expected_query) do + "SELECT COUNT(DISTINCT \"csv_issue_imports\".\"user_id\") FROM \"csv_issue_imports\" " \ + "WHERE \"csv_issue_imports\".\"created_at\" BETWEEN '#{start}' AND '#{finish}'" + end + end +end |