jasmine 1.3.1 → 1.3.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -53,8 +53,6 @@ This uses Selenium to launch a browser and run the Jasmine suite. Then it uses R
53
53
  Customize `spec/javascripts/support/jasmine.yml` to enumerate the source files, stylesheets, and spec files you would like the Jasmine runner to include.
54
54
  You may use dir glob strings.
55
55
 
56
- For more complex configuration (e.g., port number), edit `spec/javascripts/support/jasmine_config.rb` file directly.
57
-
58
56
  ## Note about the CI task and RSpec
59
57
 
60
58
  This gem requires RSpec for the `jasmine:ci` rake task to work. But this gem does not explicitly *depend* on any version of the RSpec gem.
@@ -14,6 +14,7 @@ class JasmineGenerator < Rails::Generator::Base
14
14
 
15
15
  m.directory "spec/javascripts/support"
16
16
  m.file "spec/javascripts/support/jasmine-rails.yml", "spec/javascripts/support/jasmine.yml"
17
+ m.file "spec/javascripts/support/jasmine_helper.rb", "spec/javascripts/support/jasmine_helper.rb"
17
18
  m.readme "INSTALL"
18
19
 
19
20
  m.directory "lib/tasks"
@@ -72,3 +72,17 @@ src_dir:
72
72
  # spec_dir: spec/javascripts
73
73
  #
74
74
  spec_dir:
75
+
76
+ # spec_helper
77
+ #
78
+ # Ruby file that Jasmine server will require before starting.
79
+ # Returned relative to your root path
80
+ # Default spec/support/jasmine_helper.rb
81
+ #
82
+ # EXAMPLE:
83
+ #
84
+ # spec_helper: spec/support/jasmine_helper.rb
85
+ #
86
+ spec_helper: spec/support/jasmine_helper.rb
87
+
88
+
@@ -0,0 +1,11 @@
1
+ #Use this file to set/override Jasmine configuration options
2
+ #You can remove it if you don't need it.
3
+ #This file is loaded *after* jasmine.yml is interpreted.
4
+ #
5
+ #Example: using a different boot file.
6
+ #Jasmine.configure do |config|
7
+ # config.boot_dir = '/absolute/path/to/boot_dir'
8
+ # config.boot_files = lambda { ['/absolute/path/to/boot_dir/file.js'] }
9
+ #end
10
+ #
11
+
@@ -67,6 +67,8 @@ Gem::Specification.new do |s|
67
67
  s.add_development_dependency 'json_pure'
68
68
  s.add_development_dependency 'nokogiri'
69
69
 
70
+ s.add_development_dependency 'anchorman'
71
+
70
72
  s.add_dependency 'jasmine-core', "~> 1.3.1"
71
73
  s.add_dependency 'rack', '~> 1.0'
72
74
  s.add_dependency 'rspec', '>= 1.3.1'
@@ -6,6 +6,4 @@ Example:
6
6
 
7
7
  This will create:
8
8
  spec/javascripts/support/jasmine.yml
9
- spec/javascripts/support/jasmine_config.rb
10
- spec/javascripts/support/jasmine_runner.rb
11
9
  spec/javascripts/helpers/.gitkeep
@@ -0,0 +1,11 @@
1
+ #Use this file to set/override Jasmine configuration options
2
+ #You can remove it if you don't need it.
3
+ #This file is loaded *after* jasmine.yml is interpreted.
4
+ #
5
+ #Example: using a different boot file.
6
+ #Jasmine.configure do |config|
7
+ # @config.boot_dir = '/absolute/path/to/boot_dir'
8
+ # @config.boot_files = lambda { ['/absolute/path/to/boot_dir/file.js'] }
9
+ #end
10
+ #
11
+
@@ -10,9 +10,8 @@ module Jasmine
10
10
  bundled_asset = @bundled_asset_factory.call(pathname, 'js')
11
11
  return nil unless bundled_asset
12
12
 
