dassets-erubi 0.0.1 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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