From 7603087d3df46d857640cd8353c7b9441561d9f0 Mon Sep 17 00:00:00 2001 From: Rocky Date: Wed, 16 Oct 2019 00:23:55 +0800 Subject: [PATCH] Add jbuilder (#20) --- shard.yml | 2 ++ spec/fixtures/test.jbuilder | 1 + spec/kilt/jbuilder_spec.cr | 18 ++++++++++++++++++ src/jbuilder.cr | 4 ++++ 4 files changed, 25 insertions(+) create mode 100644 spec/fixtures/test.jbuilder create mode 100644 spec/kilt/jbuilder_spec.cr create mode 100644 src/jbuilder.cr diff --git a/shard.yml b/shard.yml index 589ab0d..2ba322e 100644 --- a/shard.yml +++ b/shard.yml @@ -15,3 +15,5 @@ development_dependencies: github: f/temel liquid: github: TechMagister/liquid.cr + jbuilder: + github: shootingfly/jbuilder diff --git a/spec/fixtures/test.jbuilder b/spec/fixtures/test.jbuilder new file mode 100644 index 0000000..d8620f9 --- /dev/null +++ b/spec/fixtures/test.jbuilder @@ -0,0 +1 @@ +json.span Process.pid \ No newline at end of file diff --git a/spec/kilt/jbuilder_spec.cr b/spec/kilt/jbuilder_spec.cr new file mode 100644 index 0000000..1798735 --- /dev/null +++ b/spec/kilt/jbuilder_spec.cr @@ -0,0 +1,18 @@ +require "../spec_helper" +require "../../src/jbuilder" + +class JbuilderView + Kilt.file "spec/fixtures/test.jbuilder" +end + +describe "kilt/jbuilder" do + + it "renders jbuilder" do + Kilt.render("spec/fixtures/test.jbuilder").should eq("{\"span\":#{Process.pid}}") + end + + it "works with class" do + JbuilderView.new.to_s.should eq("{\"span\":#{Process.pid}}") + end + +end diff --git a/src/jbuilder.cr b/src/jbuilder.cr new file mode 100644 index 0000000..26bbbb2 --- /dev/null +++ b/src/jbuilder.cr @@ -0,0 +1,4 @@ +require "./kilt" +require "jbuilder" + +Kilt.register_engine "jbuilder", Jbuilder.embed