stasis-extensions 0.0.2 → 1.0.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.
data/.gitignore CHANGED
@@ -12,6 +12,7 @@ lib/bundler/man
12
12
  pkg
13
13
  rdoc
14
14
  spec/reports
15
+ spec/fixtures/project/public
15
16
  test/tmp
16
17
  test/version_tmp
17
18
  tmp
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.3
4
+ - 2.0.0
data/Guardfile ADDED
@@ -0,0 +1,10 @@
1
+ # A sample Guardfile
2
+ # More info at https://github.com/guard/guard#readme
3
+
4
+ guard :rspec, all_on_start: true, cli: '--color --format doc' do
5
+ watch(%r{^spec/.+_spec\.rb$})
6
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
7
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
8
+ watch('spec/spec_helper.rb') { "spec" }
9
+ end
10
+
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
- # Stasis::Extensions
1
+ # stasis-extensions [![Build Status](https://travis-ci.org/mosaicxm/stasis-extensions.png?branch=master)](https://travis-ci.org/mosaicxm/stasis-extensions)
2
+
3
+ **stasis-extensions** is a gem that extends the functionality of **stasis** to support i18n and fingerprinting of assets.
2
4
 
3
- TODO: Write a gem description
4
5
 
5
6
  ## Installation
6
7
 
@@ -18,7 +19,39 @@ Or install it yourself as:
18
19
 
19
20
  ## Usage
20
21
 
