opal-rails 0.3.3 → 0.3.4

Sign up to get free protection for your applications and to get access to all the features.
data/.travis.yml CHANGED
@@ -3,6 +3,7 @@ language: ruby
3
3
  rvm:
4
4
  - 1.8.7
5
5
  - 1.9.3
6
+ - 2.0.0
6
7
 
7
8
  before_script:
8
9
  - "export DISPLAY=:99.0"
data/Gemfile CHANGED
@@ -1,31 +1,4 @@
1
1
  source :rubygems
2
-
3
- # Dependencies specified in opal-rails.gemspec
4
2
  gemspec
5
3
 
6
-
7
- gem 'opal-jquery', :require => false
8
- gem 'opal-spec', :git => 'git://github.com/opal/opal-spec.git', :require => false
9
-
10
-
11
- # Test app stuff
12
-
13
- gem 'rails', '3.2.6'
14
-
15
- # Gems used only for assets and not required
16
- # in production environments by default.
17
- group :assets do
18
- gem 'sass-rails', '~> 3.2.3'
19
- gem 'coffee-rails', '~> 3.2.1'
20
-
21
- # See https://github.com/sstephenson/execjs#readme for more supported runtimes
22
- # gem 'therubyracer', :platforms => :ruby
23
- gem 'uglifier', '>= 1.0.3'
24
- end
25
-
26
- gem 'jquery-rails'
27
-
28
- group :test do
29
- gem 'capybara'
30
- gem 'launchy'
31
- end
4
+ gem 'capybara-webkit' unless ENV['CI']
data/Rakefile CHANGED
@@ -3,53 +3,10 @@
3
3
 
4
4
  # BUNDLER
5
5
 
6
- begin
7
- require 'bundler/setup'
8
- # require 'bundler/gem_tasks'
9
- rescue LoadError
10
- puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
11
- end
12
-
6
+ require 'bundler/setup'
13
7
  Bundler::GemHelper.install_tasks
14
8
 
15
9
 
16
-
17
-
18
- # OPAL
19
-
20
- # Rakefile
21
- require 'opal/rake_task'
22
-
23
- Opal::RakeTask.new do |t|
24
- t.build_dir = 'lib/assets/javascripts'
25
- t.dependencies = %w[opal-jquery opal-spec]
26
- t.files = []
27
- end
28
-
29
-
30
-
31
-
32
- # DOCS
33
-
34
- begin
35
- require 'rdoc/task'
36
- rescue LoadError
37
- require 'rdoc/rdoc'
38
- require 'rake/rdoctask'
39
- RDoc::Task = Rake::RDocTask
40
- end
41
-
42
- RDoc::Task.new(:doc) do |rdoc|
43
- rdoc.rdoc_dir = 'rdoc'
44
- rdoc.title = 'Opal::Rails'
45
- rdoc.options << '--line-numbers'
46
- rdoc.rdoc_files.include('README.md')
47
- rdoc.rdoc_files.include('lib/**/*.rb')
48
- end
49
-
50
-
51
-
52
-
53
10
  # TEST
54
11
 
55
12
  require 'rspec/core/rake_task'
@@ -3,9 +3,8 @@
3
3
  <head>
4
4
  <meta charset="utf-8">
5
5
  <title>Opal Spec Runner</title>
6
- <%= javascript_include_tag 'opal' %>
7
- <%= javascript_include_tag 'opal-spec' %>
8
- <%= javascript_include_tag *spec_files %>
6
+ <%= javascript_include_tag 'opal-spec-runner' %>
7
+ <%= javascript_include_tag *spec_files %>
9
8
  <style>
10
9
  body { font-family: sans-serif; }
11
10
  </style>
@@ -1,2 +1 @@
1
1
  <b>Running: <%= spec_files.to_sentence %></b>
