jasmine 1.3.0 → 1.3.1
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/Rakefile +11 -2
- data/generators/jasmine/templates/spec/javascripts/support/jasmine-rails.yml +2 -2
- data/generators/jasmine/templates/spec/javascripts/support/jasmine.yml +2 -1
- data/jasmine.gemspec +1 -1
- data/lib/jasmine.rb +10 -2
- data/lib/jasmine/application.rb +6 -33
- data/lib/jasmine/asset_expander.rb +19 -0
- data/lib/jasmine/asset_pipeline_mapper.rb +11 -14
- data/lib/jasmine/asset_pipeline_utility.rb +19 -0
- data/lib/jasmine/base.rb +4 -0
- data/lib/jasmine/config.rb +74 -111
- data/lib/jasmine/configuration.rb +83 -0
- data/lib/jasmine/core_configuration.rb +28 -0
- data/lib/jasmine/javascripts/boot.js +28 -0
- data/lib/jasmine/path_expander.rb +18 -0
- data/lib/jasmine/path_mapper.rb +29 -0
- data/lib/jasmine/results_processor.rb +21 -20
- data/lib/jasmine/run.html.erb +0 -37
- data/lib/jasmine/run_specs.rb +12 -8
- data/lib/jasmine/server.rb +1 -1
- data/lib/jasmine/tasks/jasmine.rake +3 -4
- data/lib/jasmine/version.rb +1 -1
- data/lib/jasmine/yaml_config_parser.rb +54 -0
- data/spec/application_integration_spec.rb +15 -0
- data/spec/application_spec.rb +37 -92
- data/spec/asset_expander_spec.rb +42 -0
- data/spec/asset_pipeline_mapper_spec.rb +12 -11
- data/spec/base_spec.rb +14 -0
- data/spec/configuration_spec.rb +163 -0
- data/spec/jasmine_self_test_spec.rb +14 -7
- data/spec/page_spec.rb +2 -4
- data/spec/path_expander_spec.rb +96 -0
- data/spec/path_mapper_spec.rb +33 -0
- data/spec/server_spec.rb +2 -2
- data/spec/yaml_config_parser_spec.rb +182 -0
- metadata +34 -23
- data/lib/jasmine/runner_config.rb +0 -71
- data/lib/jasmine/sprockets_mapper.rb +0 -13
- data/lib/rack/jasmine/redirect.rb +0 -20
- data/spec/config_spec.rb +0 -309
- data/spec/fixture/jasmine.erb.yml +0 -4
- data/spec/fixture/spec/example_spec.js +0 -5
- data/spec/fixture/src/example.js +0 -3
- data/spec/jasmine_self_test_config.rb +0 -19
- data/spec/runner_config_spec.rb +0 -136
- data/spec/sprockets_mapper_spec.rb +0 -17
@@ -0,0 +1,182 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Jasmine::YamlConfigParser do
|
4
|
+
it "src_dir uses current working directory when src dir is blank" do
|
5
|
+
yaml_loader = lambda do |path|
|
6
|
+
if path == "some_path"
|
7
|
+
{"src_dir" => nil}
|
8
|
+
end
|
9
|
+
end
|
10
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', nil, yaml_loader)
|
11
|
+
parser.src_dir.should == 'some_project_root'
|
12
|
+
end
|
13
|
+
|
14
|
+
it "src_dir returns src_dir if set" do
|
15
|
+
yaml_loader = lambda do |path|
|
16
|
+
if path == "some_path"
|
17
|
+
{"src_dir" => 'some_src_dir'}
|
18
|
+
end
|
19
|
+
end
|
20
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', nil, yaml_loader)
|
21
|
+
parser.src_dir.should == File.join('some_project_root', 'some_src_dir')
|
22
|
+
end
|
23
|
+
|
24
|
+
it "jasmine_dir returns nil when jasmine dir is blank" do
|
25
|
+
yaml_loader = lambda do |path|
|
26
|
+
if path == "some_path"
|
27
|
+
{"jasmine_dir" => nil}
|
28
|
+
end
|
29
|
+
end
|
30
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', nil, yaml_loader)
|
31
|
+
parser.jasmine_dir.should be_nil
|
32
|
+
end
|
33
|
+
|
34
|
+
it "jasmine_dir returns jasmine_dir if set" do
|
35
|
+
yaml_loader = lambda do |path|
|
36
|
+
if path == "some_path"
|
37
|
+
{"jasmine_dir" => 'some_jasmine_dir'}
|
38
|
+
end
|
39
|
+
end
|
40
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', nil, yaml_loader)
|
41
|
+
parser.jasmine_dir.should == File.join('some_project_root', 'some_jasmine_dir')
|
42
|
+
end
|
43
|
+
|
44
|
+
it "spec_dir uses default path when spec dir is blank" do
|
45
|
+
yaml_loader = lambda do |path|
|
46
|
+
if path == "some_path"
|
47
|
+
{"spec_dir" => nil}
|
48
|
+
end
|
49
|
+
end
|
50
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', nil, yaml_loader)
|
51
|
+
parser.spec_dir.should == File.join('some_project_root', 'spec', 'javascripts')
|
52
|
+
end
|
53
|
+
|
54
|
+
it "spec_dir returns spec_dir if set" do
|
55
|
+
yaml_loader = lambda do |path|
|
56
|
+
if path == "some_path"
|
57
|
+
{"spec_dir" => "some_spec_dir"}
|
58
|
+
end
|
59
|
+
end
|
60
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', nil, yaml_loader)
|
61
|
+
parser.spec_dir.should == File.join('some_project_root', 'some_spec_dir')
|
62
|
+
end
|
63
|
+
|
64
|
+
it "expands src_file paths" do
|
65
|
+
expander = lambda do |dir, patterns|
|
66
|
+
if (dir == File.join('some_project_root', 'some_src') && patterns == ['some_patterns'])
|
67
|
+
['expected_results']
|
68
|
+
end
|
69
|
+
end
|
70
|
+
yaml_loader = lambda do |path|
|
71
|
+
if path == "some_path"
|
72
|
+
{ 'src_dir' => 'some_src', 'src_files' => ['some_patterns'] }
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', expander, yaml_loader)
|
77
|
+
|
78
|
+
parser.src_files.should == ['expected_results']
|
79
|
+
end
|
80
|
+
|
81
|
+
it "expands stylesheets paths" do
|
82
|
+
expander = lambda do |dir, patterns|
|
83
|
+
if (dir == File.join('some_project_root', 'some_src') && patterns == ['some_patterns'])
|
84
|
+
['expected_results']
|
85
|
+
end
|
86
|
+
end
|
87
|
+
yaml_loader = lambda do |path|
|
88
|
+
if path == "some_path"
|
89
|
+
{ 'src_dir' => 'some_src', 'stylesheets' => ['some_patterns'] }
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', expander, yaml_loader)
|
94
|
+
|
95
|
+
parser.css_files.should == ['expected_results']
|
96
|
+
end
|
97
|
+
|
98
|
+
it "expands spec_file paths" do
|
99
|
+
expander = lambda do |dir, patterns|
|
100
|
+
if (dir == File.join('some_project_root', 'some_spec') && patterns == ['some_patterns'])
|
101
|
+
['expected_results']
|
102
|
+
end
|
103
|
+
end
|
104
|
+
yaml_loader = lambda do |path|
|
105
|
+
if path == "some_path"
|
106
|
+
{ 'spec_dir' => 'some_spec', 'spec_files' => ['some_patterns'] }
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', expander, yaml_loader)
|
111
|
+
|
112
|
+
parser.spec_files.should == ['expected_results']
|
113
|
+
end
|
114
|
+
|
115
|
+
it "expands jasmine_file paths" do
|
116
|
+
expander = lambda do |dir, patterns|
|
117
|
+
if (dir == File.join('some_project_root', 'some_jasmine') && patterns == ['some_patterns'])
|
118
|
+
['expected_results']
|
119
|
+
end
|
120
|
+
end
|
121
|
+
yaml_loader = lambda do |path|
|
122
|
+
if path == "some_path"
|
123
|
+
{ 'jasmine_dir' => 'some_jasmine', 'jasmine_files' => ['some_patterns'] }
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', expander, yaml_loader)
|
128
|
+
|
129
|
+
parser.jasmine_files.should == ['expected_results']
|
130
|
+
end
|
131
|
+
|
132
|
+
it "expands jasmine css file paths" do
|
133
|
+
expander = lambda do |dir, patterns|
|
134
|
+
if (dir == File.join('some_project_root', 'some_jasmine') && patterns == ['some_patterns'])
|
135
|
+
['expected_results']
|
136
|
+
end
|
137
|
+
end
|
138
|
+
yaml_loader = lambda do |path|
|
139
|
+
if path == "some_path"
|
140
|
+
{ 'jasmine_dir' => 'some_jasmine', 'jasmine_css_files' => ['some_patterns'] }
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', expander, yaml_loader)
|
145
|
+
|
146
|
+
parser.jasmine_css_files.should == ['expected_results']
|
147
|
+
end
|
148
|
+
|
149
|
+
it "expands helper paths" do
|
150
|
+
expander = lambda do |dir, patterns|
|
151
|
+
if (dir == File.join('some_project_root', 'some_spec') && patterns == ['some_patterns'])
|
152
|
+
['expected_results']
|
153
|
+
end
|
154
|
+
end
|
155
|
+
yaml_loader = lambda do |path|
|
156
|
+
if path == "some_path"
|
157
|
+
{ 'spec_dir' => 'some_spec', 'helpers' => ['some_patterns'] }
|
158
|
+
end
|
159
|
+
end
|
160
|
+
|
161
|
+
parser = Jasmine::YamlConfigParser.new('some_path', 'some_project_root', expander, yaml_loader)
|
162
|
+
|
163
|
+
parser.helpers.should == ['expected_results']
|
164
|
+
end
|
165
|
+
|
166
|
+
it "doesn't blow up when blank values are passed" do
|
167
|
+
expander = lambda do |dir, patterns|
|
168
|
+
raise 'bad arguments' unless patterns.is_a?(Array)
|
169
|
+
[]
|
170
|
+
end
|
171
|
+
yaml_loader = lambda do |path|
|
172
|
+
{}
|
173
|
+
end
|
174
|
+
|
175
|
+
parser = Jasmine::YamlConfigParser.new({}, 'some_project_root', expander, yaml_loader)
|
176
|
+
parser.src_files.should == []
|
177
|
+
parser.spec_files.should == []
|
178
|
+
parser.css_files.should == []
|
179
|
+
parser.helpers.should == []
|
180
|
+
end
|
181
|
+
|
182
|
+
end
|
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.
|
4
|
+
version: 1.3.1
|
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-
|
14
|
+
date: 2012-12-03 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: rspec
|
@@ -114,17 +114,17 @@ dependencies:
|
|
114
114
|
requirement: !ruby/object:Gem::Requirement
|
115
115
|
none: false
|
116
116
|
requirements:
|
117
|
-
- -
|
117
|
+
- - ~>
|
118
118
|
- !ruby/object:Gem::Version
|
119
|
-
version: 1.3.
|
119
|
+
version: 1.3.1
|
120
120
|
type: :runtime
|
121
121
|
prerelease: false
|
122
122
|
version_requirements: !ruby/object:Gem::Requirement
|
123
123
|
none: false
|
124
124
|
requirements:
|
125
|
-
- -
|
125
|
+
- - ~>
|
126
126
|
- !ruby/object:Gem::Version
|
127
|
-
version: 1.3.
|
127
|
+
version: 1.3.1
|
128
128
|
- !ruby/object:Gem::Dependency
|
129
129
|
name: rack
|
130
130
|
requirement: !ruby/object:Gem::Requirement
|
@@ -215,58 +215,63 @@ files:
|
|
215
215
|
- lib/generators/jasmine/install/templates/spec/javascripts/support/jasmine.yml
|
216
216
|
- lib/jasmine.rb
|
217
217
|
- lib/jasmine/application.rb
|
218
|
+
- lib/jasmine/asset_expander.rb
|
218
219
|
- lib/jasmine/asset_pipeline_mapper.rb
|
220
|
+
- lib/jasmine/asset_pipeline_utility.rb
|
219
221
|
- lib/jasmine/base.rb
|
220
222
|
- lib/jasmine/command_line_tool.rb
|
221
223
|
- lib/jasmine/config.rb
|
224
|
+
- lib/jasmine/configuration.rb
|
225
|
+
- lib/jasmine/core_configuration.rb
|
222
226
|
- lib/jasmine/dependencies.rb
|
223
227
|
- lib/jasmine/firebug/firebug-1.6.2.xpi
|
224
228
|
- lib/jasmine/firebug/firebug-1.7.0.xpi
|
225
229
|
- lib/jasmine/firebug/firebug-license.txt
|
226
230
|
- lib/jasmine/firebug/firebug.rb
|
231
|
+
- lib/jasmine/javascripts/boot.js
|
227
232
|
- lib/jasmine/page.rb
|
233
|
+
- lib/jasmine/path_expander.rb
|
234
|
+
- lib/jasmine/path_mapper.rb
|
228
235
|
- lib/jasmine/railtie.rb
|
229
236
|
- lib/jasmine/results.rb
|
230
237
|
- lib/jasmine/results_processor.rb
|
231
238
|
- lib/jasmine/rspec_formatter.rb
|
232
239
|
- lib/jasmine/run.html.erb
|
233
240
|
- lib/jasmine/run_specs.rb
|
234
|
-
- lib/jasmine/runner_config.rb
|
235
241
|
- lib/jasmine/runners/http.rb
|
236
242
|
- lib/jasmine/selenium_driver.rb
|
237
243
|
- lib/jasmine/server.rb
|
238
|
-
- lib/jasmine/sprockets_mapper.rb
|
239
244
|
- lib/jasmine/tasks/jasmine.rake
|
240
245
|
- lib/jasmine/tasks/jasmine_rails3.rake
|
241
246
|
- lib/jasmine/version.rb
|
247
|
+
- lib/jasmine/yaml_config_parser.rb
|
242
248
|
- lib/rack/jasmine/cache_control.rb
|
243
249
|
- lib/rack/jasmine/focused_suite.rb
|
244
|
-
- lib/rack/jasmine/redirect.rb
|
245
250
|
- lib/rack/jasmine/runner.rb
|
251
|
+
- spec/application_integration_spec.rb
|
246
252
|
- spec/application_spec.rb
|
253
|
+
- spec/asset_expander_spec.rb
|
247
254
|
- spec/asset_pipeline_mapper_spec.rb
|
248
|
-
- spec/
|
255
|
+
- spec/base_spec.rb
|
256
|
+
- spec/configuration_spec.rb
|
249
257
|
- spec/dependencies_spec.rb
|
250
258
|
- spec/fixture/Rakefile
|
251
|
-
- spec/fixture/jasmine.erb.yml
|
252
|
-
- spec/fixture/spec/example_spec.js
|
253
|
-
- spec/fixture/src/example.js
|
254
259
|
- spec/jasmine_command_line_tool_rakeless_spec.rb
|
255
260
|
- spec/jasmine_command_line_tool_spec.rb
|
256
261
|
- spec/jasmine_pojs_spec.rb
|
257
262
|
- spec/jasmine_rails2_spec.rb
|
258
263
|
- spec/jasmine_rails3_spec.rb
|
259
|
-
- spec/jasmine_self_test_config.rb
|
260
264
|
- spec/jasmine_self_test_spec.rb
|
261
265
|
- spec/page_spec.rb
|
266
|
+
- spec/path_expander_spec.rb
|
267
|
+
- spec/path_mapper_spec.rb
|
262
268
|
- spec/rack/jasmine/runner_spec.rb
|
263
269
|
- spec/results_processor_spec.rb
|
264
270
|
- spec/results_spec.rb
|
265
271
|
- spec/rspec_formatter_spec.rb
|
266
|
-
- spec/runner_config_spec.rb
|
267
272
|
- spec/server_spec.rb
|
268
273
|
- spec/spec_helper.rb
|
269
|
-
- spec/
|
274
|
+
- spec/yaml_config_parser_spec.rb
|
270
275
|
homepage: http://pivotal.github.com/jasmine/
|
271
276
|
licenses:
|
272
277
|
- MIT
|
@@ -281,12 +286,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
281
286
|
- - ! '>='
|
282
287
|
- !ruby/object:Gem::Version
|
283
288
|
version: '0'
|
289
|
+
segments:
|
290
|
+
- 0
|
291
|
+
hash: -2055152305295795874
|
284
292
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
285
293
|
none: false
|
286
294
|
requirements:
|
287
295
|
- - ! '>='
|
288
296
|
- !ruby/object:Gem::Version
|
289
297
|
version: '0'
|
298
|
+
segments:
|
299
|
+
- 0
|
300
|
+
hash: -2055152305295795874
|
290
301
|
requirements: []
|
291
302
|
rubyforge_project:
|
292
303
|
rubygems_version: 1.8.24
|
@@ -294,27 +305,27 @@ signing_key:
|
|
294
305
|
specification_version: 3
|
295
306
|
summary: JavaScript BDD framework
|
296
307
|
test_files:
|
308
|
+
- spec/application_integration_spec.rb
|
297
309
|
- spec/application_spec.rb
|
310
|
+
- spec/asset_expander_spec.rb
|
298
311
|
- spec/asset_pipeline_mapper_spec.rb
|
299
|
-
- spec/
|
312
|
+
- spec/base_spec.rb
|
313
|
+
- spec/configuration_spec.rb
|
300
314
|
- spec/dependencies_spec.rb
|
301
315
|
- spec/fixture/Rakefile
|
302
|
-
- spec/fixture/jasmine.erb.yml
|
303
|
-
- spec/fixture/spec/example_spec.js
|
304
|
-
- spec/fixture/src/example.js
|
305
316
|
- spec/jasmine_command_line_tool_rakeless_spec.rb
|
306
317
|
- spec/jasmine_command_line_tool_spec.rb
|
307
318
|
- spec/jasmine_pojs_spec.rb
|
308
319
|
- spec/jasmine_rails2_spec.rb
|
309
320
|
- spec/jasmine_rails3_spec.rb
|
310
|
-
- spec/jasmine_self_test_config.rb
|
311
321
|
- spec/jasmine_self_test_spec.rb
|
312
322
|
- spec/page_spec.rb
|
323
|
+
- spec/path_expander_spec.rb
|
324
|
+
- spec/path_mapper_spec.rb
|
313
325
|
- spec/rack/jasmine/runner_spec.rb
|
314
326
|
- spec/results_processor_spec.rb
|
315
327
|
- spec/results_spec.rb
|
316
328
|
- spec/rspec_formatter_spec.rb
|
317
|
-
- spec/runner_config_spec.rb
|
318
329
|
- spec/server_spec.rb
|
319
330
|
- spec/spec_helper.rb
|
320
|
-
- spec/
|
331
|
+
- spec/yaml_config_parser_spec.rb
|
@@ -1,71 +0,0 @@
|
|
1
|
-
module Jasmine
|
2
|
-
class RunnerConfig
|
3
|
-
def initialize(config = Jasmine::Config.new)
|
4
|
-
@config = config
|
5
|
-
end
|
6
|
-
|
7
|
-
def css_files
|
8
|
-
@config.jasmine_stylesheets + @config.user_stylesheets
|
9
|
-
end
|
10
|
-
|
11
|
-
def jasmine_files
|
12
|
-
@config.jasmine_javascripts
|
13
|
-
end
|
14
|
-
|
15
|
-
def js_files
|
16
|
-
@config.js_files
|
17
|
-
end
|
18
|
-
|
19
|
-
def spec_files
|
20
|
-
@config.spec_files
|
21
|
-
end
|
22
|
-
|
23
|
-
def spec_files_full_paths
|
24
|
-
@config.spec_files_full_paths
|
25
|
-
end
|
26
|
-
|
27
|
-
def spec_path
|
28
|
-
@config.spec_path
|
29
|
-
end
|
30
|
-
|
31
|
-
def spec_dir
|
32
|
-
@config.spec_dir
|
33
|
-
end
|
34
|
-
|
35
|
-
def src_dir
|
36
|
-
@config.src_dir
|
37
|
-
end
|
38
|
-
|
39
|
-
def project_root
|
40
|
-
@config.project_root
|
41
|
-
end
|
42
|
-
|
43
|
-
def root_path
|
44
|
-
@config.root_path
|
45
|
-
end
|
46
|
-
|
47
|
-
def browser
|
48
|
-
ENV["JASMINE_BROWSER"] || 'firefox'
|
49
|
-
end
|
50
|
-
|
51
|
-
def port
|
52
|
-
@config.port
|
53
|
-
end
|
54
|
-
|
55
|
-
def jasmine_server_url
|
56
|
-
"#{@config.jasmine_host}:#{@config.port}/"
|
57
|
-
end
|
58
|
-
|
59
|
-
def src_mapper=(context)
|
60
|
-
@config.src_mapper = context
|
61
|
-
end
|
62
|
-
|
63
|
-
def src_mapper
|
64
|
-
@config.src_mapper
|
65
|
-
end
|
66
|
-
|
67
|
-
def result_batch_size
|
68
|
-
ENV["JASMINE_RESULT_BATCH_SIZE"] ? ENV["JASMINE_RESULT_BATCH_SIZE"].to_i : 50
|
69
|
-
end
|
70
|
-
end
|
71
|
-
end
|
@@ -1,13 +0,0 @@
|
|
1
|
-
class Jasmine::SprocketsMapper
|
2
|
-
def initialize(context, mount_point = 'assets')
|
3
|
-
@context = context
|
4
|
-
@mount_point = mount_point
|
5
|
-
end
|
6
|
-
|
7
|
-
def files(src_files)
|
8
|
-
src_files.map do |src_file|
|
9
|
-
filename = src_file.gsub(/^assets\//, '').gsub(/\.js$/, '')
|
10
|
-
@context.find_asset(filename).to_a.map(&:logical_path).map(&:to_s)
|
11
|
-
end.flatten.uniq.map{|path| File.join(@mount_point, path).to_s + "?body=true"}
|
12
|
-
end
|
13
|
-
end
|