21
- TODO: Write usage instructions here
22
+ ### i18n helpers
23
+
24
+ #### body_class
25
+
26
+ Use to generate classes for your body (or other html tag). The current locale and the current view name will be included.
27
+
28
+ #### translate(key, options = {})
29
+
30
+ Use in your views to localize text. Aliased as `t`. See [ActionView::Helpers::TranslationHelper](http://api.rubyonrails.org/classes/ActionView/Helpers/TranslationHelper.html).
31
+
32
+ #### root_url
33
+
34
+ Use in your views to generate a "root" url for your site by adding the protocol hostname (looked up as "hostname" in your locale .yml file).
35
+
36
+ ### asset support
37
+
38
+ All files in the css, images and js folders will be fingerprinted with MD5 digests of the source content (allowing simpler use with caching or CDNs).
39
+
40
+ ### asset helpers
41
+
42
+ In addition to compiling the fingerprinted asset files, helper methods have been added for use in views and in sass/scss.
43
+
44
+ #### asset_path(file)
45
+
46
+ Similar to the Rails asset_path helper, the specified path will be expanded to the fingerprinted version.
47
+
48
+ #### asset_url(file)
49
+
50
+ Similar to the preceding asset_path helper, the specified path will be expanded to the fingerprinted version and will be prepended with the protocol and hostname (as provided by the root_url helper above).
51
+
52
+ #### asset-url(file)
53
+
54
+ Similar to the asset_path helper, but the path is rendered for css use (ie. wrapped in `url(...)`).
22
55
 
23
56
  ## Contributing
24
57
 
data/Rakefile CHANGED
@@ -5,7 +5,7 @@ desc "Run all specs"
5
5
  RSpec::Core::RakeTask.new do |t|
6
6
  t.verbose = false
7
7
  t.pattern = ['spec/**/*_spec.rb']
8
- t.rspec_opts = ['--options', 'spec/spec.opts']
8
+ t.rspec_opts = ['--color', '--format', 'doc']
9
9
  end
10
10
 
11
11
  task :default => [:spec]
@@ -10,6 +10,10 @@ class Stasis
10
10
  reset
11
11
  end
12
12
 
13
+ def assets
14
+ @assets
15
+ end
16
+
13
17
  def before_all
14
18
  define_helpers
15
19
  fingerprint_assets
@@ -27,10 +31,6 @@ class Stasis
27
31
 
28
32
  protected
29
33
 
30
- def assets
31
- @assets
32
- end
33
-
34
34
  def define_helpers
35
35
  @stasis.controller.helpers do
36
36
  def asset_path(path)
@@ -51,7 +51,7 @@ class Stasis
51
51
  end
52
52
 
53
53
  def fingerprint_assets
54
- Dir['{css,images,js}/**/*'].each do |source|
54
+ Dir["{css,images,js}/**/*"].each do |source|
55
55
  next unless File.file?(source)
56
56
  fingerprint_asset(source)
57
57
  end
@@ -71,14 +71,3 @@ class Stasis
71
71
  end
72
72
  end
73
73
  end
74
-
75
- Stasis.register Stasis::Extensions::Assets
76
-
77
- module Sass::Script::Functions
78
- def asset_url(path)
79
- assert_type path, :String
80
- Sass::Script::String.new("url(#{options[:asset_resolver].resolve_path(path.value, File.dirname(options[:original_filename]))})")
81
- end
82
-
83
- declare :asset_url, :args => [:string]
84
- end
@@ -42,15 +42,15 @@ class Stasis
42
42
  relative_path.sub(/\.\w+(\.(?:erb|haml|scss))?$/, '').split('/')
43
43
  end
44
44
 
45
- def t(*args)
45
+ def translate(*args)
46
46
  options = args.last.is_a?(Hash) ? args.pop : {}
47
47
  options[:scope] ||= scope
48
48
  ::I18n.translate(*args, options)
49
49
  end
50
+
51
+ alias_method :t, :translate
50
52
  end
51
53
  end
52
54
  end
53
55
  end
54
56
  end
55
-
56
- Stasis.register Stasis::Extensions::I18n
@@ -0,0 +1,10 @@
1
+ require 'sass'
2
+
3
+ module Sass::Script::Functions
4
+ def asset_url(path)
5
+ assert_type path, :String
6
+ Sass::Script::String.new("url(#{options[:asset_resolver].resolve_path(path.value, File.dirname(options[:original_filename]))})")
7
+ end
8
+
9
+ declare :asset_url, :args => [:string]
10
+ end
@@ -1,5 +1,5 @@
1
1
  class Stasis
2
2
  module Extensions
3
- VERSION = "0.0.2"
3
+ VERSION = "1.0.0"
4
4
  end
5
5
  end
@@ -1,4 +1,9 @@
1
- require "stasis/extensions/version"
1
+ require 'stasis'
2
+ require 'stasis/extensions/version'
2
3
 
3
4
  require 'stasis/extensions/assets'
4
5
  require 'stasis/extensions/i18n'
6
+ require 'stasis/extensions/sass'
7
+
8
+ Stasis.register Stasis::Extensions::Assets
9
+ Stasis.register Stasis::Extensions::I18n
@@ -0,0 +1 @@
1
+ = asset_path('/images/stasis.png')
@@ -0,0 +1 @@
1
+ = asset_url('/images/stasis.png')
@@ -0,0 +1,5 @@
1
+ en:
2
+ hostname: 'example.com'
3
+ i18n:
4
+ t:
5
+ hello: 'Hello'
@@ -0,0 +1 @@
1
+ ignore %r"/config"
@@ -0,0 +1,3 @@
1
+ #stasis {
2
+ background: asset-url('../images/stasis.png');
3
+ }
@@ -0,0 +1 @@
1
+ #stasis { color: black; }
@@ -0,0 +1 @@
1
+ = body_class
@@ -0,0 +1 @@
1
+ = root_url
@@ -0,0 +1 @@
1
+ = t('.hello')
@@ -0,0 +1 @@
1
+ var image_path = '<%= asset_path("/images/stasis.png") %>'
@@ -0,0 +1 @@
1
+ var simple = 'simple';
@@ -0,0 +1,118 @@
1
+ require 'spec_helper'
2
+
3
+ describe Stasis::Extensions::Assets do
4
+
5
+ let(:project_folder) { File.expand_path('../../../../fixtures/project', __FILE__) }
6
+ let(:stasis) { Stasis.new(project_folder) }
7
+
8
+ describe "an instance of the plugin" do
9
+ before do
10
+ @plugin = Stasis::Extensions::Assets.new(stasis)
11
+ end
12
+
13
+ it "should have an empty assets Hash" do
14
+ expect(@plugin.assets).to eq({})
15
+ end
16
+
17
+ describe "#reset" do
18
+ it "should empty the assets Hash" do
19
+ @plugin.assets['test'] = 'test'
20
+ @plugin.reset
21
+ expect(@plugin.assets).to eq({})
22
+ end
23
+ end
24
+
25
+ describe "#before_all" do
26
+ before do
27
+ @plugin.before_all
28
+ end
29
+
30
+ it "should fingerprint css" do
31
+ expect(@plugin.assets).to include('css/simple.css')
32
+ expect(@plugin.assets['css/simple.css']).to eq("css/simple-#{digest_for('css/simple.css')}.css")
33
+ end
34
+
35
+ it "should fingerprint scss" do
36
+ expect(@plugin.assets).to include('css/compiled.css')
37
+ expect(@plugin.assets['css/compiled.css']).to eq("css/compiled-#{digest_for('css/compiled.css.scss')}.css")
38
+ end
39
+
40
+ it "should fingerprint images" do
41
+ expect(@plugin.assets).to include('images/stasis.png')
42
+ expect(@plugin.assets['images/stasis.png']).to eq("images/stasis-#{digest_for('images/stasis.png')}.png")
43
+ end
44
+
45
+ it "should fingerprint js" do
46
+ expect(@plugin.assets).to include('js/simple.js')
47
+ expect(@plugin.assets['js/simple.js']).to eq("js/simple-#{digest_for('js/simple.js')}.js")
48
+ end
49
+
50
+ it "should fingerprint erb" do
51
+ expect(@plugin.assets).to include('js/compiled.js')
52
+ expect(@plugin.assets['js/compiled.js']).to eq("js/compiled-#{digest_for('js/compiled.js.erb')}.js")
53
+ end
54
+ end
55
+ end
56
+
57
+ describe "when rendered" do
58
+ describe "the rendered assets" do
59
+ before do
60
+ stasis_render
61
+ end
62
+
63
+ it "should include css" do
64
+ expect(file_for("public/css/simple.css")).to exist
65
+ end
66
+
67
+ it "should include scss" do
68
+ expect(file_for("public/css/compiled.css")).to exist
69
+ end
70
+
71
+ it "should include images" do
72
+ expect(file_for("public/images/stasis.png")).to exist
73
+ end
74
+
75
+ it "should include js" do
76
+ expect(file_for("public/js/simple.js")).to exist
77
+ end
78
+
79
+ it "should include erb" do
80
+ expect(file_for("public/js/compiled.js")).to exist
81
+ end
82
+
83
+ it "should include fingerprinted css" do
84
+ expect(file_for("public/css/simple-#{digest_for('css/simple.css')}.css")).to exist
85
+ end
86
+
87
+ it "should include fingerprinted scss" do
88
+ expect(file_for("public/css/compiled-#{digest_for('css/compiled.css.scss')}.css")).to exist
89
+ end
90
+
91
+ it "should include fingerprinted images" do
92
+ expect(file_for("public/images/stasis-#{digest_for('images/stasis.png')}.png")).to exist
93
+ end
94
+
95
+ it "should include fingerprinted js" do
96
+ expect(file_for("public/js/simple-#{digest_for('js/simple.js')}.js")).to exist
97
+ end
98
+
99
+ it "should include fingerprinted erb" do
100
+ expect(file_for("public/js/compiled-#{digest_for('js/compiled.js.erb')}.js")).to exist
101
+ end
102
+ end
103
+
104
+ describe "#asset_path" do
105
+ it "should render the asset path" do
106
+ stasis_render 'assets/asset_path.haml'
107
+ expect(contents_of('public/assets/asset_path')).to eq("/images/stasis-#{digest_for('images/stasis.png')}.png")
108
+ end
109
+ end
110
+
111
+ describe "#asset_url" do
112
+ it "should render the asset url" do
113
+ stasis_render 'assets/asset_url.haml'
114
+ expect(contents_of('public/assets/asset_url')).to eq("http://example.com/images/stasis-#{digest_for('images/stasis.png')}.png")
115
+ end
116
+ end
117
+ end
118
+ end
@@ -0,0 +1,86 @@
1
+ require 'spec_helper'
2
+
3
+ describe Stasis::Extensions::I18n do
4
+
5
+ let(:project_folder) { File.expand_path('../../../../fixtures/project', __FILE__) }
6
+ let(:stasis) { Stasis.new(project_folder) }
7
+
8
+ describe "an instance of the plugin" do
9
+ before do
10
+ @plugin = Stasis::Extensions::I18n.new(stasis)
11
+ end
12
+
13
+ it "should set the I18n load_path" do
14
+ expect(::I18n.load_path).to include(project_path('config/locales/en.yml'))
15
+ end
16
+
17
+ it "should set the default locale" do
18
+ expect(::I18n.default_locale).to eq(:en)
19
+ end
20
+
21
+ it "should load the translations" do
22
+ expect(::I18n.translate('i18n.t.hello')).to eq('Hello')
23
+ end
24
+
25
+ describe "#reset" do
26
+ it "should set the I18n load_path" do
27
+ ::I18n.load_path = []
28
+ expect(::I18n.load_path).to_not include(project_path('config/locales/en.yml'))
29
+ @plugin.reset
30
+ expect(::I18n.load_path).to include(project_path('config/locales/en.yml'))
31
+ end
32
+
33
+ it "should set the default locale" do
34
+ ::I18n.default_locale = :fr
35
+ expect(::I18n.default_locale).to eq(:fr)
36
+ @plugin.reset
37
+ expect(::I18n.default_locale).to eq(:en)
38
+ end
39
+
40
+ it "should reload the translations" do
41
+ expect(::I18n.translate('i18n.t.hello')).to eq('Hello')
42
+ ::I18n.backend.store_translations('en', 'i18n' => {'t' => {'hello' => 'Hi'}})
43
+ expect(::I18n.translate('i18n.t.hello')).to eq('Hi')
44
+ @plugin.reset
45
+ expect(::I18n.translate('i18n.t.hello')).to eq('Hello')
46
+ end
47
+ end
48
+
49
+ describe "#before_all" do
50
+ it "should use the default locale" do
51
+ ::I18n.default_locale = :de
52
+ @plugin.before_all
53
+ expect(::I18n.locale).to eq(:de)
54
+ end
55
+
56
+ it "should use the locale in the LOCALE environment variable" do
57
+ ENV.stub(:[]).with('LOCALE').and_return('es')
58
+ @plugin.before_all
59
+ expect(::I18n.locale).to eq(:es)
60
+ end
61
+ end
62
+ end
63
+
64
+ describe "when rendered" do
65
+ describe "#body_class" do
66
+ it "should render the locale and the view name" do
67
+ stasis_render 'i18n/body_class.haml'
68
+ expect(contents_of('public/i18n/body_class')).to eq([:en, "body_class"].inspect)
69
+ end
70
+ end
71
+
72
+ describe "#root_url" do
73
+ it "should render the url" do
74
+ stasis_render 'i18n/root_url.haml'
75
+ expect(contents_of('public/i18n/root_url')).to eq('http://example.com')
76
+ end
77
+ end
78
+
79
+ describe "#t" do
80
+ it "should render the value" do
81
+ stasis_render 'i18n/t.haml'
82
+ expect(contents_of('public/i18n/t')).to eq('Hello')
83
+ end
84
+ end
85
+ end
86
+ end
@@ -0,0 +1,16 @@
1
+ require 'spec_helper'
2
+
3
+ describe Sass::Script::Functions do
4
+
5
+ let(:project_folder) { File.expand_path('../../../../fixtures/project', __FILE__) }
6
+ let(:stasis) { Stasis.new(project_folder) }
7
+
8
+ describe "when scss is rendered" do
9
+ describe "#asset-path" do
10
+ it "should render the asset path" do
11
+ stasis_render 'css/compiled.css.scss'
12
+ expect(contents_of('public/css/compiled.css')).to include("url(/images/stasis-#{digest_for('images/stasis.png')}.png)")
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,11 @@
1
+ require 'spec_helper'
2
+
3
+ describe Stasis::Extensions do
4
+ it "should register the Assets plugin" do
5
+ expect(Stasis::Plugin.plugins).to include(Stasis::Extensions::Assets)
6
+ end
7
+
8
+ it "should register the I18n plugin" do
9
+ expect(Stasis::Plugin.plugins).to include(Stasis::Extensions::I18n)
10
+ end
11
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,8 +1,46 @@
1
+ require 'simplecov'
2
+
3
+ SimpleCov.start do
4
+ add_filter '/test/'
5
+ add_filter '/features/'
6
+ add_filter '/spec/'
7
+ add_filter '/autotest/'
8
+
9
+ add_group 'Binaries', '/bin/'
10
+ add_group 'Libraries', '/lib/'
11
+ add_group 'Extensions', '/ext/'
12
+ add_group 'Vendor Libraries', '/vendor/'
13
+ end
14
+
1
15
  require 'rubygems'