2
- <%= javascript_include_tag 'opal-spec-runner' %>
@@ -1,6 +1,9 @@
1
- # = require jquery
2
- # = require opal-jquery
1
+ require 'jquery'
2
+
3
+ require 'opal'
4
+ require 'opal-spec'
5
+ require 'opal-jquery'
3
6
 
4
7
  Document.ready? do
5
- OpalSpec::Runner.new.run
8
+ Opal::Spec::Runner.new.run
6
9
  end
data/lib/opal-rails.rb CHANGED
@@ -1,6 +1,10 @@
1
1
  require 'opal'
2
+ require 'opal/jquery'
3
+ require 'opal/spec'
4
+
2
5
  require 'opal/rails/engine'
3
6
  require 'opal/rails/template_handler'
4
- require 'opal/rails/processor'
5
7
  require 'opal/rails/version'
6
8
  require 'opal/rails/haml_filter' if defined?(Haml)
9
+
10
+ require 'jquery-rails'
@@ -8,6 +8,17 @@ module Opal
8
8
  # Cache eager_load_paths now, otherwise the assets dir is added
9
9
  # and its .rb files are eagerly loaded.
10
10
  config.eager_load_paths
11
+
12
+ initializer 'opal.asset_paths', :after => 'sprockets.environment', :group => :all do |app|
13
+ app.config.before_initialize do
14
+ app.config.eager_load_paths = app.config.eager_load_paths.dup - Dir["#{app.root}/app/{assets,views}"]
15
+ end
16
+
17
+ Opal.paths.each do |path|
18
+ app.assets.append_path path
19
+ end
20
+ end
21
+
11
22
  end
12
23
  end
13
24
  end
@@ -1,6 +1,5 @@
1
1
  module Opal
2
2
  module Rails
3
- VERSION = '0.3.3'
4
- OPAL_VERSION = '0.3.29'
3
+ VERSION = '0.3.4'
5
4
  end
6
5
  end
data/opal-rails.gemspec CHANGED
@@ -19,8 +19,16 @@ 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_runtime_dependency 'opal', Opal::Rails::OPAL_VERSION
22
+ s.add_runtime_dependency 'opal', '~> 0.3.36'
23
23
  s.add_runtime_dependency 'rails', '~> 3.2.0'
24
- s.add_development_dependency 'rspec', '~> 2.4'
24
+ s.add_runtime_dependency 'opal-jquery', '>= 0.0.5'
25
+ s.add_runtime_dependency 'opal-spec', '>= 0.2.8'
26
+ s.add_runtime_dependency 'jquery-rails'
27
+
28
+ s.add_development_dependency 'rspec', '~> 2.4'
25
29
  s.add_development_dependency 'rspec-rails', '~> 2.4'
30
+
31
+ s.add_development_dependency 'capybara', '< 2'
32
+ s.add_development_dependency 'launchy'
33
+ s.add_development_dependency 'execjs'
26
34
  end
@@ -1,5 +1,5 @@
1
1
  require 'spec_helper'
2
- require "execjs"
2
+ require 'execjs'
3
3
 
4
4
  describe 'controller assignments' do
5
5
  it 'are in the template' do
@@ -1,22 +1,22 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Opal::Rails::Processor do
3
+ describe Opal::Processor do
4
4
 
5
5
  it "is registered for '.opal' files" do
6
- Tilt['test.opal'].should eq(Opal::Rails::Processor)
6
+ Tilt['test.opal'].should eq(Opal::Processor)
7
7
  end
8
8
 
9
9
  it "is registered for '.rb' files" do
10
- Tilt['test.rb'].should eq(Opal::Rails::Processor)
10
+ Tilt['test.rb'].should eq(Opal::Processor)
11
11
  end
12
12
 
13
13
  it "compiles and evaluates the template on #render" do
14
- template = Opal::Rails::Processor.new { |t| "puts 'Hello, World!'\n" }
14
+ template = Opal::Processor.new { |t| "puts 'Hello, World!'\n" }
15
15
  template.render.should include('self.$puts("Hello, World!")')
16
16
  end
17
17
 
