diff options
| author | Xinhui | 2017-09-05 14:30:09 +0200 | 
|---|---|---|
| committer | Xinhui | 2017-09-05 14:30:17 +0200 | 
| commit | a29e69ce157f3ac8cd7e59c894f51b46ab818c19 (patch) | |
| tree | a2e01df4ec90c2c8d6548e946028d1402d9927a2 | |
| parent | 6b0b5be57f3c018f3ed19ddefb20d7c528d7ee3d (diff) | |
| download | chouette-core-a29e69ce157f3ac8cd7e59c894f51b46ab818c19.tar.bz2 | |
Model ComplianceControlBlock
Refs #4384
| -rw-r--r-- | app/models/compliance_control_block.rb | 3 | ||||
| -rw-r--r-- | db/migrate/20170905122539_create_compliance_control_blocks.rb | 11 | ||||
| -rw-r--r-- | db/schema.rb | 13 | ||||
| -rw-r--r-- | spec/factories/compliance_control_blocks.rb | 6 | ||||
| -rw-r--r-- | spec/models/compliance_control_block_spec.rb | 9 | 
5 files changed, 41 insertions, 1 deletions
| diff --git a/app/models/compliance_control_block.rb b/app/models/compliance_control_block.rb new file mode 100644 index 000000000..cf5a9d72b --- /dev/null +++ b/app/models/compliance_control_block.rb @@ -0,0 +1,3 @@ +class ComplianceControlBlock < ActiveRecord::Base +  belongs_to :compliance_control_set +end diff --git a/db/migrate/20170905122539_create_compliance_control_blocks.rb b/db/migrate/20170905122539_create_compliance_control_blocks.rb new file mode 100644 index 000000000..54ed027ff --- /dev/null +++ b/db/migrate/20170905122539_create_compliance_control_blocks.rb @@ -0,0 +1,11 @@ +class CreateComplianceControlBlocks < ActiveRecord::Migration +  def change +    create_table :compliance_control_blocks do |t| +      t.string :name +      t.hstore :condition_attributes +      t.references :compliance_control_set, index: true, foreign_key: true + +      t.timestamps null: false +    end +  end +end diff --git a/db/schema.rb b/db/schema.rb index bbbaf935e..c463a7f1a 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@  #  # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20170905101656) do +ActiveRecord::Schema.define(version: 20170905122539) do    # These are extensions that must be enabled in order to support this database    enable_extension "plpgsql" @@ -145,6 +145,16 @@ ActiveRecord::Schema.define(version: 20170905101656) do    add_index "companies", ["objectid"], name: "companies_objectid_key", unique: true, using: :btree    add_index "companies", ["registration_number"], name: "companies_registration_number_key", using: :btree +  create_table "compliance_control_blocks", id: :bigserial, force: :cascade do |t| +    t.string   "name" +    t.hstore   "condition_attributes" +    t.integer  "compliance_control_set_id" +    t.datetime "created_at",                null: false +    t.datetime "updated_at",                null: false +  end + +  add_index "compliance_control_blocks", ["compliance_control_set_id"], name: "index_compliance_control_blocks_on_compliance_control_set_id", using: :btree +    create_table "compliance_control_sets", id: :bigserial, force: :cascade do |t|      t.string   "name"      t.integer  "organisation_id" @@ -867,6 +877,7 @@ ActiveRecord::Schema.define(version: 20170905101656) do    add_foreign_key "access_links", "access_points", name: "aclk_acpt_fkey"    add_foreign_key "api_keys", "organisations" +  add_foreign_key "compliance_control_blocks", "compliance_control_sets"    add_foreign_key "compliance_control_sets", "organisations"    add_foreign_key "group_of_lines_lines", "group_of_lines", name: "groupofline_group_fkey", on_delete: :cascade    add_foreign_key "journey_frequencies", "timebands", on_delete: :nullify diff --git a/spec/factories/compliance_control_blocks.rb b/spec/factories/compliance_control_blocks.rb new file mode 100644 index 000000000..ca2abef12 --- /dev/null +++ b/spec/factories/compliance_control_blocks.rb @@ -0,0 +1,6 @@ +FactoryGirl.define do +  factory :compliance_control_block do +    sequence(:name) { |n| "Compliance control block #{n}" } +    compliance_control_set +  end +end diff --git a/spec/models/compliance_control_block_spec.rb b/spec/models/compliance_control_block_spec.rb new file mode 100644 index 000000000..836551a7c --- /dev/null +++ b/spec/models/compliance_control_block_spec.rb @@ -0,0 +1,9 @@ +require 'rails_helper' + +RSpec.describe ComplianceControlBlock, type: :model do +  it 'should have a valid factory' do +    expect(FactoryGirl.build(:compliance_control_set)).to be_valid +  end + +  it { should belong_to :compliance_control_set } +end | 
