jasmine 1.3.1 → 1.3.2

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.
@@ -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