From 9f7261cd52cd058191f150fa39205324d10725ed Mon Sep 17 00:00:00 2001 From: Rodrigo Souto Date: Wed, 9 Oct 2013 18:45:43 +0000 Subject: [PATCH] rails3: fix organization tests --- app/models/profile.rb | 9 --------- lib/noosfero/core_ext/active_record.rb | 7 +++++++ test/unit/organization_test.rb | 18 +++++++++--------- 3 files changed, 16 insertions(+), 18 deletions(-) diff --git a/app/models/profile.rb b/app/models/profile.rb index 2d3efa5..549359a 100644 --- a/app/models/profile.rb +++ b/app/models/profile.rb @@ -98,15 +98,6 @@ class Profile < ActiveRecord::Base members.count end - class << self - def count_with_distinct(*args) - options = args.last || {} - count_without_distinct(:id, {:distinct => true}.merge(options)) - end - alias_method_chain :count, :distinct - end - - def members_by_role(role) Person.members_of(self).all(:conditions => ['role_assignments.role_id = ?', role.id]) end diff --git a/lib/noosfero/core_ext/active_record.rb b/lib/noosfero/core_ext/active_record.rb index f31583e..16d405c 100644 --- a/lib/noosfero/core_ext/active_record.rb +++ b/lib/noosfero/core_ext/active_record.rb @@ -27,3 +27,10 @@ class ActiveRecord::Base end end + +ActiveRecord::Calculations.module_eval do + def count_with_default_distinct(column_name=:id, options={}) + count_without_default_distinct(column_name, {:distinct => true}.merge(options)) + end + alias_method_chain :count, :default_distinct +end diff --git a/test/unit/organization_test.rb b/test/unit/organization_test.rb index 98518a7..1ab6b04 100644 --- a/test/unit/organization_test.rb +++ b/test/unit/organization_test.rb @@ -21,7 +21,7 @@ class OrganizationTest < ActiveSupport::TestCase :requestor => requestor, :target => org, } - CreateEnterprise.create!(data) + create(CreateEnterprise, data) end @@ -97,7 +97,7 @@ class OrganizationTest < ActiveSupport::TestCase end should 'list contact_email plus admin emails as "notification emails"' do - o = Organization.new(:contact_email => 'org@email.com') + o = build(Organization, :contact_email => 'org@email.com') admin1 = mock; admin1.stubs(:email).returns('admin1@email.com') admin2 = mock; admin2.stubs(:email).returns('admin2@email.com') o.stubs(:admins).returns([admin1, admin2]) @@ -106,7 +106,7 @@ class OrganizationTest < ActiveSupport::TestCase end should 'list only admins if contact_email is nil' do - o = Organization.new(:contact_email => nil) + o = build(Organization, :contact_email => nil) admin1 = mock; admin1.stubs(:email).returns('admin1@email.com') admin2 = mock; admin2.stubs(:email).returns('admin2@email.com') o.stubs(:admins).returns([admin1, admin2]) @@ -115,7 +115,7 @@ class OrganizationTest < ActiveSupport::TestCase end should 'list only admins if contact_email is a blank string' do - o = Organization.new(:contact_email => '') + o = build(Organization, :contact_email => '') admin1 = mock; admin1.stubs(:email).returns('admin1@email.com') admin2 = mock; admin2.stubs(:email).returns('admin2@email.com') o.stubs(:admins).returns([admin1, admin2]) @@ -124,13 +124,13 @@ class OrganizationTest < ActiveSupport::TestCase end should 'return empty array if contact_email is a blank string and it has no admin' do - o = Organization.new(:contact_email => '', :environment => Environment.default) + o = build(Organization, :contact_email => '', :environment => Environment.default) assert_equal [], o.notification_emails end should 'list pending enterprise validations' do org = Organization.new - assert_kind_of Array, org.pending_validations + assert_kind_of ActiveRecord::Relation, org.pending_validations end should 'be able to find a pending validation by its code' do @@ -148,7 +148,7 @@ class OrganizationTest < ActiveSupport::TestCase should 'be able to find already processed validations' do org = Organization.new - assert_kind_of Array, org.processed_validations + assert_kind_of ActiveRecord::Relation, org.processed_validations end should 'be able to find an already processed validation by its code' do @@ -160,7 +160,7 @@ class OrganizationTest < ActiveSupport::TestCase end should 'have boxes and blocks upon creation' do - profile = Organization.create!(:name => 'test org', :identifier => 'testorg') + profile = create(Organization, :name => 'test org', :identifier => 'testorg') assert profile.boxes.size > 0 assert profile.blocks.size > 0 @@ -391,7 +391,7 @@ class OrganizationTest < ActiveSupport::TestCase end should 'validates format of cnpj' do - organization = Organization.new(:cnpj => '239-234.234') + organization = build(Organization, :cnpj => '239-234.234') organization.valid? assert organization.errors[:cnpj.to_s].present? -- libgit2 0.21.2