2
16
  require 'bundler/setup'
3
17
 
18
+ require 'stasis'
19
+ require 'stasis/extensions'
20
+
4
21
  Bundler.require(:default)
5
22
 
6
23
  SPEC_DIR = File.dirname(__FILE__)
7
24
 
8
- require 'stasis/extensions'
25
+ def contents_of(asset)
26
+ File.read(project_path(asset)).chomp
27
+ end
28
+
29
+ def digest_for(asset)
30
+ Digest::MD5.file project_path(asset)
31
+ end
32
+
33
+ def file_for(asset)
34
+ Pathname.new(project_path(asset))
35
+ end
36
+
37
+ def project_path(file)
38
+ File.expand_path(file, project_folder)
39
+ end
40
+
41
+ def stasis_render(*only)
42
+ wd = Dir.getwd
43
+ stasis.render *only
44
+ ensure
45
+ Dir.chdir(wd)
46
+ end
@@ -18,7 +18,15 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
+ spec.add_dependency "i18n"
22
+ spec.add_dependency "sass"
23
+ spec.add_dependency "stasis"
24
+
21
25
  spec.add_development_dependency "bundler", "~> 1.3"
26
+ spec.add_development_dependency "guard"
27
+ spec.add_development_dependency "guard-rspec"
28
+ spec.add_development_dependency "haml"
22
29
  spec.add_development_dependency "rake"
