cartodb/spec/models/carto/organization_spec.rb
2020-06-15 10:58:47 +08:00

54 lines
1.6 KiB
Ruby

require_relative '../../spec_helper'
require_relative '../organization_shared_examples'
require 'helpers/storage_helper'
describe Carto::Organization do
include StorageHelper
it_behaves_like 'organization models' do
before(:each) do
# INFO: forcing ActiveRecord initialization so expectations on number of queries don't count AR queries
@the_organization = Carto::Organization.where(id: @organization.id).first
@the_organization.owner
Carto::SearchTweet.count
Carto::Geocoding.count
end
def get_twitter_imports_count_by_organization_id(organization_id)
raise "id doesn't match" unless organization_id == @the_organization.id
@the_organization.twitter_imports_count
end
def get_geocoding_calls_by_organization_id(organization_id)
raise "id doesn't match" unless organization_id == @the_organization.id
@the_organization.get_geocoding_calls
end
def get_organization
@the_organization
end
end
describe '#destroy' do
before(:each) do
@organization = Carto::Organization.find(FactoryGirl.create(:organization).id)
end
it 'destroys its groups through the extension' do
Carto::Group.any_instance.expects(:destroy_group_with_extension).once
FactoryGirl.create(:carto_group, organization: @organization)
@organization.destroy
end
it 'destroys organization assets' do
bypass_storage
asset = FactoryGirl.create(:organization_asset,
organization_id: @organization.id)
@organization.destroy
Carto::Asset.exists?(asset.id).should be_false
end
end
end