debian-mirror-gitlab/spec/lib/gitlab/database/obsolete_ignored_columns_spec.rb
2019-12-04 20:38:33 +05:30

43 lines
866 B
Ruby

# frozen_string_literal: true
require 'spec_helper'
describe Gitlab::Database::ObsoleteIgnoredColumns do
module Testing
class MyBase < ApplicationRecord
end
class SomeAbstract < MyBase
self.abstract_class = true
self.table_name = 'projects'
self.ignored_columns += %i[unused]
end
class B < MyBase
self.table_name = 'issues'
self.ignored_columns += %i[id other]
end
class A < SomeAbstract
self.ignored_columns += %i[id also_unused]
end
class C < MyBase
self.table_name = 'users'
end
end
subject { described_class.new(Testing::MyBase) }
describe '#execute' do
it 'returns a list of class names and columns pairs' do
expect(subject.execute).to eq([
['Testing::A', %w(unused also_unused)],
['Testing::B', %w(other)]
])
end
end
end