23
30
  spec.add_development_dependency "rspec"
31
+ spec.add_development_dependency "simplecov"
24
32
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stasis-extensions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 1.0.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,8 +9,56 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-11-23 00:00:00.000000000 Z
12
+ date: 2013-11-24 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: i18n
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: sass
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: stasis
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
14
62
  - !ruby/object:Gem::Dependency
15
63
  name: bundler
16
64
  requirement: !ruby/object:Gem::Requirement
@@ -27,6 +75,54 @@ dependencies:
27
75
  - - ~>
28
76
  - !ruby/object:Gem::Version
29
77
  version: '1.3'
78
+ - !ruby/object:Gem::Dependency
79
+ name: guard
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: guard-rspec
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: haml
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
30
126
  - !ruby/object:Gem::Dependency
31
127
  name: rake
32
128
  requirement: !ruby/object:Gem::Requirement
@@ -59,6 +155,22 @@ dependencies:
59
155
  - - ! '>='
60
156
  - !ruby/object:Gem::Version
61
157
  version: '0'
158
+ - !ruby/object:Gem::Dependency
159
+ name: simplecov
160
+ requirement: !ruby/object:Gem::Requirement
161
+ none: false
162
+ requirements:
163
+ - - ! '>='
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
166
+ type: :development
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
62
174
  description: plugin(s) for stasis providing i18n support and asset fingerprinting
