opal-rails 0.6.3 → 0.7.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e0661ea0ba30536cdab789f56ae7d2d408c48708
4
- data.tar.gz: 3bd276dfe1b426bed1810b66d1d7993f85243a1d
3
+ metadata.gz: 93600a56e4e829b286435ad7d9128b4de010ae82
4
+ data.tar.gz: a1014b6a9bc0dc0e2e67522899fb25d56e57e67f
5
5
  SHA512:
6
- metadata.gz: 9cc46ffcde2aadc54905318e3ce4a4971074bed6f1f09d93485e8c41a9904fee236baaea18dcc536601a1b8d1849bb67cec2297a2a5f890c3bfca3130d6f17a7
7
- data.tar.gz: 4faa926734875dc91bc1ead1cfc53d992ff1c7e5c83784cd9d0bbcd1157a71f1cd61f3107f682df315d7c8927f8e0ca0320b0e67a839c82fc1fe5864186be247
6
+ metadata.gz: 581b2e6682dd7ba8c4e46c81ee3336d747729636b49a1859624e765024734c14a9dc9adb40a56fea313bcaee51c81c62f5dd124c4f6a1f74ad351620db110db7
7
+ data.tar.gz: 3a8f9269c84a84ce358384e903784ddd010b08135bd181ced7de8f08bc54a91cfd62f96fb8fff2b678d29bae3eba2542f4693360bd3e847ae8f814bb4a525dff
data/.travis.yml CHANGED
@@ -2,7 +2,6 @@ language: ruby
2
2
  cache: bundler
3
3
 
4
4
  rvm:
5
- - 1.8.7
6
5
  - 1.9.3
7
6
  - 2.0.0
8
7
  - 2.1.1
data/Gemfile CHANGED
@@ -2,15 +2,10 @@ source 'https://rubygems.org'
2
2
  gemspec
3
3
 
4
4
  gem 'capybara-webkit'
5
- gem 'capybara', '< 2'
6
-
7
- # gem 'opal', :github => 'opal/opal'
8
- gem 'opal-jquery', :github => 'opal/opal-jquery'
9
-
10
- # gem 'opal', :path => '~/Code/opal'
11
- # gem 'opal-jquery', :path => '~/Code/opal-jquery'
12
- # gem 'opal-rspec', :path => '~/Code/opal-rspec'
13
- # gem 'opal-browser', :path => '~/Code/opal-browser'
5
+ gem 'opal-jquery', github: 'opal/opal-jquery'
6
+ gem 'opal', github: 'opal'
7
+ # gem 'opal-jquery', path: '../opal-jquery'
8
+ # gem 'opal', path: '../opal'
14
9
 
15
10
  if RUBY_VERSION.to_f < 1.9
16
11
  gem 'nokogiri', '< 1.6'
data/README.md CHANGED
@@ -1,9 +1,10 @@
1
1
  # Opal Rails
2
2
 
