From 9a8093da816c96e2bab9812c2f00ef276270793b Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 29 Aug 2023 15:10:34 +0000 Subject: Add latest changes from gitlab-org/gitlab@master --- .../lib/gitlab/schema/validation/inconsistency.rb | 11 +++++++++++ .../gitlab/schema/validation/inconsistency_spec.rb | 19 ++++++++++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) (limited to 'gems') diff --git a/gems/gitlab-schema-validation/lib/gitlab/schema/validation/inconsistency.rb b/gems/gitlab-schema-validation/lib/gitlab/schema/validation/inconsistency.rb index 13799b8b9ff..503e05f12e9 100644 --- a/gems/gitlab-schema-validation/lib/gitlab/schema/validation/inconsistency.rb +++ b/gems/gitlab-schema-validation/lib/gitlab/schema/validation/inconsistency.rb @@ -36,6 +36,17 @@ module Gitlab Diffy::Diff.new(structure_sql_statement, database_statement) end + def to_h + { + type: type, + object_type: object_type, + table_name: table_name, + object_name: object_name, + structure_sql_statement: structure_sql_statement, + database_statement: database_statement + } + end + def display <<~MSG #{'-' * 54} diff --git a/gems/gitlab-schema-validation/spec/lib/gitlab/schema/validation/inconsistency_spec.rb b/gems/gitlab-schema-validation/spec/lib/gitlab/schema/validation/inconsistency_spec.rb index 268bb4556e3..300383d5909 100644 --- a/gems/gitlab-schema-validation/spec/lib/gitlab/schema/validation/inconsistency_spec.rb +++ b/gems/gitlab-schema-validation/spec/lib/gitlab/schema/validation/inconsistency_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -RSpec.describe Gitlab::Schema::Validation::Inconsistency do +RSpec.describe Gitlab::Schema::Validation::Inconsistency, feature_category: :database do let(:validator) { Gitlab::Schema::Validation::Validators::DifferentDefinitionIndexes } let(:database_statement) { 'CREATE INDEX index_name ON public.achievements USING btree (namespace_id)' } @@ -44,6 +44,23 @@ RSpec.describe Gitlab::Schema::Validation::Inconsistency do end end + describe '#to_h' do + let(:result) do + { + database_statement: inconsistency.database_statement, + object_name: inconsistency.object_name, + object_type: inconsistency.object_type, + structure_sql_statement: inconsistency.structure_sql_statement, + table_name: inconsistency.table_name, + type: inconsistency.type + } + end + + it 'returns the to_h of the validator' do + expect(inconsistency.to_h).to eq(result) + end + end + describe '#table_name' do it 'returns the table name' do expect(inconsistency.table_name).to eq('achievements') -- cgit v1.2.3