mirror of
https://github.com/lingble/chatwoot.git
synced 2025-11-02 20:18:08 +00:00
Add Account Model specs (#341)
This commit is contained in:
committed by
Sojan Jose
parent
6ca403542d
commit
c758c13ffb
@@ -3,7 +3,7 @@
|
||||
# Table name: accounts
|
||||
#
|
||||
# id :integer not null, primary key
|
||||
# name :string
|
||||
# name :string not null
|
||||
# created_at :datetime not null
|
||||
# updated_at :datetime not null
|
||||
#
|
||||
@@ -11,6 +11,8 @@
|
||||
class Account < ApplicationRecord
|
||||
include Events::Types
|
||||
|
||||
validates :name, presence: true
|
||||
|
||||
has_many :users, dependent: :destroy
|
||||
has_many :inboxes, dependent: :destroy
|
||||
has_many :conversations, dependent: :destroy
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
class AddNotNullConstraintToAccountName < ActiveRecord::Migration[6.0]
|
||||
def change
|
||||
change_column_null :accounts, :name, false
|
||||
end
|
||||
end
|
||||
@@ -10,13 +10,13 @@
|
||||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(version: 2019_11_26_185833) do
|
||||
ActiveRecord::Schema.define(version: 2019_12_02_173004) do
|
||||
|
||||
# These are extensions that must be enabled in order to support this database
|
||||
enable_extension "plpgsql"
|
||||
|
||||
create_table "accounts", id: :serial, force: :cascade do |t|
|
||||
t.string "name"
|
||||
t.string "name", null: false
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
end
|
||||
|
||||
17
spec/models/account_spec.rb
Normal file
17
spec/models/account_spec.rb
Normal file
@@ -0,0 +1,17 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe Account do
|
||||
it { is_expected.to validate_presence_of(:name) }
|
||||
|
||||
it { is_expected.to have_many(:users).dependent(:destroy) }
|
||||
it { is_expected.to have_many(:inboxes).dependent(:destroy) }
|
||||
it { is_expected.to have_many(:conversations).dependent(:destroy) }
|
||||
it { is_expected.to have_many(:contacts).dependent(:destroy) }
|
||||
it { is_expected.to have_many(:telegram_bots).dependent(:destroy) }
|
||||
it { is_expected.to have_many(:canned_responses).dependent(:destroy) }
|
||||
it { is_expected.to have_many(:facebook_pages).class_name('::Channel::FacebookPage').dependent(:destroy) }
|
||||
it { is_expected.to have_many(:web_widgets).class_name('::Channel::WebWidget').dependent(:destroy) }
|
||||
it { is_expected.to have_one(:subscription).dependent(:destroy) }
|
||||
end
|
||||
Reference in New Issue
Block a user