13
- base_asset = "#{bundled_asset.pathname.to_s.gsub(/#{src_dir}/, '')}?body=true"
14
- bundled_asset.to_a.inject([base_asset]) do |assets, asset|
15
- assets << "/#{@asset_path_for.call(asset).gsub(/^\//, '')}?body=true"
13
+ bundled_asset.to_a.map do |asset|
14
+ "/#{@asset_path_for.call(asset).gsub(/^\//, '')}?body=true"
16
15
  end.flatten
17
16
  end
18
17
  end
@@ -36,23 +36,18 @@ module Jasmine
36
36
  copy_unless_exists('jasmine-example/spec/PlayerSpec.js', 'spec/javascripts/PlayerSpec.js')
37
37
  copy_unless_exists('jasmine-example/spec/SpecHelper.js', 'spec/javascripts/helpers/SpecHelper.js')
38
38
 
39
- rails_tasks_dir = dest_path('lib/tasks')
40
- if File.exist?(rails_tasks_dir)
41
- copy_unless_exists('lib/tasks/jasmine.rake')
42
- copy_unless_exists('spec/javascripts/support/jasmine-rails.yml', 'spec/javascripts/support/jasmine.yml')
43
- else
44
- copy_unless_exists('spec/javascripts/support/jasmine.yml')
45
- require 'rake'
46
- write_mode = 'w'
47
- if File.exist?(dest_path('Rakefile'))
48
- load dest_path('Rakefile')
49
- write_mode = 'a'
50
- end
39
+ copy_unless_exists('spec/javascripts/support/jasmine.yml')
40
+ copy_unless_exists('spec/javascripts/support/jasmine_helper.rb')
41
+ require 'rake'
42
+ write_mode = 'w'
43
+ if File.exist?(dest_path('Rakefile'))
44
+ load dest_path('Rakefile')
45
+ write_mode = 'a'
46
+ end
51
47
 
52
- unless Rake::Task.task_defined?('jasmine')
53
- File.open(dest_path('Rakefile'), write_mode) do |f|
54
- f.write("\n" + File.read(template_path('lib/tasks/jasmine.rake')))
55
- end
48
+ unless Rake::Task.task_defined?('jasmine')
49
+ File.open(dest_path('Rakefile'), write_mode) do |f|
50
+ f.write("\n" + File.read(template_path('lib/tasks/jasmine.rake')))
56
51
  end
57
52
  end
58
53
  File.open(template_path('INSTALL'), 'r').each_line do |line|
@@ -1,4 +1,5 @@
1
1
  module Jasmine
2
+ require 'yaml'
2
3
  require 'erb'
3
4
  def self.configure(&block)
4
5
  block.call(self.config)
@@ -21,7 +22,6 @@ module Jasmine
21
22
  @config.boot_files = lambda { core_config.boot_files }
22
23
  @config.jasmine_files = lambda { core_config.js_files }
23
24
  @config.jasmine_css_files = lambda { core_config.css_files }
24
-
25
25
  @config.add_rack_path(jasmine_path, lambda { Rack::File.new(config.jasmine_dir) })
26
26
  @config.add_rack_path(boot_path, lambda { Rack::File.new(config.boot_dir) })
27
27
  @config.add_rack_path(spec_path, lambda { Rack::File.new(config.spec_dir) })
@@ -79,6 +79,7 @@ module Jasmine
79
79
  config.src_dir = yaml_config.src_dir
80
80
  config.spec_dir = yaml_config.spec_dir
81
81
  end
82
+ require yaml_config.spec_helper if File.exist?(yaml_config.spec_helper)
82
83
  end
83
84
  end
84
85
 
@@ -1,4 +1,5 @@
1
1
  module Jasmine
2
+ require 'json'
2
3
  class SeleniumDriver
3
4
  def initialize(browser, http_address)
4
5
  require 'selenium-webdriver'
@@ -1,3 +1,3 @@
1
1
  module Jasmine
2
- VERSION = "1.3.1"
2
+ VERSION = "1.3.2"
3
3
  end
@@ -46,6 +46,10 @@ module Jasmine
46
46
  @path_expander.call(src_dir, loaded_yaml['stylesheets'] || [])
47
47
  end
48
48
 
49
+ def spec_helper
50
+ File.join(@pwd, loaded_yaml['spec_helper'] || File.join('spec', 'javascripts', 'support', 'jasmine_helper.rb'))
51
+ end
52
+
49
53
  private
