cartodb-4.42/spec/requests/carto/api/table_presenter_spec.rb
2024-04-06 05:25:13 +00:00

27 lines
1.0 KiB
Ruby

require 'spec_helper_min'
describe Carto::Api::TablePresenter do
include CartoDB::Factories
include_context 'user helper'
describe '#public_values' do
it 'should work with a canonical visualizations that has two related tables' do
# Note: with Builder, this should not happen (canonical visualizations cannot be modified), for compatibility
# with older, migrated, canonical visualizations
main_table = create_table(user_id: @user.id)
aux_table = create_table(user_id: @user.id)
canonical_layer = main_table.layers.first
canonical_layer.options["query"] = "SELECT * FROM #{main_table.name} JOIN #{aux_table.name} ON true"
canonical_layer.save
context = mock
context.stubs(request: nil, polymorphic_path: '')
presentation = Carto::Api::TablePresenter.new(main_table, @user, context).to_poro
presentation[:table_visualization][:related_tables].count.should eq 1
presentation[:table_visualization][:related_tables][0][:name].should eq aux_table.name
end
end
end