63
175
  email:
64
176
  - brent.faulkner@mosaic.com
@@ -67,14 +179,34 @@ extensions: []
67
179
  extra_rdoc_files: []
68
180
  files:
69
181
  - .gitignore
182
+ - .travis.yml
70
183
  - Gemfile
184
+ - Guardfile
71
185
  - LICENSE.txt
72
186
  - README.md
73
187
  - Rakefile
74
188
  - lib/stasis/extensions.rb
75
189
  - lib/stasis/extensions/assets.rb
76
190
  - lib/stasis/extensions/i18n.rb
191
+ - lib/stasis/extensions/sass.rb
77
192
  - lib/stasis/extensions/version.rb
193
+ - spec/fixtures/project/assets/asset_path.haml
194
+ - spec/fixtures/project/assets/asset_url.haml
195
+ - spec/fixtures/project/config/locales/en.yml
196
+ - spec/fixtures/project/controller.rb
197
+ - spec/fixtures/project/css/.sass-cache/5c363f5deb88bb376880318aed5e301825a18d6e/compiled.css.scssc
198
+ - spec/fixtures/project/css/compiled.css.scss
199
+ - spec/fixtures/project/css/simple.css
200
+ - spec/fixtures/project/i18n/body_class.haml
201
+ - spec/fixtures/project/i18n/root_url.haml
202
+ - spec/fixtures/project/i18n/t.haml
203
+ - spec/fixtures/project/images/stasis.png
204
+ - spec/fixtures/project/js/compiled.js.erb
205
+ - spec/fixtures/project/js/simple.js
206
+ - spec/lib/stasis/extensions/assets_spec.rb
207
+ - spec/lib/stasis/extensions/i18n_spec.rb
208
+ - spec/lib/stasis/extensions/sass_spec.rb
209
+ - spec/lib/stasis/extensions_spec.rb
78
210
  - spec/spec_helper.rb