50
54
  def loaded_yaml
51
55
  @yaml_loader.call(@path)
@@ -1,4 +1,4 @@
1
- #1.2.1
1
+ # Jasmine Gem v1.2.1
2
2
 
3
3
  * asset manifests following the Rails defaults are included as individual src files
4
4
  * Fix regression that required Jasmine restart to find new src/spec files
@@ -0,0 +1,32 @@
1
+ # Jasmine Gem v1.3.2
2
+
3
+ ## Summary
4
+
5
+ This release removes some pre-1.3 cruft in documentation regarding the old configuration files. Also fixes the JSON/YAML require bug.
6
+
7
+ Best approach is to delete your Jasmine support files and clean out jasmine from your Rakefile and call `jasmine init` again.
8
+
9
+ ## Changes
10
+
11
+ * Removed incorrect asset_path mapping
12
+ * Including `asset_file` (the manifest) fails if asset file is itself templated (erb, coffee), or if asset file uses `require_self`.
13
+ * Use `require_self` if it is necessary to include javascript inside of a Sprockets manifest file (like `application.js`)
14
+ * SHA: [be9851192e78ffe635087e5583b15ebe683dc0d9](http://github.com/pivotal/jasmine-gem/commit/be9851192e78ffe635087e5583b15ebe683dc0d9)
15
+ * Load `jasmine_helper` after configuring from yaml
16
+ * Allows users opportunity to add a `Jasmine.configure` block that overrides/augments `jasmine.yml` settings
17
+ * File defaults to `specs/javascript/support/jasmine_helper.rb` but is configurable from `jasmine.yml`
18
+ * *Only* processed if using `jasmine.yml` (which default rake tasks will do if `jasmine.yml` exists).
19
+ * SHA: [63e8d46556a421cbb3b511b52cd8c2188d72b9db](http://github.com/pivotal/jasmine-gem/commit/63e8d46556a421cbb3b511b52cd8c2188d72b9db)
20
+ * Rails generators should be used for Rails installs
21
+ * SHA: [5d1d500fdc2462951de901513f2aacc5286f20c1](http://github.com/pivotal/jasmine-gem/commit/5d1d500fdc2462951de901513f2aacc5286f20c1)
22
+ * Fix reference error of YAML and JSON
23
+ * Merge pull request #119 from kozy4324
24
+ * SHA: [442135f648970fcaf5e4163a672a78fbea65e118](http://github.com/pivotal/jasmine-gem/commit/442135f648970fcaf5e4163a672a78fbea65e118)
25
+ * Removed references in docs to pre-1.3 files that are no longer used
26
+ * Merged pull request #132 from levent
27
+ * Merged pull request #129 from mcolyer
28
+ * Merged pull request #130 from mcolyer
29
+
30
+ ------
31
+
32
+ _Release Notes generated with [Anchorman](http://github.com/infews/anchorman)_
@@ -22,8 +22,7 @@ describe Jasmine::AssetExpander do
22
22
 
23
23
  expander = Jasmine::AssetExpander.new(bundled_asset_getter, asset_path_getter)
24
24
  expanded_assets = expander.expand('/some_src_dir', 'asset_file')
25
- expanded_assets.should == ['/asset_file?body=true',
26
- '/asset1_path?body=true',
25
+ expanded_assets.should == ['/asset1_path?body=true',
27
26
  '/asset2_path?body=true']
28
27
  end
29
28
 
@@ -41,6 +41,26 @@ describe Jasmine::YamlConfigParser do
41
41
  parser.jasmine_dir.should == File.join('some_project_root', 'some_jasmine_dir')
42
42
  end
43
43
 
44
+ it "spec_helper returns default helper path when spec_helper is blank" do
45
+ yaml_loader = lambda do |path|
46
+ if path == "some_path"
47
+ {"spec_helper" => nil}
48
+ end
49
+ end
50
+ parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', nil, yaml_loader)
51
+ parser.spec_helper.should == 'some_project_root/spec/javascripts/support/jasmine_helper.rb'
52
+ end
53
+
54
+ it "spec_helper returns spec_helper if set" do
55
+ yaml_loader = lambda do |path|
56
+ if path == "some_path"
57
+ {"spec_helper" => 'some_spec_helper.rb'}
58
+ end
59
+ end
60
+ parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', nil, yaml_loader)
61
+ parser.spec_helper.should == 'some_project_root/some_spec_helper.rb'
62
+ end
63
+
44
64
  it "spec_dir uses default path when spec dir is blank" do
45
65
  yaml_loader = lambda do |path|
46
66
  if path == "some_path"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jasmine
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.3.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2012-12-03 00:00:00.000000000 Z
14
+ date: 2013-03-11 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rspec
@@ -109,6 +109,22 @@ dependencies:
109
109
  - - ! '>='
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0'
112
+ - !ruby/object:Gem::Dependency
113
+ name: anchorman
114
+ requirement: !ruby/object:Gem::Requirement
115
+ none: false
116
+ requirements:
117
+ - - ! '>='
118
+ - !ruby/object:Gem::Version
119
+ version: '0'
120
+ type: :development
121
+ prerelease: false
122
+ version_requirements: !ruby/object:Gem::Requirement
123
+ none: false
124
+ requirements:
125
+ - - ! '>='
126
+ - !ruby/object:Gem::Version
127
+ version: '0'
112
128
  - !ruby/object:Gem::Dependency
113
129
  name: jasmine-core
114
130
  requirement: !ruby/object:Gem::Requirement
@@ -189,7 +205,6 @@ files:
189
205
  - MIT.LICENSE
190
206
  - README.markdown
191
207
  - RELEASE.markdown
192
- - RELEASE_NOTES.markdown
193
208
  - Rakefile
194
209
  - bin/jasmine
195
210
  - generators/jasmine/jasmine_generator.rb
@@ -202,6 +217,7 @@ files:
202
217
  - generators/jasmine/templates/lib/tasks/jasmine.rake
203
218
  - generators/jasmine/templates/spec/javascripts/support/jasmine-rails.yml
204
219
  - generators/jasmine/templates/spec/javascripts/support/jasmine.yml
220
+ - generators/jasmine/templates/spec/javascripts/support/jasmine_helper.rb
205
221
  - jasmine.gemspec
206
222
  - lib/generators/jasmine/examples/USAGE
207
223
  - lib/generators/jasmine/examples/examples_generator.rb
@@ -213,6 +229,7 @@ files:
213
229
  - lib/generators/jasmine/install/install_generator.rb
214
230
  - lib/generators/jasmine/install/templates/spec/javascripts/helpers/.gitkeep
215
231
  - lib/generators/jasmine/install/templates/spec/javascripts/support/jasmine.yml
232
+ - lib/generators/jasmine/install/templates/spec/javascripts/support/jasmine_helper.rb
216
233
  - lib/jasmine.rb
217
234
  - lib/jasmine/application.rb
218
235
  - lib/jasmine/asset_expander.rb
@@ -248,6 +265,8 @@ files:
248
265
  - lib/rack/jasmine/cache_control.rb
249
266
  - lib/rack/jasmine/focused_suite.rb
250
267
  - lib/rack/jasmine/runner.rb
268
+ - release_notes/v1.2.1.md
269
+ - release_notes/v1.3.2.md
251
270
  - spec/application_integration_spec.rb
252
271
  - spec/application_spec.rb
253
272
  - spec/asset_expander_spec.rb
@@ -288,7 +307,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
288
307
  version: '0'
289
308
  segments:
290
309
  - 0
291
- hash: -2055152305295795874
310
+ hash: -4429629343753385454
292
311
  required_rubygems_version: !ruby/object:Gem::Requirement
293
312
  none: false
294
313
  requirements:
@@ -297,10 +316,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
297
316
  version: '0'
298
317
  segments:
299
318
  - 0
300
- hash: -2055152305295795874
319
+ hash: -4429629343753385454
301
320
  requirements: []
302
321
  rubyforge_project:
303
- rubygems_version: 1.8.24
322
+ rubygems_version: 1.8.25
304
323
  signing_key:
305
324
  specification_version: 3
306
325
  summary: JavaScript BDD framework