dassets-erb 0.2.0 → 0.3.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 +7 -7
- data/Gemfile +3 -1
- data/README.md +6 -6
- data/dassets-erb.gemspec +6 -5
- data/lib/dassets-erb.rb +15 -12
- data/lib/dassets-erb/version.rb +3 -1
- data/test/helper.rb +3 -16
- data/test/support/factory.rb +1 -2
- data/test/system/.keep +0 -0
- data/test/unit/dassets-erb_tests.rb +47 -0
- metadata +53 -50
- data/test/unit/engine_tests.rb +0 -33
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
5
|
-
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 294065738c80764b094767078e92c5f30ed3a551d20a379f9798cc72acbe67fc
|
4
|
+
data.tar.gz: 9a062e9ea023f4ef75c293d458d71d2c9f537d6f08548cb6ee8e0b67d3eeba51
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 50b86a4928e416ff70575f6fedac3db9348fa786342487d4a478ac7dbe4b4bb6e01bb151f7577e4fccabba732d396dbabda7de02df7f181d01dba3b63cd2aecd
|
7
|
+
data.tar.gz: 8ed27b555b34e8492fdf623b9ff6b6e080eed2f49789968fd352f7633263c9daeb4aa5643960f6ca94e9c886a4df5f4a1288fbb9815e69b8af8e2c7632aada98
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
# Dassets::Erb
|
2
2
|
|
3
|
-
Dassets [engine](https://github.com/redding/dassets#compiling)
|
3
|
+
Dassets [engine](https://github.com/redding/dassets#compiling) to compile dynamic asset files written with ERB.
|
4
|
+
|
5
|
+
See [Dassets::Erubi](https://github.com/redding/dassets-erubi) for a clone that uses [Erubi](https://github.com/jeremyevans/erubi) to do the compilation.
|
4
6
|
|
5
7
|
## Usage
|
6
8
|
|
@@ -8,15 +10,13 @@ Register the engine:
|
|
8
10
|
|
9
11
|
```ruby
|
10
12
|
# in config/assets.rb
|
11
|
-
require
|
12
|
-
require
|
13
|
+
require "dassets"
|
14
|
+
require "dassets-erb"
|
13
15
|
|
14
16
|
Dassets.configure do |c|
|
15
|
-
|
16
17
|
c.source "/path/to/assets") do |s|
|
17
|
-
s.engine
|
18
|
+
s.engine "erb", Dassets::Erb::Engine
|
18
19
|
end
|
19
|
-
|
20
20
|
end
|
21
21
|
```
|
22
22
|
|
data/dassets-erb.gemspec
CHANGED
@@ -8,18 +8,19 @@ Gem::Specification.new do |gem|
|
|
8
8
|
gem.version = Dassets::Erb::VERSION
|
9
9
|
gem.authors = ["Kelly Redding", "Collin Redding"]
|
10
10
|
gem.email = ["kelly@kellyredding.com", "collin.redding@me.com"]
|
11
|
-
gem.summary = %q{Dassets engine
|
12
|
-
gem.description = %q{Dassets engine
|
11
|
+
gem.summary = %q{Dassets engine to compile ERB.}
|
12
|
+
gem.description = %q{Dassets engine fo compile ERB.}
|
13
13
|
gem.homepage = "http://github.com/redding/dassets-erb"
|
14
|
-
gem.license =
|
14
|
+
gem.license = "MIT"
|
15
15
|
|
16
16
|
gem.files = `git ls-files`.split($/)
|
17
17
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
18
18
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
19
19
|
gem.require_paths = ["lib"]
|
20
20
|
|
21
|
-
gem.
|
21
|
+
gem.required_ruby_version = "~> 2.5"
|
22
22
|
|
23
|
-
gem.
|
23
|
+
gem.add_development_dependency("assert", ["~> 2.19.0"])
|
24
24
|
|
25
|
+
gem.add_dependency("dassets", ["~> 0.15.0"])
|
25
26
|
end
|
data/lib/dassets-erb.rb
CHANGED
@@ -1,19 +1,22 @@
|
|
1
|
-
|
2
|
-
require 'dassets/engine'
|
3
|
-
require "dassets-erb/version"
|
4
|
-
|
5
|
-
module Dassets::Erb
|
1
|
+
# frozen_string_literal: true
|
6
2
|
|
7
|
-
|
3
|
+
require "erb"
|
4
|
+
require "dassets/engine"
|
5
|
+
require "dassets-erb/version"
|
8
6
|
|
9
|
-
|
10
|
-
|
11
|
-
|
7
|
+
module Dassets::Erb; end
|
8
|
+
class Dassets::Erb::Engine < Dassets::Engine
|
9
|
+
def self.ERB_EXTENSIONS
|
10
|
+
["erb", "erubis", "erubi"]
|
11
|
+
end
|
12
12
|
|
13
|
-
|
14
|
-
|
15
|
-
end
|
13
|
+
def ext(input_ext)
|
14
|
+
return "" if self.class.ERB_EXTENSIONS.include?(input_ext)
|
16
15
|
|
16
|
+
input_ext
|
17
17
|
end
|
18
18
|
|
19
|
+
def compile(input_content)
|
20
|
+
::ERB.new(input_content).result(binding)
|
21
|
+
end
|
19
22
|
end
|
data/lib/dassets-erb/version.rb
CHANGED
data/test/helper.rb
CHANGED
@@ -5,21 +5,8 @@
|
|
5
5
|
$LOAD_PATH.unshift(File.expand_path("../..", __FILE__))
|
6
6
|
|
7
7
|
# require pry for debugging (`binding.pry`)
|
8
|
-
require
|
8
|
+
require "pry"
|
9
9
|
|
10
|
-
require
|
10
|
+
require "test/support/factory"
|
11
11
|
|
12
|
-
|
13
|
-
setup{ @factory = Factory }
|
14
|
-
end
|
15
|
-
|
16
|
-
# 1.8.7 backfills
|
17
|
-
|
18
|
-
# Array#sample
|
19
|
-
if !(a = Array.new).respond_to?(:sample) && a.respond_to?(:choice)
|
20
|
-
class Array
|
21
|
-
alias_method :sample, :choice
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
ENV['DASSETS_TEST_MODE'] = 'yes'
|
12
|
+
ENV["DASSETS_TEST_MODE"] = "yes"
|
data/test/support/factory.rb
CHANGED
data/test/system/.keep
ADDED
File without changes
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require "assert"
|
2
|
+
require "dassets-erb"
|
3
|
+
|
4
|
+
require "dassets/engine"
|
5
|
+
|
6
|
+
module Dassets::Erb
|
7
|
+
class UnitTests < Assert::Context
|
8
|
+
desc "Dassets::Erb"
|
9
|
+
subject { unit_class }
|
10
|
+
|
11
|
+
let(:unit_class) { Dassets::Erb }
|
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
|
47
|
+
end
|
metadata
CHANGED
@@ -1,49 +1,53 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: dassets-erb
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
|
-
authors:
|
6
|
+
authors:
|
7
7
|
- Kelly Redding
|
8
8
|
- Collin Redding
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2020-12-29 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
16
15
|
name: assert
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
version: 2.16.1
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - "~>"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: 2.19.0
|
23
21
|
type: :development
|
24
|
-
version_requirements: *id001
|
25
|
-
- !ruby/object:Gem::Dependency
|
26
|
-
name: dassets
|
27
22
|
prerelease: false
|
28
|
-
|
29
|
-
requirements:
|
30
|
-
- - ~>
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version:
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - "~>"
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: 2.19.0
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: dassets
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - "~>"
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: 0.15.0
|
33
35
|
type: :runtime
|
34
|
-
|
35
|
-
|
36
|
-
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - "~>"
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: 0.15.0
|
42
|
+
description: Dassets engine fo compile ERB.
|
43
|
+
email:
|
37
44
|
- kelly@kellyredding.com
|
38
45
|
- collin.redding@me.com
|
39
46
|
executables: []
|
40
|
-
|
41
47
|
extensions: []
|
42
|
-
|
43
48
|
extra_rdoc_files: []
|
44
|
-
|
45
|
-
|
46
|
-
- .gitignore
|
49
|
+
files:
|
50
|
+
- ".gitignore"
|
47
51
|
- Gemfile
|
48
52
|
- LICENSE
|
49
53
|
- README.md
|
@@ -53,35 +57,34 @@ files:
|
|
53
57
|
- log/.gitkeep
|
54
58
|
- test/helper.rb
|
55
59
|
- test/support/factory.rb
|
56
|
-
- test/
|
60
|
+
- test/system/.keep
|
61
|
+
- test/unit/dassets-erb_tests.rb
|
57
62
|
- tmp/.gitkeep
|
58
63
|
homepage: http://github.com/redding/dassets-erb
|
59
|
-
licenses:
|
64
|
+
licenses:
|
60
65
|
- MIT
|
61
66
|
metadata: {}
|
62
|
-
|
63
67
|
post_install_message:
|
64
68
|
rdoc_options: []
|
65
|
-
|
66
|
-
require_paths:
|
69
|
+
require_paths:
|
67
70
|
- lib
|
68
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
69
|
-
requirements:
|
70
|
-
-
|
71
|
-
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
71
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '2.5'
|
76
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - ">="
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '0'
|
77
81
|
requirements: []
|
78
|
-
|
79
|
-
rubyforge_project:
|
80
|
-
rubygems_version: 2.6.4
|
82
|
+
rubygems_version: 3.1.2
|
81
83
|
signing_key:
|
82
84
|
specification_version: 4
|
83
|
-
summary: Dassets engine
|
84
|
-
test_files:
|
85
|
+
summary: Dassets engine to compile ERB.
|
86
|
+
test_files:
|
85
87
|
- test/helper.rb
|
86
88
|
- test/support/factory.rb
|
87
|
-
- test/
|
89
|
+
- test/system/.keep
|
90
|
+
- test/unit/dassets-erb_tests.rb
|
data/test/unit/engine_tests.rb
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
require 'assert'
|
2
|
-
require 'dassets-erb'
|
3
|
-
|
4
|
-
require 'dassets/engine'
|
5
|
-
|
6
|
-
class Dassets::Erb::Engine
|
7
|
-
|
8
|
-
class UnitTests < Assert::Context
|
9
|
-
desc "Dassets::Erb::Engine"
|
10
|
-
setup do
|
11
|
-
@engine = Dassets::Erb::Engine.new
|
12
|
-
end
|
13
|
-
subject{ @engine }
|
14
|
-
|
15
|
-
should "be a Dassets engine" do
|
16
|
-
assert_kind_of Dassets::Engine, subject
|
17
|
-
assert_respond_to 'ext', subject
|
18
|
-
assert_respond_to 'compile', subject
|
19
|
-
end
|
20
|
-
|
21
|
-
should "remove any input extension to `css`" do
|
22
|
-
assert_equal '', subject.ext('erb')
|
23
|
-
assert_equal '', subject.ext('erubis')
|
24
|
-
assert_equal '', subject.ext('whatever')
|
25
|
-
end
|
26
|
-
|
27
|
-
should "compile any input content as Erb" do
|
28
|
-
assert_equal @factory.erb_compiled, subject.compile(@factory.erb)
|
29
|
-
end
|
30
|
-
|
31
|
-
end
|
32
|
-
|
33
|
-
end
|