79
211
  - stasis-extensions.gemspec
80
212
  homepage: http://github.com/mosaicxm/stasis-extensions
@@ -92,7 +224,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
92
224
  version: '0'
93
225
  segments:
94
226
  - 0
95
- hash: -3445959049053357032
227
+ hash: -798725933815868513
96
228
  required_rubygems_version: !ruby/object:Gem::Requirement
97
229
  none: false
98
230
  requirements:
@@ -101,7 +233,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
101
233
  version: '0'
102
234
  segments:
103
235
  - 0
104
- hash: -3445959049053357032
236
+ hash: -798725933815868513
105
237
  requirements: []
106
238
  rubyforge_project:
107
239
  rubygems_version: 1.8.23
@@ -109,4 +241,21 @@ signing_key:
109
241
  specification_version: 3
110
242
  summary: plugin(s) for stasis providing i18n support and asset fingerprinting
111
243
  test_files:
244
+ - spec/fixtures/project/assets/asset_path.haml
245
+ - spec/fixtures/project/assets/asset_url.haml
246
+ - spec/fixtures/project/config/locales/en.yml
247
+ - spec/fixtures/project/controller.rb
248
+ - spec/fixtures/project/css/.sass-cache/5c363f5deb88bb376880318aed5e301825a18d6e/compiled.css.scssc
249
+ - spec/fixtures/project/css/compiled.css.scss
250
+ - spec/fixtures/project/css/simple.css
251
+ - spec/fixtures/project/i18n/body_class.haml
252
+ - spec/fixtures/project/i18n/root_url.haml
253
+ - spec/fixtures/project/i18n/t.haml
254
+ - spec/fixtures/project/images/stasis.png
255
+ - spec/fixtures/project/js/compiled.js.erb
256
+ - spec/fixtures/project/js/simple.js
257
+ - spec/lib/stasis/extensions/assets_spec.rb
258
+ - spec/lib/stasis/extensions/i18n_spec.rb
259
+ - spec/lib/stasis/extensions/sass_spec.rb
260
+ - spec/lib/stasis/extensions_spec.rb
112
261
  - spec/spec_helper.rb