dassets-erb 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|