3
- [![Build Status](https://secure.travis-ci.org/elia/opal-rails.png)](http://travis-ci.org/elia/opal-rails)
4
- [![Code Climate](https://codeclimate.com/github/elia/opal-rails.png)](https://codeclimate.com/github/elia/opal-rails)
5
- [![Gem Version](https://badge.fury.io/rb/opal-rails.png)](http://badge.fury.io/rb/opal-rails)
6
- ![fun guaranteed](http://b.repl.ca/v1/fun-guaranteed-brightgreen.png)
3
+ [![Build Status](https://secure.travis-ci.org/elia/opal-rails.svg)](http://travis-ci.org/elia/opal-rails)
4
+ [![Code Climate](https://img.shields.io/codeclimate/github/elia/opal-rails.svg)](https://codeclimate.com/github/elia/opal-rails)
5
+ [![Gem Version](https://badge.fury.io/rb/opal-rails.svg)](http://badge.fury.io/rb/opal-rails)
6
+ ![fun guaranteed](https://img.shields.io/badge/fun-guaranteed-brightgreen.svg)
7
+ ![web scale](http://img.shields.io/badge/webscale-over%209000-green.svg)
7
8
 
8
9
  _Rails (3.2+, 4.0) bindings for [Opal Ruby](http://opalrb.org) engine. ([Changelog](https://github.com/opal/opal-rails/blob/master/CHANGELOG.md))_
9
10
 
@@ -13,7 +14,7 @@ _Rails (3.2+, 4.0) bindings for [Opal Ruby](http://opalrb.org) engine. ([Changel
13
14
 
14
15
  In your `Gemfile`
15
16
 
16
- ``` ruby
17
+ ```ruby
17
18
  gem 'opal-rails'
18
19
  ```
19
20
 
@@ -73,7 +74,9 @@ puts "G'day world!" # check the console!
73
74
  # Dom manipulation
74
75
  require 'opal-jquery'
75
76
 
76
- Element.find('body > header').html = '<h1>Hi there!</h1>'
77
+ Document.ready? do
78
+ Element.find('body > header').html = '<h1>Hi there!</h1>'
79
+ end
77
80
  ```
78
81
 
79
82
 
@@ -148,14 +151,14 @@ describe 'a spec' do
148
151
  end
149
152
  ```
150
153
 
151
- Then visit `/opal_spec` from your app and **reload at will**.
154
+ Then visit `/opal_spec` from your app and **reload at will** or use the command line with `rake opal:spec`.
152
155
 
153
156
  ![1 examples, 0 failures](http://f.cl.ly/items/001n0V0g0u0v14160W2G/Schermata%2007-2456110%20alle%201.06.29%20am.png)
154
157
 
155
158
 
156
159
  ## License
157
160
 
158
- © 2012-2013 Elia Schito
161
+ © 2012-2014 Elia Schito
159
162
 
160
163
  Permission is hereby granted, free of charge, to any person obtaining a copy
161
164
  of this software and associated documentation files (the "Software"), to deal
data/Rakefile CHANGED
@@ -11,3 +11,4 @@ Bundler::GemHelper.install_tasks
11
11
 
12
12
  require 'rspec/core/rake_task'
13
13
  RSpec::Core::RakeTask.new :default
14
+
@@ -1,6 +1,5 @@
1
- require 'jquery'
2
-
3
1
  require 'opal'
2
+ require 'jquery'
4
3
  require 'opal-rspec'
5
4
  require 'opal-jquery'
6
5
 
@@ -1,4 +1,4 @@
1
- require 'opal'
2
1
  require 'jquery'
3
2
  require 'jquery_ujs'
3
+ require 'opal'
4
4
  require 'opal-jquery'
@@ -26,6 +26,7 @@ module Opal
26
26
 
27
27
  config.after_initialize do |app|
28
28
  require 'opal/rails/haml_filter' if defined?(Haml)
29
+ require 'opal/rails/slim_filter' if defined?(Slim)
29
30
 
30
31
  config = app.config
31
32
  config.opal.each_pair do |key, value|
@@ -35,8 +36,9 @@ module Opal
35
36
 
36
37
  app.routes.prepend do
37
38
  if Opal::Processor.source_map_enabled
38
- maps_app = Opal::SourceMapServer.new(app.assets)
39
- mount maps_app => maps_app.prefix
39
+ prefix = app.config.assets.prefix
40
+ maps_app = Opal::SourceMapServer.new(app.assets, prefix)
41
+ mount Rack::Cascade.new([maps_app, app.assets]) => prefix
40
42
  end
41
43
 
42
44
  get '/opal_spec' => 'opal_spec#run'
@@ -0,0 +1,12 @@
1
+ module Slim
2
+ class Embedded
3
+ class OpalEngine < TiltEngine
4
+ protected
5
+
6
+ def tilt_render(tilt_engine, tilt_options, text)
7
+ [:static, ::Opal.compile(text)]
8
+ end
9
+ end
10
+ register :opal, JavaScriptEngine, :engine => OpalEngine
11
+ end
12
+ end if defined? Slim::Embedded
@@ -1,5 +1,5 @@
1
1
  module Opal
2
2
  module Rails
3
- VERSION = '0.6.3'
3
+ VERSION = '0.7.0.beta1'
4
4
  end
5
5
  end
@@ -0,0 +1,20 @@
1
+ require 'rails/generators/named_base'
2
+ require 'rails/generators/resource_helpers'
3
+
4
+ module Opal
5
+ module Generators
6
+ class AssetsGenerator < ::Rails::Generators::NamedBase
7
+ include ::Rails::Generators::ResourceHelpers
8
+ source_root __dir__+'/templates'
9
+
10
+ def initialize(*args)
11
+ ::Rails::Generators::ModelHelpers.skip_warn = true
12
+ super
13
+ end
14
+
15
+ def copy_opal
16
+ template 'javascript.js.rb', File.join('app/assets/javascripts', class_path, "#{file_name}_view.js.rb")
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,42 @@
1
+ # Place all the behaviors and hooks related to the matching controller here.
2
+ # All this logic will automatically be available in application.js.
3
+ # You can use Opal in this file: http://opalrb.org/
4
+ #
5
+ #
6
+ # Here's an example view class for your controller:
7
+ #
8
+ <% if namespaced? -%>
9
+ #= require opal
10
+ #= require <%= namespaced_file_path %>
11
+
12
+ <% end -%>
13
+ <% module_namespacing do -%>
14
+ class <%= controller_class_name %>View
15
+ def initialize(selector = 'body.controller-<%= controller_class_name.underscore %>', parent = Element)
16
+ @element = parent.find(selector)
17
+ setup
18
+ end
19
+ attr_reader :element
20
+
21
+ def setup
22
+ # Put here the setup for the view behavior
23
+ say_hello_when_a_link_is_clicked
24
+ end
25
+
26
+ def say_hello_when_a_link_is_clicked
27
+ all_links.on :click do |event|
28
+ # Use prevent_default to stop default behavior (as you would do in jQuery)
29
+ # event.prevent_default
30
+
31
+ puts "Hello! (You just clicked on a link: #{event.current_target.text})"
32
+ end
33
+ end
34
+
35
+
36
+ private
37
+
38
+ def all_links
39
+ @all_links ||= element.find('a')
40
+ end
41
+ end
42
+ <% end -%>
data/opal-rails.gemspec CHANGED
@@ -19,17 +19,17 @@ Gem::Specification.new do |s|
19
19
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
20
  s.require_paths = ['lib']
21
21
 
22
- s.add_dependency 'rails', '>= 3.2.13', '< 5.0'
23
- s.add_dependency 'opal', '~> 0.6.0'
24
- s.add_dependency 'opal-jquery', '>= 0.1.0'
25
- s.add_dependency 'opal-rspec', '~> 0.3.0.beta1'
22
+ required_ruby_version = '>= 1.9.3'
23
+
24
+ s.add_dependency 'rails', '>= 3.2', '< 5.0'
25
+ s.add_dependency 'opal', '~> 0.7.0.beta1'
26
+ s.add_dependency 'opal-jquery', '~> 0.3.0.beta1'
27
+ s.add_dependency 'opal-rspec', '~> 0.4.0.beta3'
26
28
  s.add_dependency 'jquery-rails'
27
29
  s.add_dependency 'opal-activesupport', '>= 0.0.5'
28
30
 
29
31
  s.add_development_dependency 'execjs'
30
32
  s.add_development_dependency 'launchy'
31
- s.add_development_dependency 'capybara'
32
-
33
- s.add_development_dependency 'rspec', '~> 2.13'
34
- s.add_development_dependency 'rspec-rails', '~> 2.13'
33
+ s.add_development_dependency 'capybara', '~> 2.3'
34
+ s.add_development_dependency 'rspec-rails', '~> 3.0'
35
35
  end
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- feature 'In-browser specs runner', :type => :request do
3
+ feature 'In-browser specs runner' do
4
4
  scenario 'runs all specs', :js do
5
5
  visit '/opal_spec'
6
6
 
@@ -2,34 +2,40 @@ require 'spec_helper'
2
2
  require 'opal/source_map'
3
3
 
4
4
  describe Opal::SourceMap do
5
+ let(:js_asset_path) { '/assets/source_map_example.js' }
6
+
5
7
  before do
6
- expect(Rails.application.config.opal.source_map_enabled).to be_true
7
- get '/assets/source_map_example.js'
8
+ expect(Rails.application.config.opal.source_map_enabled).to be_truthy
9
+ get js_asset_path
8
10
  end
9
11
 
10
- let(:map_url) { extract_map_url(response) }
12
+ let(:map_path) { extract_map_path(response) }
11
13
 
12
14
  let(:map_body) do
13
- get map_url
14
- raise "#{response.status}\n\n#{response.body}" unless response.success?
15
+ get map_path
16
+ expect(response).to be_success, "url: #{map_path}\nstatus: #{response.status}"
15
17
  response.body
16
18
  end
17
19
 
18
20
  let(:map) { JSON.parse(map_body) }
19
21
 
20
22
  it 'has the source map header or magic comment' do
21
- expect(extract_map_url(response)).to be_present
23
+ expect(extract_map_path(response)).to be_present
22
24
  end
23
25
 
24
26
  it "the map is a valid json" do
27
+ get map_path
25
28
  %w[sources mappings].each do |key|
26
29
  expect(map_body[key]).to be_present
27
30
  end
28
31
  end
29
32
 
30
- def extract_map_url response
31
- response.headers['X-SourceMap'] or
32
- response.body.scan(%r{^//[@#] sourceMappingURL=([^\n]+)}).flatten.first.to_s.strip
33
+ def extract_map_path response
34
+ source_map_regexp = %r{^//[@#] sourceMappingURL=([^\n]+)}
35
+ map_path = (response.headers['X-SourceMap'] ||
36
+ response.body.scan(source_map_regexp).
37
+ flatten.first.to_s.strip)
38
+ File.join(File.dirname(js_asset_path), map_path) if map_path
33
39
  end
34
40
 
35
41
  end
data/spec/spec_helper.rb CHANGED
@@ -13,27 +13,98 @@ require 'opal-rails'
13
13
  ENV['RAILS_ENV'] = 'test'
14
14
 
15
15
  require File.expand_path('test_app/config/environment.rb', root_dir)
16
+
16
17
  require 'rspec/rails'
18
+ require 'support/capybara'
19
+ require 'support/reset_assets_cache'
17
20
 
18
21
  Rails.backtrace_cleaner.remove_silencers!
19
22
 
23
+ # This file was generated by the `rspec --init` command. Conventionally, all
24
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
25
+ # The generated `.rspec` file contains `--require spec_helper` which will cause this
26
+ # file to always be loaded, without a need to explicitly require it in any files.
27
+ #
28
+ # Given that it is always loaded, you are encouraged to keep this file as
29
+ # light-weight as possible. Requiring heavyweight dependencies from this file
30
+ # will add to the boot time of your test suite on EVERY test run, even for an
31
+ # individual file that may not need all of that loaded. Instead, consider making
32
+ # a separate helper file that requires the additional dependencies and performs
33
+ # the additional setup, and require it from the spec files that actually need it.
34
+ #
35
+ # The `.rspec` file also contains a few flags that are not defaults but that
36
+ # users commonly want.
37
+ #
38
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
39
+ RSpec.configure do |config|
40
+ config.infer_spec_type_from_file_location!
20
41
 
21
- # RSPEC
22
-
23
- # Requires supporting ruby files with custom matchers and macros, etc,
24
- # in spec/support/ and its subdirectories.
25
- Dir[File.expand_path('spec/support/**/*.rb', root_dir)].each {|f| require f}
42
+ # rspec-expectations config goes here. You can use an alternate
43
+ # assertion/expectation library such as wrong or the stdlib/minitest
44
+ # assertions if you prefer.
45
+ config.expect_with :rspec do |expectations|
46
+ # This option will default to `true` in RSpec 4. It makes the `description`
47
+ # and `failure_message` of custom matchers include text for helper methods
48
+ # defined using `chain`, e.g.:
49
+ # be_bigger_than(2).and_smaller_than(4).description
50
+ # # => "be bigger than 2 and smaller than 4"
51
+ # ...rather than:
52
+ # # => "be bigger than 2"
53
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
54
+ expectations.syntax = [:expect, :should]
55
+ end
26
56
 
27
- RSpec.configure do |config|
28
- config.mock_with :rspec
57
+ # rspec-mocks config goes here. You can use an alternate test double
58
+ # library (such as bogus or mocha) by changing the `mock_with` option here.
59
+ config.mock_with :rspec do |mocks|
60
+ # Prevents you from mocking or stubbing a method that does not exist on
61
+ # a real object. This is generally recommended, and will default to
62
+ # `true` in RSpec 4.
63
+ mocks.verify_partial_doubles = true
64
+ end
29
65
 
30
- config.treat_symbols_as_metadata_keys_with_true_values = true
31
- config.run_all_when_everything_filtered = true
66
+ # These two settings work together to allow you to limit a spec run
67
+ # to individual examples or groups you care about by tagging them with
68
+ # `:focus` metadata. When nothing is tagged with `:focus`, all examples
69
+ # get run.
32
70
  config.filter_run :focus
71
+ config.run_all_when_everything_filtered = true
72
+
73
+ # Limits the available syntax to the non-monkey patched syntax that is recommended.
74
+ # For more details, see:
75
+ # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
76
+ # - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
77
+ # - http://myronmars.to/n/dev-blog/2014/05/notable-changes-in-rspec-3#new__config_option_to_disable_rspeccore_monkey_patching
78
+ # config.disable_monkey_patching!
79
+
80
+ # This setting enables warnings. It's recommended, but in some cases may
81
+ # be too noisy due to issues in dependencies.
82
+ config.warnings = false
83
+
84
+ # Many RSpec users commonly either run the entire suite or an individual
85
+ # file, and it's useful to allow more verbose output when running an
86
+ # individual spec file.
87
+ if config.files_to_run.one?
88
+ # Use the documentation formatter for detailed output,
89
+ # unless a formatter has already been configured
90
+ # (e.g. via a command-line flag).
91
+ config.default_formatter = 'doc'
92
+ end
93
+
94
+ # Print the 10 slowest examples and example groups at the
95
+ # end of the spec run, to help surface which specs are running
96
+ # particularly slow.
97
+ config.profile_examples = 2
33
98
 
34
99
  # Run specs in random order to surface order dependencies. If you find an
35
100
  # order dependency and want to debug it, you can fix the order by providing
36
101
  # the seed, which is printed after each run.
37
102
  # --seed 1234
38
- config.order = 'random'
103
+ config.order = :random
104
+
105
+ # Seed global randomization in this process using the `--seed` CLI option.
106
+ # Setting this allows you to use `--seed` to deterministically reproduce
107
+ # test failures related to randomization by passing the same `--seed` value
108
+ # as the one that triggered the failure.
109
+ Kernel.srand config.seed
39
110
  end
@@ -1,5 +1,5 @@
1
1
  class ApplicationController < ActionController::Base
2
- protect_from_forgery
2
+ # protect_from_forgery
3
3
 
4
4
  def index
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opal-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.3
4
+ version: 0.7.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elia Schito
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-07 00:00:00.000000000 Z
11
+ date: 2014-10-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 3.2.13
19
+ version: '3.2'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: '5.0'
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 3.2.13
29
+ version: '3.2'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '5.0'
@@ -36,42 +36,42 @@ dependencies:
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: 0.6.0
39
+ version: 0.7.0.beta1
40
40
  type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: 0.6.0
46
+ version: 0.7.0.beta1
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: opal-jquery
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - ">="
51
+ - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: 0.1.0
53
+ version: 0.3.0.beta1
54
54
  type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - ">="
58
+ - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: 0.1.0
60
+ version: 0.3.0.beta1
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: opal-rspec
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: 0.3.0.beta1
67
+ version: 0.4.0.beta3
68
68
  type: :runtime
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: 0.3.0.beta1
74
+ version: 0.4.0.beta3
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: jquery-rails
77
77
  requirement: !ruby/object:Gem::Requirement
@@ -130,46 +130,32 @@ dependencies:
130
130
  version: '0'
131
131
  - !ruby/object:Gem::Dependency
132
132
  name: capybara
133
- requirement: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - ">="
136
- - !ruby/object:Gem::Version
137
- version: '0'
138
- type: :development
139
- prerelease: false
140
- version_requirements: !ruby/object:Gem::Requirement
141
- requirements:
142
- - - ">="
143
- - !ruby/object:Gem::Version
144
- version: '0'
145
- - !ruby/object:Gem::Dependency
146
- name: rspec
147
133
  requirement: !ruby/object:Gem::Requirement
148
134
  requirements:
149
135
  - - "~>"
150
136
  - !ruby/object:Gem::Version
151
- version: '2.13'
137
+ version: '2.3'
152
138
  type: :development
153
139
  prerelease: false
154
140
  version_requirements: !ruby/object:Gem::Requirement
155
141
  requirements:
156
142
  - - "~>"
157
143
  - !ruby/object:Gem::Version
158
- version: '2.13'
144
+ version: '2.3'
159
145
  - !ruby/object:Gem::Dependency
160
146
  name: rspec-rails
161
147
  requirement: !ruby/object:Gem::Requirement
162
148
  requirements:
163
149
  - - "~>"
164
150
  - !ruby/object:Gem::Version
165
- version: '2.13'
151
+ version: '3.0'
166
152
  type: :development
167
153
  prerelease: false
168
154
  version_requirements: !ruby/object:Gem::Requirement
169
155
  requirements:
170
156
  - - "~>"
171
157
  - !ruby/object:Gem::Version
172
- version: '2.13'
158
+ version: '3.0'
173
159
  description: Rails bindings for opal JS engine
174
160
  email:
175
161
  - elia@schito.me
@@ -194,16 +180,18 @@ files:
194
180
  - lib/opal/rails.rb
195
181
  - lib/opal/rails/engine.rb
196
182
  - lib/opal/rails/haml_filter.rb
183
+ - lib/opal/rails/slim_filter.rb
197
184
  - lib/opal/rails/sprockets_cache_key_fix.rb
198
185
  - lib/opal/rails/template_handler.rb
199
186
  - lib/opal/rails/version.rb
187
+ - lib/rails/generators/opal/assets/assets_generator.rb
188
+ - lib/rails/generators/opal/assets/templates/javascript.js.rb
200
189
  - lib/tasks/opal-rails_tasks.rake
201
190
  - opal-rails.gemspec
202
191
  - script/rails
203
192
  - spec/integration/assigns_spec.rb
204
193
  - spec/integration/in_browser_specs_spec.rb
205
194
  - spec/integration/source_map_spec.rb
206
- - spec/opal/processor_spec.rb
207
195
  - spec/spec_helper.rb
208
196
  - spec/support/capybara.rb
209
197
  - spec/support/reset_assets_cache.rb
@@ -259,9 +247,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
259
247
  version: '0'
260
248
  required_rubygems_version: !ruby/object:Gem::Requirement
261
249
  requirements:
262
- - - ">="
250
+ - - ">"
263
251
  - !ruby/object:Gem::Version
264
- version: '0'
252
+ version: 1.3.1
265
253
  requirements: []
266
254
  rubyforge_project: opal-rails
267
255
  rubygems_version: 2.2.2
@@ -272,7 +260,6 @@ test_files:
272
260
  - spec/integration/assigns_spec.rb
273
261
  - spec/integration/in_browser_specs_spec.rb
274
262
  - spec/integration/source_map_spec.rb
275
- - spec/opal/processor_spec.rb
276
263
  - spec/spec_helper.rb
277
264
  - spec/support/capybara.rb
278
265
  - spec/support/reset_assets_cache.rb
@@ -1,26 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Opal::Processor do
4
- let(:pathname) { Pathname('/Code/app/mylib/opal/asdf.rb') }
5
- let(:_context) do
6
- double('_context', :logical_path => 'asdf.js.rb', :pathname => pathname)
7
- end
8
-
9
- it "is registered for '.opal' files" do
10
- Tilt['test.opal'].should eq(Opal::Processor)
11
- end
12
-
13
- it "is registered for '.rb' files" do
14
- Tilt['test.rb'].should eq(Opal::Processor)
15
- end
16
-
17
- it "compiles and evaluates the template on #render" do
18
- template = Opal::Processor.new { |t| "puts 'Hello, World!'\n" }
19
- template.render(_context).should include('"Hello, World!"')
20
- end
21
-
22
- it "can be rendered more than once" do
23
- template = Opal::Processor.new(_context) { |t| "puts 'Hello, World!'\n" }
24
- 3.times { template.render(_context).should include('"Hello, World!"') }
25
- end
26
- end