This rule was added in rubocop 1.79. We were inconsistent about it, so we're adding it to get more consistency.
48 lines
1.1 KiB
Ruby
48 lines
1.1 KiB
Ruby
require "rails_helper"
|
|
|
|
describe TranslatableFormBuilder do
|
|
before do
|
|
dummy_banner = Class.new(ApplicationRecord) do
|
|
def self.name
|
|
"DummyBanner"
|
|
end
|
|
self.table_name = "banners"
|
|
|
|
translates :title, touch: true
|
|
include Globalizable
|
|
|
|
has_many :translations, class_name: "DummyBanner::Translation", foreign_key: "banner_id"
|
|
end
|
|
|
|
stub_const("DummyBanner", dummy_banner)
|
|
end
|
|
|
|
let(:builder) do
|
|
TranslatableFormBuilder.new(:dummy, DummyBanner.new, ApplicationController.new.view_context, {})
|
|
end
|
|
|
|
describe "#translatable_fields" do
|
|
it "renders fields for the enabled locales when the translation interface is enabled" do
|
|
Setting["feature.translation_interface"] = true
|
|
Setting["locales.enabled"] = "en fr"
|
|
|
|
builder.translatable_fields do |translations_builder|
|
|
render translations_builder.text_field :title
|
|
end
|
|
|
|
expect(page).to have_field "Title", count: 2
|
|
end
|
|
end
|
|
|
|
attr_reader :content
|
|
|
|
def render(content)
|
|
@content ||= ""
|
|
@content << content
|
|
end
|
|
|
|
def page
|
|
Capybara::Node::Simple.new(content)
|
|
end
|
|
end
|