53 lines
1.7 KiB
Ruby
53 lines
1.7 KiB
Ruby
|
require 'ostruct'
|
||
|
require 'sequel'
|
||
|
|
||
|
require_relative '../../spec_helper'
|
||
|
require_relative '../../../services/data-repository/backend/sequel'
|
||
|
require_relative '../../../app/models/visualization/member'
|
||
|
require_relative '../../../app/models/visualization/overlays'
|
||
|
require_relative '../../../services/data-repository/repository'
|
||
|
|
||
|
include CartoDB
|
||
|
|
||
|
describe Visualization::Overlays do
|
||
|
|
||
|
before(:each) do
|
||
|
@db = SequelRails.connection
|
||
|
Visualization.repository = DataRepository::Backend::Sequel.new(@db, :visualizations)
|
||
|
|
||
|
member = Visualization::Member.new
|
||
|
map_mock = mock
|
||
|
map_mock.stubs(:scrollwheel=)
|
||
|
map_mock.stubs(:legends=)
|
||
|
map_mock.stubs(:legends)
|
||
|
map_mock.stubs(:scrollwheel)
|
||
|
map_mock.stubs(:id)
|
||
|
map_mock.stubs(:save)
|
||
|
Visualization::Member.any_instance.stubs(:map).returns(map_mock)
|
||
|
@visualization = member
|
||
|
|
||
|
Visualization.repository = DataRepository::Backend::Sequel.new(@db, :visualizations)
|
||
|
end
|
||
|
|
||
|
describe 'default' do
|
||
|
it 'should create all overlays' do
|
||
|
Visualization::Overlays.new(@visualization).create_default_overlays
|
||
|
|
||
|
@visualization.overlays.count.should eq 5
|
||
|
@visualization.overlays.select { |o| o.options['display'] }.count.should eq 5
|
||
|
@visualization.overlays.select { |o| o.type == 'logo' }.count.should eq 1
|
||
|
end
|
||
|
|
||
|
it 'should not create logo if user has disabled_cartodb_logo feature_flag' do
|
||
|
user_mock = mock
|
||
|
user_mock.stubs(:has_feature_flag?).with('disabled_cartodb_logo').returns(true)
|
||
|
@visualization.stubs(:user).returns(user_mock)
|
||
|
|
||
|
Visualization::Overlays.new(@visualization).create_default_overlays
|
||
|
|
||
|
@visualization.overlays.select { |o| o.type == 'logo' }.count.should eq 0
|
||
|
@visualization.overlays.count.should eq 4
|
||
|
end
|
||
|
end
|
||
|
end
|