18
18
  it "can be rendered more than once" do
19
- template = Opal::Rails::Processor.new { |t| "puts 'Hello, World!'\n" }
19
+ template = Opal::Processor.new { |t| "puts 'Hello, World!'\n" }
20
20
  3.times { template.render.should include('self.$puts("Hello, World!")') }
21
21
  end
22
22
  end
data/spec/spec_helper.rb CHANGED
@@ -1,22 +1,39 @@
1
- $:.unshift File.expand_path('../../lib', __FILE__)
1
+ root_dir = File.expand_path('../../', __FILE__)
2
+
3
+
4
+ # OPAL-RAILS
5
+
6
+ $:.unshift File.expand_path('lib', root_dir)
2
7
  require 'opal-rails'
3
8
 
4
9
 
10
+ # RAILS
11
+
5
12
  # Configure Rails Environment
6
13
  ENV['RAILS_ENV'] = 'test'
7
14
 
8
- require File.expand_path('../../test_app/config/environment.rb', __FILE__)
15
+ require File.expand_path('test_app/config/environment.rb', root_dir)
9
16
  require 'rspec/rails'
10
- require 'capybara/rspec'
11
17
 
12
18
  Rails.backtrace_cleaner.remove_silencers!
13
19
 
14
20
 
21
+ # RSPEC
22
+
15
23
  # Requires supporting ruby files with custom matchers and macros, etc,
16
24
  # in spec/support/ and its subdirectories.
17
- Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
25
+ Dir[File.expand_path('spec/support/**/*.rb', root_dir)].each {|f| require f}
18
26
 
19
27
  RSpec.configure do |config|
20
28
  config.mock_with :rspec
29
+
21
30
  config.treat_symbols_as_metadata_keys_with_true_values = true
31
+ config.run_all_when_everything_filtered = true
32
+ config.filter_run :focus
33
+
34
+ # Run specs in random order to surface order dependencies. If you find an
35
+ # order dependency and want to debug it, you can fix the order by providing
36
+ # the seed, which is printed after each run.
37
+ # --seed 1234
38
+ config.order = 'random'
22
39
  end
@@ -0,0 +1,6 @@
1
+ require 'capybara/rspec'
2
+
3
+ if RUBY_VERSION.to_f > 1.8 and not(ENV['CI'])
4
+ require 'capybara-webkit'
5
+ Capybara.javascript_driver = :webkit
6
+ end
metadata CHANGED
@@ -1,87 +1,182 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: opal-rails
3
- version: !ruby/object:Gem::Version
4
- version: 0.3.3
3
+ version: !ruby/object:Gem::Version
4
+ hash: 27
5
5
  prerelease:
6
+ segments:
7
+ - 0
8
+ - 3
9
+ - 4
10
+ version: 0.3.4
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Elia Schito
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2013-02-05 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2013-02-09 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
15
21
  name: opal
16
- requirement: !ruby/object:Gem::Requirement
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
17
23
  none: false
18
- requirements:
19
- - - '='
20
- - !ruby/object:Gem::Version
21
- version: 0.3.29
24
+ requirements:
25
+ - - ~>
26
+ - !ruby/object:Gem::Version
27
+ hash: 91
28
+ segments:
29
+ - 0
30
+ - 3
31
+ - 36
32
+ version: 0.3.36
22
33
  type: :runtime
34
+ requirement: *id001
23
35
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - '='
28
- - !ruby/object:Gem::Version
29
- version: 0.3.29
30
- - !ruby/object:Gem::Dependency
36
+ - !ruby/object:Gem::Dependency
31
37
  name: rails
32
- requirement: !ruby/object:Gem::Requirement
38
+ version_requirements: &id002 !ruby/object:Gem::Requirement
33
39
  none: false
34
- requirements:
40
+ requirements:
35
41
  - - ~>
36
- - !ruby/object:Gem::Version
42
+ - !ruby/object:Gem::Version
43
+ hash: 15
44
+ segments:
45
+ - 3
46
+ - 2
47
+ - 0
37
48
  version: 3.2.0
