Use and expect latest hamlit (#212)

The hamlit 3.0 release defaults to implicit block capturing when yielding, and hamlit-block has been correspondingly deprecated.
This commit is contained in:
Tim Riley 2022-08-15 12:52:25 +10:00 committed by GitHub
parent a5c68ee061
commit 136ebb5401
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 11 additions and 13 deletions

View File

@ -17,8 +17,7 @@ group :test do
gem "dry-inflector"
gem "erbse", "~> 0.1.4"
gem "erubi"
gem "hamlit"
gem "hamlit-block"
gem "hamlit", ">= 3.0"
gem "dry-files", github: "dry-rb/dry-files"
gem "hanami-cli", github: "hanami/cli", branch: "main"
gem "hanami", github: "hanami/hanami", branch: "main"

View File

@ -5,8 +5,8 @@ module Hanami
module Tilt
module Haml
def self.requirements
["hamlit/block", <<~ERROR]
hanami-view requires hamlit-block for full compatibility when rendering .haml templates (e.g. implicitly capturing block content when yielding)
["hamlit", <<~ERROR]
hanami-view requires hamlit (3.0 or greater) for full compatibility when rendering .haml templates (e.g. implicitly capturing block content when yielding)
To ignore this and use another engine for .haml templates, dereigster this adapter before calling your views:
@ -15,7 +15,7 @@ module Hanami
end
def self.activate
# Requiring hamlit/block will register the engine with Tilt
# Requiring hamlit will register the engine with Tilt
self
end
end

View File

@ -1,3 +1,2 @@
= wrapper do
!= wrapper do
= "Yielded"

View File

@ -1,2 +1,2 @@
= render(:wrapper) do
!= render(:wrapper) do
= "Yielded"

View File

@ -35,13 +35,13 @@ RSpec.describe "Template engines / haml (using hamlit-block as default engine)"
end
end
context "with hamlit-block not available" do
context "with hamlit not available" do
before do
@load_path = $LOAD_PATH.dup
@loaded_features = $LOADED_FEATURES.dup
$LOAD_PATH.reject! { |path| path =~ /hamlit-block/ }
$LOADED_FEATURES.reject! { |path| path =~ /hamlit-block/ }
$LOAD_PATH.reject! { |path| path =~ /hamlit/ }
$LOADED_FEATURES.reject! { |path| path =~ /hamlit/ }
Hanami::View::Tilt.cache.clear
Hanami::View::Renderer.cache.clear
@ -52,12 +52,12 @@ RSpec.describe "Template engines / haml (using hamlit-block as default engine)"
$LOADED_FEATURES.replace @loaded_features
end
it "raises an error explaining the hamlit-block requirement" do
it "raises an error explaining the hamlit requirement" do
view = Class.new(base_view) do
config.template = "render_and_yield"
end.new
expect { view.() }.to raise_error(LoadError, /hanami-view requires hamlit-block/m)
expect { view.() }.to raise_error(LoadError, /hanami-view requires hamlit/m)
end
end
end