From 6661ee027ef1dc4625d3233939687681780c2134 Mon Sep 17 00:00:00 2001 From: Douglas Barbosa Alexandre Date: Tue, 6 Feb 2018 17:03:17 -0200 Subject: Add ProjectState model --- app/models/project.rb | 1 + app/models/project_state.rb | 5 +++++ spec/models/project_spec.rb | 1 + spec/models/project_state_spec.rb | 11 +++++++++++ 4 files changed, 18 insertions(+) create mode 100644 app/models/project_state.rb create mode 100644 spec/models/project_state_spec.rb diff --git a/app/models/project.rb b/app/models/project.rb index 33085151217..4550285359e 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -188,6 +188,7 @@ class Project < ActiveRecord::Base has_one :import_data, class_name: 'ProjectImportData', inverse_of: :project, autosave: true has_one :project_feature, inverse_of: :project has_one :statistics, class_name: 'ProjectStatistics' + has_one :state, class_name: 'ProjectState' has_one :cluster_project, class_name: 'Clusters::Project' has_many :clusters, through: :cluster_project, class_name: 'Clusters::Cluster' diff --git a/app/models/project_state.rb b/app/models/project_state.rb new file mode 100644 index 00000000000..7d6b8c174f7 --- /dev/null +++ b/app/models/project_state.rb @@ -0,0 +1,5 @@ +class ProjectState < ActiveRecord::Base + belongs_to :project + + validates :project, presence: true +end diff --git a/spec/models/project_spec.rb b/spec/models/project_spec.rb index da940571bc1..880c2079414 100644 --- a/spec/models/project_spec.rb +++ b/spec/models/project_spec.rb @@ -51,6 +51,7 @@ describe Project do it { is_expected.to have_one(:external_wiki_service) } it { is_expected.to have_one(:project_feature) } it { is_expected.to have_one(:statistics).class_name('ProjectStatistics') } + it { is_expected.to have_one(:state).class_name('ProjectState') } it { is_expected.to have_one(:import_data).class_name('ProjectImportData') } it { is_expected.to have_one(:last_event).class_name('Event') } it { is_expected.to have_one(:forked_from_project).through(:forked_project_link) } diff --git a/spec/models/project_state_spec.rb b/spec/models/project_state_spec.rb new file mode 100644 index 00000000000..845e4813215 --- /dev/null +++ b/spec/models/project_state_spec.rb @@ -0,0 +1,11 @@ +require 'rails_helper' + +describe ProjectState do + describe 'assocations' do + it { is_expected.to belong_to(:project) } + end + + describe 'validations' do + it { is_expected.to validate_presence_of(:project) } + end +end -- cgit v1.2.1