38
49
  type: :runtime
50
+ requirement: *id002
39
51
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
52
+ - !ruby/object:Gem::Dependency
53
+ name: opal-jquery
54
+ version_requirements: &id003 !ruby/object:Gem::Requirement
41
55
  none: false
42
- requirements:
43
- - - ~>
44
- - !ruby/object:Gem::Version
45
- version: 3.2.0
46
- - !ruby/object:Gem::Dependency
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ hash: 21
60
+ segments:
61
+ - 0
62
+ - 0
63
+ - 5
64
+ version: 0.0.5
65
+ type: :runtime
66
+ requirement: *id003
67
+ prerelease: false
68
+ - !ruby/object:Gem::Dependency
69
+ name: opal-spec
70
+ version_requirements: &id004 !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ hash: 7
76
+ segments:
77
+ - 0
78
+ - 2
79
+ - 8
80
+ version: 0.2.8
81
+ type: :runtime
82
+ requirement: *id004
83
+ prerelease: false
84
+ - !ruby/object:Gem::Dependency
85
+ name: jquery-rails
86
+ version_requirements: &id005 !ruby/object:Gem::Requirement
87
+ none: false
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ hash: 3
92
+ segments:
93
+ - 0
94
+ version: "0"
95
+ type: :runtime
96
+ requirement: *id005
97
+ prerelease: false
98
+ - !ruby/object:Gem::Dependency
47
99
  name: rspec
48
- requirement: !ruby/object:Gem::Requirement
100
+ version_requirements: &id006 !ruby/object:Gem::Requirement
49
101
  none: false
50
- requirements:
102
+ requirements:
51
103
  - - ~>
52
- - !ruby/object:Gem::Version
53
- version: '2.4'
104
+ - !ruby/object:Gem::Version
105
+ hash: 11
106
+ segments:
107
+ - 2
108
+ - 4
109
+ version: "2.4"
54
110
  type: :development
111
+ requirement: *id006
55
112
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: '2.4'
62
- - !ruby/object:Gem::Dependency
113
+ - !ruby/object:Gem::Dependency
63
114
  name: rspec-rails
64
- requirement: !ruby/object:Gem::Requirement
115
+ version_requirements: &id007 !ruby/object:Gem::Requirement
65
116
  none: false
66
- requirements:
117
+ requirements:
67
118
  - - ~>
68
- - !ruby/object:Gem::Version
69
- version: '2.4'
119
+ - !ruby/object:Gem::Version
120
+ hash: 11
121
+ segments:
122
+ - 2
123
+ - 4
124
+ version: "2.4"
70
125
  type: :development
126
+ requirement: *id007
71
127
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
128
+ - !ruby/object:Gem::Dependency
129
+ name: capybara
130
+ version_requirements: &id008 !ruby/object:Gem::Requirement
73
131
  none: false
74
- requirements:
75
- - - ~>
76
- - !ruby/object:Gem::Version
77
- version: '2.4'
132
+ requirements:
133
+ - - <
134
+ - !ruby/object:Gem::Version
135
+ hash: 7
136
+ segments:
137
+ - 2
138
+ version: "2"
139
+ type: :development
140
+ requirement: *id008
141
+ prerelease: false
142
+ - !ruby/object:Gem::Dependency
143
+ name: launchy
144
+ version_requirements: &id009 !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ">="
148
+ - !ruby/object:Gem::Version
149
+ hash: 3
150
+ segments:
151
+ - 0
152
+ version: "0"
153
+ type: :development
154
+ requirement: *id009
155
+ prerelease: false
156
+ - !ruby/object:Gem::Dependency
157
+ name: execjs
158
+ version_requirements: &id010 !ruby/object:Gem::Requirement
159
+ none: false
160
+ requirements:
161
+ - - ">="
162
+ - !ruby/object:Gem::Version
163
+ hash: 3
164
+ segments:
165
+ - 0
166
+ version: "0"
167
+ type: :development
168
+ requirement: *id010
169
+ prerelease: false
78
170
  description: Rails bindings for opal JS engine
