hobbit-contrib 0.2.3 → 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 +4 -4
- data/.travis.yml +1 -8
- data/CHANGELOG.md +5 -0
- data/README.md +0 -75
- data/hobbit-contrib.gemspec +1 -2
- data/lib/hobbit/contrib.rb +0 -1
- data/lib/hobbit/contrib/version.rb +1 -1
- data/lib/hobbit/filter.rb +1 -1
- metadata +28 -44
- data/lib/hobbit/asset_tag.rb +0 -23
- data/spec/asset_tag_spec.rb +0 -84
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 180341ee21296f6323f8956a60fed82f0d910c2a
|
4
|
+
data.tar.gz: 2bb527f0d3aefb60dd4ef4fbbd0a1ba80ac277da
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0339d6abdfe5e0fb02286798bd048e1ce42d64945ebd7221091223345371a69585e676a7d7d131d1f82a681a681654b565a828b087a66c6f74d1f0d5f0993043
|
7
|
+
data.tar.gz: e3dcedd00cac9be0677021242524b7657671638f3f2d38faba2148512a6a71974e5c8cebfbe46fe03fd8845494371552b1d285d63b88ecca6698fc0d2a4b4cfb
|
data/.travis.yml
CHANGED
data/CHANGELOG.md
ADDED
data/README.md
CHANGED
@@ -43,81 +43,6 @@ end
|
|
43
43
|
|
44
44
|
## Available extensions
|
45
45
|
|
46
|
-
### Hobbit::AssetTag
|
47
|
-
|
48
|
-
This module allows you to include images, javascripts and stylesheets in a easy
|
49
|
-
way. To use this extension just include the module:
|
50
|
-
|
51
|
-
In `config.ru`:
|
52
|
-
|
53
|
-
```ruby
|
54
|
-
require 'hobbit'
|
55
|
-
require 'hobbit/contrib'
|
56
|
-
|
57
|
-
class App < Hobbit::Base
|
58
|
-
# Put your assets in:
|
59
|
-
# * public/images
|
60
|
-
# * public/javascripts
|
61
|
-
# * public/stylesheets
|
62
|
-
use Rack::Static, root: 'public', urls: ['/images', '/javascripts', '/stylesheets']
|
63
|
-
include Hobbit::AssetTag
|
64
|
-
include Hobbit::Render # see below
|
65
|
-
|
66
|
-
get '/' do
|
67
|
-
render 'index', {}, layout: 'layout'
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|
71
|
-
run App.new
|
72
|
-
```
|
73
|
-
|
74
|
-
in `views/layouts/layout.erb`:
|
75
|
-
|
76
|
-
```ruby
|
77
|
-
<!DOCTYPE html>
|
78
|
-
<html>
|
79
|
-
<head>
|
80
|
-
<title>Hobbit::AssetTag</title>
|
81
|
-
<!--
|
82
|
-
becomes:
|
83
|
-
<script src="http://code.jquery.com/jquery-2.0.0.min.js" type="text/javascript"></script>
|
84
|
-
<script src="/javascripts/application.js" type="text/javascript"></script>
|
85
|
-
-->
|
86
|
-
<%= javascript 'http://code.jquery.com/jquery-2.0.0.min.js', 'application' %>
|
87
|
-
<!--
|
88
|
-
becomes:
|
89
|
-
<link href="/stylesheets/application.css" rel="stylesheet"/>
|
90
|
-
-->
|
91
|
-
<%= stylesheet 'application' %>
|
92
|
-
</head>
|
93
|
-
<body>
|
94
|
-
<%= yield %>
|
95
|
-
</body>
|
96
|
-
</html>
|
97
|
-
```
|
98
|
-
|
99
|
-
and in `views/index.erb`:
|
100
|
-
|
101
|
-
```ruby
|
102
|
-
<h1>Hobbit::AssetTag</h1>
|
103
|
-
<!-- becomes: /images/some-hobbit.png -->
|
104
|
-
<img src="<%= image_path 'some-hobbit.png' %>"/>
|
105
|
-
```
|
106
|
-
|
107
|
-
#### Available methods
|
108
|
-
|
109
|
-
* `image_path`: Returns the path for a given image.
|
110
|
-
* `javascript`: Returns a list of one or more script tags (see the example
|
111
|
-
above).
|
112
|
-
* `javascript_path`: Returns the path for a given javascript file. If you pass
|
113
|
-
an url, it returns the given url. If you pass an arbitrary string, it returns
|
114
|
-
`/javascripts/#{url}.js`.
|
115
|
-
* `stylesheet`: Returns a list of one or more link tags (see the example
|
116
|
-
above).
|
117
|
-
* `stylesheet_path`: Returns the path for a given stylesheet file. If you pass
|
118
|
-
an url, it returns the given url. If you pass an arbitrary string, it returns
|
119
|
-
`/stylesheets/#{url}.css`.
|
120
|
-
|
121
46
|
### Hobbit::Environment
|
122
47
|
|
123
48
|
This extension allows you to control the application environment by using the
|
data/hobbit-contrib.gemspec
CHANGED
@@ -20,12 +20,11 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.add_development_dependency 'bundler', '~> 1.3'
|
22
22
|
spec.add_development_dependency 'coveralls'
|
23
|
-
spec.add_development_dependency 'hobbit'
|
24
23
|
spec.add_development_dependency 'minitest'
|
25
24
|
spec.add_development_dependency 'rack-test'
|
26
25
|
spec.add_development_dependency 'rake'
|
27
|
-
spec.add_development_dependency 'tilt'
|
28
26
|
|
29
27
|
spec.add_runtime_dependency 'hobbit'
|
30
28
|
spec.add_runtime_dependency 'tilt'
|
29
|
+
spec.add_runtime_dependency 'erubis'
|
31
30
|
end
|
data/lib/hobbit/contrib.rb
CHANGED
data/lib/hobbit/filter.rb
CHANGED
metadata
CHANGED
@@ -1,139 +1,125 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hobbit-contrib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Patricio Mac Adden
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-12-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.3'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - ~>
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.3'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: coveralls
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '0'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: hobbit
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - '>='
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - '>='
|
38
|
+
- - ">="
|
53
39
|
- !ruby/object:Gem::Version
|
54
40
|
version: '0'
|
55
41
|
- !ruby/object:Gem::Dependency
|
56
42
|
name: minitest
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
58
44
|
requirements:
|
59
|
-
- -
|
45
|
+
- - ">="
|
60
46
|
- !ruby/object:Gem::Version
|
61
47
|
version: '0'
|
62
48
|
type: :development
|
63
49
|
prerelease: false
|
64
50
|
version_requirements: !ruby/object:Gem::Requirement
|
65
51
|
requirements:
|
66
|
-
- -
|
52
|
+
- - ">="
|
67
53
|
- !ruby/object:Gem::Version
|
68
54
|
version: '0'
|
69
55
|
- !ruby/object:Gem::Dependency
|
70
56
|
name: rack-test
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
72
58
|
requirements:
|
73
|
-
- -
|
59
|
+
- - ">="
|
74
60
|
- !ruby/object:Gem::Version
|
75
61
|
version: '0'
|
76
62
|
type: :development
|
77
63
|
prerelease: false
|
78
64
|
version_requirements: !ruby/object:Gem::Requirement
|
79
65
|
requirements:
|
80
|
-
- -
|
66
|
+
- - ">="
|
81
67
|
- !ruby/object:Gem::Version
|
82
68
|
version: '0'
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
70
|
name: rake
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
86
72
|
requirements:
|
87
|
-
- -
|
73
|
+
- - ">="
|
88
74
|
- !ruby/object:Gem::Version
|
89
75
|
version: '0'
|
90
76
|
type: :development
|
91
77
|
prerelease: false
|
92
78
|
version_requirements: !ruby/object:Gem::Requirement
|
93
79
|
requirements:
|
94
|
-
- -
|
80
|
+
- - ">="
|
95
81
|
- !ruby/object:Gem::Version
|
96
82
|
version: '0'
|
97
83
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
84
|
+
name: hobbit
|
99
85
|
requirement: !ruby/object:Gem::Requirement
|
100
86
|
requirements:
|
101
|
-
- -
|
87
|
+
- - ">="
|
102
88
|
- !ruby/object:Gem::Version
|
103
89
|
version: '0'
|
104
|
-
type: :
|
90
|
+
type: :runtime
|
105
91
|
prerelease: false
|
106
92
|
version_requirements: !ruby/object:Gem::Requirement
|
107
93
|
requirements:
|
108
|
-
- -
|
94
|
+
- - ">="
|
109
95
|
- !ruby/object:Gem::Version
|
110
96
|
version: '0'
|
111
97
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
98
|
+
name: tilt
|
113
99
|
requirement: !ruby/object:Gem::Requirement
|
114
100
|
requirements:
|
115
|
-
- -
|
101
|
+
- - ">="
|
116
102
|
- !ruby/object:Gem::Version
|
117
103
|
version: '0'
|
118
104
|
type: :runtime
|
119
105
|
prerelease: false
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
107
|
requirements:
|
122
|
-
- -
|
108
|
+
- - ">="
|
123
109
|
- !ruby/object:Gem::Version
|
124
110
|
version: '0'
|
125
111
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
112
|
+
name: erubis
|
127
113
|
requirement: !ruby/object:Gem::Requirement
|
128
114
|
requirements:
|
129
|
-
- -
|
115
|
+
- - ">="
|
130
116
|
- !ruby/object:Gem::Version
|
131
117
|
version: '0'
|
132
118
|
type: :runtime
|
133
119
|
prerelease: false
|
134
120
|
version_requirements: !ruby/object:Gem::Requirement
|
135
121
|
requirements:
|
136
|
-
- -
|
122
|
+
- - ">="
|
137
123
|
- !ruby/object:Gem::Version
|
138
124
|
version: '0'
|
139
125
|
description: Contributed Hobbit extensions
|
@@ -143,14 +129,14 @@ executables: []
|
|
143
129
|
extensions: []
|
144
130
|
extra_rdoc_files: []
|
145
131
|
files:
|
146
|
-
- .gitignore
|
147
|
-
- .travis.yml
|
132
|
+
- ".gitignore"
|
133
|
+
- ".travis.yml"
|
134
|
+
- CHANGELOG.md
|
148
135
|
- Gemfile
|
149
136
|
- LICENSE
|
150
137
|
- README.md
|
151
138
|
- Rakefile
|
152
139
|
- hobbit-contrib.gemspec
|
153
|
-
- lib/hobbit/asset_tag.rb
|
154
140
|
- lib/hobbit/contrib.rb
|
155
141
|
- lib/hobbit/contrib/version.rb
|
156
142
|
- lib/hobbit/environment.rb
|
@@ -158,7 +144,6 @@ files:
|
|
158
144
|
- lib/hobbit/filter.rb
|
159
145
|
- lib/hobbit/render.rb
|
160
146
|
- lib/hobbit/session.rb
|
161
|
-
- spec/asset_tag_spec.rb
|
162
147
|
- spec/environment_spec.rb
|
163
148
|
- spec/error_handling_and_filter_spec.rb
|
164
149
|
- spec/error_handling_spec.rb
|
@@ -180,22 +165,21 @@ require_paths:
|
|
180
165
|
- lib
|
181
166
|
required_ruby_version: !ruby/object:Gem::Requirement
|
182
167
|
requirements:
|
183
|
-
- -
|
168
|
+
- - ">="
|
184
169
|
- !ruby/object:Gem::Version
|
185
170
|
version: '0'
|
186
171
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
187
172
|
requirements:
|
188
|
-
- -
|
173
|
+
- - ">="
|
189
174
|
- !ruby/object:Gem::Version
|
190
175
|
version: '0'
|
191
176
|
requirements: []
|
192
177
|
rubyforge_project:
|
193
|
-
rubygems_version: 2.0
|
178
|
+
rubygems_version: 2.2.0
|
194
179
|
signing_key:
|
195
180
|
specification_version: 4
|
196
181
|
summary: Contributed Hobbit extensions
|
197
182
|
test_files:
|
198
|
-
- spec/asset_tag_spec.rb
|
199
183
|
- spec/environment_spec.rb
|
200
184
|
- spec/error_handling_and_filter_spec.rb
|
201
185
|
- spec/error_handling_spec.rb
|
data/lib/hobbit/asset_tag.rb
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
module Hobbit
|
2
|
-
module AssetTag
|
3
|
-
def image_path(url)
|
4
|
-
url =~ /^https?:\/\// ? url : "/images/#{url}"
|
5
|
-
end
|
6
|
-
|
7
|
-
def javascript(*urls)
|
8
|
-
urls.map { |url| "<script src=\"#{javascript_path url}\" type=\"text/javascript\"></script>" }.join
|
9
|
-
end
|
10
|
-
|
11
|
-
def javascript_path(url)
|
12
|
-
url =~ /^https?:\/\// ? url : "/javascripts/#{url}.js"
|
13
|
-
end
|
14
|
-
|
15
|
-
def stylesheet(*urls)
|
16
|
-
urls.map { |url| "<link href=\"#{stylesheet_path url}\" rel=\"stylesheet\"/>" }.join
|
17
|
-
end
|
18
|
-
|
19
|
-
def stylesheet_path(url)
|
20
|
-
url =~ /^http(s)?:\/\// ? url : "/stylesheets/#{url}.css"
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
data/spec/asset_tag_spec.rb
DELETED
@@ -1,84 +0,0 @@
|
|
1
|
-
require 'minitest_helper'
|
2
|
-
|
3
|
-
describe Hobbit::AssetTag do
|
4
|
-
include Hobbit::Contrib::Mock
|
5
|
-
|
6
|
-
def app
|
7
|
-
mock_app do
|
8
|
-
include Hobbit::AssetTag
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
describe '#image_path' do
|
13
|
-
describe 'when passing an url' do
|
14
|
-
it 'must return the url' do
|
15
|
-
url = 'http://example.com/image.png'
|
16
|
-
app.to_app.image_path(url).must_equal url
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
describe 'when not passing an url' do
|
21
|
-
it 'must return a path to an image' do
|
22
|
-
app.to_app.image_path('hobbit.png').must_equal '/images/hobbit.png'
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
describe '#javascript' do
|
28
|
-
describe 'when passing one string' do
|
29
|
-
it 'must return one script tag' do
|
30
|
-
app.to_app.javascript('application').scan('script src').size.must_equal 1
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
describe 'when passing more than one string' do
|
35
|
-
it 'must return more than one script tag' do
|
36
|
-
app.to_app.javascript('application', 'other_script').scan('script src').size.must_equal 2
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
describe '#javascript_path' do
|
42
|
-
describe 'when passing an url' do
|
43
|
-
it 'must return the url' do
|
44
|
-
url = 'http://example.com/app.js'
|
45
|
-
app.to_app.javascript_path(url).must_equal url
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
describe 'when not passing an url' do
|
50
|
-
it 'must return a path to a javascript file' do
|
51
|
-
app.to_app.javascript_path('application').must_equal '/javascripts/application.js'
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
describe '#stylesheet' do
|
57
|
-
describe 'when passing one string' do
|
58
|
-
it 'must return one link tag' do
|
59
|
-
app.to_app.stylesheet('application').scan('link href').size.must_equal 1
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
|
-
describe 'when passing more than one string' do
|
64
|
-
it 'must return more than one link tag' do
|
65
|
-
app.to_app.stylesheet('application', 'other_style').scan('link href').size.must_equal 2
|
66
|
-
end
|
67
|
-
end
|
68
|
-
end
|
69
|
-
|
70
|
-
describe '#stylesheet_path' do
|
71
|
-
describe 'when passing an url' do
|
72
|
-
it 'must return the url' do
|
73
|
-
url = 'http://example.com/app.css'
|
74
|
-
app.to_app.stylesheet_path(url).must_equal url
|
75
|
-
end
|
76
|
-
end
|
77
|
-
|
78
|
-
describe 'when not passing an url' do
|
79
|
-
it 'must return a path to a stylesheet file' do
|
80
|
-
app.to_app.stylesheet_path('application').must_equal '/stylesheets/application.css'
|
81
|
-
end
|
82
|
-
end
|
83
|
-
end
|
84
|
-
end
|