debian-mirror-gitlab/spec/lib/gitlab/config_checker/external_database_checker_spec.rb

42 lines
1.7 KiB
Ruby
Raw Normal View History

2020-05-24 23:13:21 +05:30
# frozen_string_literal: true
require 'spec_helper'
2020-07-28 23:09:34 +05:30
RSpec.describe Gitlab::ConfigChecker::ExternalDatabaseChecker do
2020-05-24 23:13:21 +05:30
describe '#check' do
subject { described_class.check }
2020-10-24 23:57:45 +05:30
context 'when database meets minimum supported version' do
2020-05-24 23:13:21 +05:30
before do
2021-12-11 22:18:48 +05:30
allow(ApplicationRecord.database).to receive(:postgresql_minimum_supported_version?).and_return(true)
2020-05-24 23:13:21 +05:30
end
it { is_expected.to be_empty }
end
2020-10-24 23:57:45 +05:30
context 'when database does not meet minimum supported version' do
2020-05-24 23:13:21 +05:30
before do
2021-12-11 22:18:48 +05:30
allow(ApplicationRecord.database).to receive(:postgresql_minimum_supported_version?).and_return(false)
2020-05-24 23:13:21 +05:30
end
2020-10-24 23:57:45 +05:30
let(:notice_deprecated_database) do
{
type: 'warning',
message: _('You are using PostgreSQL %{pg_version_current}, but PostgreSQL ' \
'%{pg_version_minimum} is required for this version of GitLab. ' \
'Please upgrade your environment to a supported PostgreSQL version, ' \
'see %{pg_requirements_url} for details.') % {
2021-12-11 22:18:48 +05:30
pg_version_current: ApplicationRecord.database.version,
2020-10-24 23:57:45 +05:30
pg_version_minimum: Gitlab::Database::MINIMUM_POSTGRES_VERSION,
pg_requirements_url: '<a href="https://docs.gitlab.com/ee/install/requirements.html#database">database requirements</a>'
}
}
2020-05-24 23:13:21 +05:30
end
2020-10-24 23:57:45 +05:30
it 'reports deprecated database notice' do
is_expected.to contain_exactly(notice_deprecated_database)
2020-07-28 23:09:34 +05:30
end
2020-05-24 23:13:21 +05:30
end
end
end