79
- email:
171
+ email:
80
172
  - elia@schito.me
81
173
  executables: []
174
+
82
175
  extensions: []
176
+
83
177
  extra_rdoc_files: []
84
- files:
178
+
179
+ files:
85
180
  - .gitignore
86
181
  - .rspec
87
182
  - .travis.yml
@@ -94,14 +189,10 @@ files:
94
189
  - app/views/opal_spec/_runner.html.erb
95
190
  - app/views/opal_spec/run.html.erb
96
191
  - config/routes.rb
97
- - lib/assets/javascripts/opal-jquery.js
98
192
  - lib/assets/javascripts/opal-spec-runner.js.rb
99
- - lib/assets/javascripts/opal-spec.js
100
- - lib/assets/javascripts/opal.js
101
193
  - lib/opal-rails.rb
102
194
  - lib/opal/rails/engine.rb
103
195
  - lib/opal/rails/haml_filter.rb
104
- - lib/opal/rails/processor.rb
105
196
  - lib/opal/rails/template_handler.rb
106
197
  - lib/opal/rails/version.rb
107
198
  - lib/tasks/opal-rails_tasks.rake
@@ -109,8 +200,9 @@ files:
109
200
  - script/rails
110
201
  - spec/integration/assigns_spec.rb
111
202
  - spec/integration/in_browser_specs_spec.rb
112
- - spec/opal/rails/processor_spec.rb
203
+ - spec/opal/processor_spec.rb
113
204
  - spec/spec_helper.rb
205
+ - spec/support/capybara.rb
114
206
  - test_app/.gitignore
115
207
  - test_app/Rakefile
116
208
  - test_app/app/assets/images/rails.png
@@ -146,38 +238,41 @@ files:
146
238
  - test_app/public/robots.txt
147
239
  - test_app/script/rails
148
240
  homepage: http://elia.github.com/opal-rails
149
- licenses:
241
+ licenses:
150
242
  - MIT-LICENSE
151
243
  post_install_message:
152
244
  rdoc_options: []
153
- require_paths:
245
+
246
+ require_paths:
154
247
  - lib
155
- required_ruby_version: !ruby/object:Gem::Requirement
248
+ required_ruby_version: !ruby/object:Gem::Requirement
156
249
  none: false
157
- requirements:
158
- - - ! '>='
159
- - !ruby/object:Gem::Version
160
- version: '0'
161
- segments:
250
+ requirements:
251
+ - - ">="
252
+ - !ruby/object:Gem::Version
253
+ hash: 3
254
+ segments:
162
255
  - 0
163
- hash: 1143739969763660123
164
- required_rubygems_version: !ruby/object:Gem::Requirement
256
+ version: "0"
257
+ required_rubygems_version: !ruby/object:Gem::Requirement
165
258
  none: false
166
- requirements:
167
- - - ! '>='
168
- - !ruby/object:Gem::Version
169
- version: '0'
170
- segments:
259
+ requirements:
260
+ - - ">="
261
+ - !ruby/object:Gem::Version
262
+ hash: 3
263
+ segments:
171
264
  - 0
172
- hash: 1143739969763660123
265
+ version: "0"
173
266
  requirements: []
267
+
174
268
  rubyforge_project: opal-rails
175
269
  rubygems_version: 1.8.24
176
270
  signing_key:
177
271
  specification_version: 3
178
272
  summary: Rails bindings for opal JS engine
179
- test_files:
273
+ test_files:
180
274
  - spec/integration/assigns_spec.rb
181
275
  - spec/integration/in_browser_specs_spec.rb
182
- - spec/opal/rails/processor_spec.rb
276
+ - spec/opal/processor_spec.rb
183
277
  - spec/spec_helper.rb
278
+ - spec/support/capybara.rb