dassets-erubi 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0c5b6fad2531b1b4ebd9c9e7a5c24893c93f94ce5728fd4135a6ad02936723c3
4
- data.tar.gz: 1c53df14c14aebe0aa6f5806872c3776e66eb2426875d28b57f0abd72b0b0766
3
+ metadata.gz: e3fb38453f07cc027a98249ef59ee292660e73cad856cd45f3c22c58150194e0
4
+ data.tar.gz: 51e319f80f398e3c02f2c1f735b8d48b89ae55f5ca220c3df1c9dbda6f31c627
5
5
  SHA512:
6
- metadata.gz: 0bd86acd437d365f5a0e74f2c738aa04d56f918735d75287121265562c88f4976ed386c91b5c7c89391d34d547aecc353965f801f88044be7b594f5ea076bccb
7
- data.tar.gz: 46fd5e3f2ac3c128dcf175e5142f328c9cf19329e44a85e82b17f8b4b588a49abb0e3f900e0795b1c180f729455d54c3ff96191b94fb13ab6343c01fbc351256
6
+ metadata.gz: 4bcc723a27e75c30891a0985de1df31dd82eb9f1c80bacf8163a3f8d7baecdb9702b6e1c2af5d3d44ba28fec4eea10bdc893bc20fb07c38206b91b3fd5eea4fa
7
+ data.tar.gz: 1154ca995d089107eee7e945484b714e500e47b13b4b165988bb2db35278ab88981d7fbfedbdc5425e1b1012cc54bd714fefc0812991363ef68c15265d3f6845
@@ -22,6 +22,6 @@ Gem::Specification.new do |gem|
22
22
 
23
23
  gem.add_development_dependency("assert", ["~> 2.19.0"])
24
24
 
25
- gem.add_dependency("dassets", ["~> 0.14.5"])
25
+ gem.add_dependency("dassets", ["~> 0.15.0"])
26
26
  gem.add_dependency("erubi", ["~> 1.10"])
27
27
  end
@@ -4,6 +4,19 @@ require "erubi"
4
4
  require "dassets/engine"
5
5
  require "dassets-erubi/version"
6
6
 
7
- module Dassets; end
8
- module Dassets::Erubi
7
+ module Dassets::Erubi; end
8
+ class Dassets::Erubi::Engine < Dassets::Engine
9
+ def self.ERB_EXTENSIONS
10
+ ["erb", "erubis", "erubi"]
11
+ end
12
+
13
+ def ext(input_ext)
14
+ return "" if self.class.ERB_EXTENSIONS.include?(input_ext)
15
+
16
+ input_ext
17
+ end
18
+
19
+ def compile(input_content)
20
+ eval(::Erubi::Engine.new(input_content, freeze: true).src)
21
+ end
9
22
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Dassets; end
4
4
  module Dassets::Erubi
5
- VERSION = "0.0.1"
5
+ VERSION = "0.1.0"
6
6
  end
@@ -8,3 +8,5 @@ $LOAD_PATH.unshift(File.expand_path("../..", __FILE__))
8
8
  require "pry"
9
9
 
10
10
  require "test/support/factory"
11
+
12
+ ENV["DASSETS_TEST_MODE"] = "yes"
@@ -2,4 +2,18 @@ require "assert/factory"
2
2
 
3
3
  module Factory
4
4
  extend Assert::Factory
5
+
6
+ module_function
7
+
8
+ def name
9
+ "Joe"
10
+ end
11
+
12
+ def erb
13
+ "hello, <%= Factory.name %>!"
14
+ end
15
+
16
+ def erb_compiled
17
+ "hello, Joe!"
18
+ end
5
19
  end
@@ -10,4 +10,38 @@ module Dassets::Erubi
10
10
 
11
11
  let(:unit_class) { Dassets::Erubi }
12
12
  end
13
+
14
+ class EngineTests < UnitTests
15
+ desc "Engine"
16
+ subject { engine_class }
17
+
18
+ let(:engine_class) { unit_class::Engine }
19
+
20
+ should "know its ERB extensions" do
21
+ assert_that(subject.ERB_EXTENSIONS).equals(["erb", "erubis", "erubi"])
22
+ end
23
+ end
24
+
25
+ class EngineInitTests < EngineTests
26
+ desc "when init"
27
+ subject { engine_class.new }
28
+
29
+ should "be a Dassets engine" do
30
+ assert_that(subject).is_kind_of(Dassets::Engine)
31
+ assert_that(subject).responds_to("ext")
32
+ assert_that(subject).responds_to("compile")
33
+ end
34
+
35
+ should "only remove ERB-like input extensions" do
36
+ assert_that(subject.ext("erb")).equals("")
37
+ assert_that(subject.ext("erubis")).equals("")
38
+ assert_that(subject.ext("erubi")).equals("")
39
+ assert_that(subject.ext("css")).equals("css")
40
+ assert_that(subject.ext("js")).equals("js")
41
+ end
42
+
43
+ should "compile any input content as ERB" do
44
+ assert_equal Factory.erb_compiled, subject.compile(Factory.erb)
45
+ end
46
+ end
13
47
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dassets-erubi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kelly Redding
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-12-27 00:00:00.000000000 Z
12
+ date: 2020-12-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: assert
@@ -31,14 +31,14 @@ dependencies:
31
31
  requirements:
32
32
  - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: 0.14.5
34
+ version: 0.15.0
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: 0.14.5
41
+ version: 0.15.0
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: erubi
44
44
  requirement: !ruby/object:Gem::Requirement