From bedde50e2e73c2be1b7365304c0d7f072ea86816 Mon Sep 17 00:00:00 2001 From: Weston Ganger Date: Sun, 9 Feb 2025 01:14:54 -0800 Subject: [PATCH] Add test to ensure import form has multipart enctype applied (#31) --- rails_i18n_manager.gemspec | 1 + spec/request/translations_controller_spec.rb | 6 ++++++ spec/spec_helper.rb | 2 ++ 3 files changed, 9 insertions(+) diff --git a/rails_i18n_manager.gemspec b/rails_i18n_manager.gemspec index d0aa3cd..dfb48e4 100644 --- a/rails_i18n_manager.gemspec +++ b/rails_i18n_manager.gemspec @@ -26,6 +26,7 @@ Gem::Specification.new do |spec| spec.add_development_dependency "sqlite3" spec.add_development_dependency "rspec-rails" + spec.add_development_dependency "rspec-html-matchers" spec.add_development_dependency "factory_bot_rails" spec.add_development_dependency "database_cleaner" spec.add_development_dependency "rails-controller-testing" diff --git a/spec/request/translations_controller_spec.rb b/spec/request/translations_controller_spec.rb index a05c38a..cad270f 100644 --- a/spec/request/translations_controller_spec.rb +++ b/spec/request/translations_controller_spec.rb @@ -98,6 +98,12 @@ module RailsI18nManager end context "import" do + it "renders multipart form enctype" do + get rails_i18n_manager.import_translations_path + expect(response).to have_http_status(200) + expect(response.body).to have_tag(:form, action: "#{rails_i18n_manager.import_translations_path}", enctype: "multipart/form-data") + end + it "behaves as expected when nothing uploaded" do get rails_i18n_manager.import_translations_path expect(response).to have_http_status(200) diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 5a136da..a3a9c7f 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -3,10 +3,12 @@ require "factory_bot_rails" require "faker" require "minitest_change_assertions" +require "rspec-html-matchers" require "active_support/all" RSpec.configure do |config| + config.include RSpecHtmlMatchers config.expect_with :rspec do |expectations| expectations.include_chain_clauses_in_custom_matcher_descriptions = true