Add role "federal_manager"
This commit is contained in:
parent
c0996f90d3
commit
9702540502
6 changed files with 34 additions and 2 deletions
|
@ -3,7 +3,7 @@
|
|||
class Relationship < ApplicationRecord
|
||||
pg_enum :status, %i[supporter excluded member]
|
||||
|
||||
pg_enum :role, %i[regional_manager regional_supervisor]
|
||||
pg_enum :role, %i[federal_manager regional_manager regional_supervisor]
|
||||
|
||||
################
|
||||
# Associations #
|
||||
|
@ -13,6 +13,12 @@ class Relationship < ApplicationRecord
|
|||
|
||||
belongs_to :regional_office, inverse_of: :all_relationships
|
||||
|
||||
##########
|
||||
# Scopes #
|
||||
##########
|
||||
|
||||
scope :federal_managers, -> { where(role: :federal_manager) }
|
||||
|
||||
###############
|
||||
# Validations #
|
||||
###############
|
||||
|
|
|
@ -8,6 +8,7 @@ ru:
|
|||
excluded: Исключён из партии
|
||||
member: Член партии
|
||||
relationship_role:
|
||||
federal_manager: Член федерального комитета
|
||||
regional_manager: Член руководящего комитета регионального отделения
|
||||
regional_supervisor: >-
|
||||
Член контрольно-ревизионной комиссии регионального отделения
|
||||
|
|
|
@ -15,7 +15,11 @@ private
|
|||
|
||||
enum :relationship_status, %i[supporter excluded member]
|
||||
|
||||
enum :relationship_role, %i[regional_manager regional_supervisor]
|
||||
enum :relationship_role, %i[
|
||||
federal_manager
|
||||
regional_manager
|
||||
regional_supervisor
|
||||
]
|
||||
|
||||
enum :person_comment_origin, %i[
|
||||
general_comments
|
||||
|
|
|
@ -43,6 +43,7 @@ CREATE TYPE public.person_comment_origin AS ENUM (
|
|||
--
|
||||
|
||||
CREATE TYPE public.relationship_role AS ENUM (
|
||||
'federal_manager',
|
||||
'regional_manager',
|
||||
'regional_supervisor'
|
||||
);
|
||||
|
|
|
@ -25,6 +25,10 @@ FactoryBot.define do
|
|||
status { :member }
|
||||
end
|
||||
|
||||
factory :federal_manager_relationship, parent: :member_relationship do
|
||||
role { :federal_manager }
|
||||
end
|
||||
|
||||
factory :regional_manager_relationship, parent: :member_relationship do
|
||||
role { :regional_manager }
|
||||
end
|
||||
|
|
|
@ -65,4 +65,20 @@ RSpec.describe Relationship do
|
|||
it { is_expected.to allow_value described_class.roles.keys.sample }
|
||||
end
|
||||
end
|
||||
|
||||
describe '.federal_managers' do
|
||||
let!(:relationship1) { create :supporter_relationship }
|
||||
let!(:relationship2) { create :member_relationship }
|
||||
let!(:relationship3) { create :excluded_supporter_relationship }
|
||||
let!(:relationship3) { create :excluded_member_relationship }
|
||||
let!(:relationship4) { create :federal_manager_relationship }
|
||||
let!(:relationship5) { create :regional_manager_relationship }
|
||||
let!(:relationship6) { create :regional_supervisor_relationship }
|
||||
let!(:relationship7) { create :federal_manager_relationship }
|
||||
|
||||
specify do
|
||||
expect(described_class.federal_managers).to \
|
||||
eq [relationship4, relationship7]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Reference in a new issue