aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2017-07-20 15:19:44 +0900
committerRyuta Kamizono <kamipo@gmail.com>2017-07-22 08:46:55 +0900
commit3293ca6d38b42582c95ae7f6eaf6c0bd8eef2d65 (patch)
treebb964e08f38127058c39593773aa9a2174fb0403 /activerecord
parent0df0dfbfac91c2cc4dce1ae73d4026121d109275 (diff)
downloadrails-3293ca6d38b42582c95ae7f6eaf6c0bd8eef2d65.tar.gz
rails-3293ca6d38b42582c95ae7f6eaf6c0bd8eef2d65.tar.bz2
rails-3293ca6d38b42582c95ae7f6eaf6c0bd8eef2d65.zip
Extract `Account` model to the dedicated file
Diffstat (limited to 'activerecord')
-rw-r--r--activerecord/test/models/account.rb34
-rw-r--r--activerecord/test/models/company.rb35
2 files changed, 35 insertions, 34 deletions
diff --git a/activerecord/test/models/account.rb b/activerecord/test/models/account.rb
new file mode 100644
index 0000000000..0c3cd45a81
--- /dev/null
+++ b/activerecord/test/models/account.rb
@@ -0,0 +1,34 @@
+# frozen_string_literal: true
+
+class Account < ActiveRecord::Base
+ belongs_to :firm, class_name: "Company"
+ belongs_to :unautosaved_firm, foreign_key: "firm_id", class_name: "Firm", autosave: false
+
+ alias_attribute :available_credit, :credit_limit
+
+ def self.destroyed_account_ids
+ @destroyed_account_ids ||= Hash.new { |h, k| h[k] = [] }
+ end
+
+ # Test private kernel method through collection proxy using has_many.
+ def self.open
+ where("firm_name = ?", "37signals")
+ end
+
+ before_destroy do |account|
+ if account.firm
+ Account.destroyed_account_ids[account.firm.id] << account.id
+ end
+ end
+
+ validate :check_empty_credit_limit
+
+ private
+ def check_empty_credit_limit
+ errors.add("credit_limit", :blank) if credit_limit.blank?
+ end
+
+ def private_method
+ "Sir, yes sir!"
+ end
+end
diff --git a/activerecord/test/models/company.rb b/activerecord/test/models/company.rb
index 50e9553bfe..bbc5fc2b2d 100644
--- a/activerecord/test/models/company.rb
+++ b/activerecord/test/models/company.rb
@@ -187,37 +187,4 @@ end
class VerySpecialClient < SpecialClient
end
-class Account < ActiveRecord::Base
- belongs_to :firm, class_name: "Company"
- belongs_to :unautosaved_firm, foreign_key: "firm_id", class_name: "Firm", autosave: false
-
- alias_attribute :available_credit, :credit_limit
-
- def self.destroyed_account_ids
- @destroyed_account_ids ||= Hash.new { |h, k| h[k] = [] }
- end
-
- # Test private kernel method through collection proxy using has_many.
- def self.open
- where("firm_name = ?", "37signals")
- end
-
- before_destroy do |account|
- if account.firm
- Account.destroyed_account_ids[account.firm.id] << account.id
- end
- true
- end
-
- validate :check_empty_credit_limit
-
- private
-
- def check_empty_credit_limit
- errors.add("credit_limit", :blank) if credit_limit.blank?
- end
-
- def private_method
- "Sir, yes sir!"
- end
-end
+require "models/account"