From 03a56b5bbfae0a1932a6189d18fb96e344ed48bd Mon Sep 17 00:00:00 2001 From: Caleb Thompson Date: Tue, 9 Jun 2015 11:11:41 -0500 Subject: [PATCH] Add missing test for setting tenant_id to same val This feature was added in https://github.com/ErwinM/acts_as_tenant/commit/f4439e4acc0c14530184d29bab9f4cdd44249b60, but it looks like there wasn't an accompanying spec to cover the new behavior. Added the `require "yaml"` because I was getting a NameError; I guess rails/all didn't cover that for some reason. --- spec/active_record_helper.rb | 1 + spec/acts_as_tenant/model_extensions_spec.rb | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/spec/active_record_helper.rb b/spec/active_record_helper.rb index 6f41fd3..3604ef7 100644 --- a/spec/active_record_helper.rb +++ b/spec/active_record_helper.rb @@ -1,5 +1,6 @@ require 'rails/all' require 'database_cleaner' +require 'yaml' dbconfig = YAML::load(IO.read(File.join(File.dirname(__FILE__), 'database.yml'))) ActiveRecord::Base.logger = Logger.new(File.join(File.dirname(__FILE__), "debug.log")) diff --git a/spec/acts_as_tenant/model_extensions_spec.rb b/spec/acts_as_tenant/model_extensions_spec.rb index bb61938..78bfc11 100644 --- a/spec/acts_as_tenant/model_extensions_spec.rb +++ b/spec/acts_as_tenant/model_extensions_spec.rb @@ -27,6 +27,15 @@ it { expect {@project.account_id = @account.id + 1}.to raise_error } end + describe 'setting tenant_id to the same value should not error' do + before do + @account = Account.create!(:name => 'foo') + @project = @account.projects.create!(:name => 'bar') + end + + it { expect {@project.account_id = @account.id}.not_to raise_error } + end + describe 'tenant_id should be mutable, if not already set' do before do @account = Account.create!(:name => 'foo')