jasmine-headless-webkit 0.7.1 → 0.7.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -0
- data/CHANGELOG.md +27 -0
- data/Rakefile +15 -3
- data/bin/jasmine-headless-webkit +1 -8
- data/ext/jasmine-webkit-specrunner/ConsoleOutput.cpp +10 -1
- data/ext/jasmine-webkit-specrunner/ConsoleOutput.h +1 -0
- data/ext/jasmine-webkit-specrunner/test.rb +9 -2
- data/jasmine/jasmine.headless-reporter.coffee +162 -107
- data/jasmine/jasmine.headless-reporter.js +207 -143
- data/lib/jasmine/files_list.rb +76 -24
- data/lib/jasmine/headless/cacheable_action.rb +6 -2
- data/lib/jasmine/headless/options.rb +5 -1
- data/lib/jasmine/headless/runner.rb +21 -8
- data/lib/jasmine/headless/spec_file_analyzer.rb +10 -3
- data/lib/jasmine/headless/template_writer.rb +41 -0
- data/lib/jasmine/headless/version.rb +1 -1
- data/lib/jasmine/headless.rb +24 -0
- data/lib/jasmine-headless-webkit.rb +1 -16
- data/skel/template.html.erb +71 -0
- data/spec/bin/jasmine-headless-webkit_spec.rb +14 -2
- data/spec/javascripts/jasmine.headless-reporter_spec.coffee +19 -0
- data/spec/lib/jasmine/files_list_spec.rb +32 -3
- data/spec/lib/jasmine/headless/cacheable_action_spec.rb +8 -1
- data/spec/lib/jasmine/headless/runner_spec.rb +59 -0
- data/spec/lib/jasmine/headless/template_writer_spec.rb +84 -0
- metadata +16 -14
- data/lib/jasmine/template_writer.rb +0 -86
- data/spec/lib/jasmine/template_writer_spec.rb +0 -37
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'multi_json'
|
2
|
+
require 'erb'
|
3
|
+
require 'tempfile'
|
4
|
+
|
5
|
+
module Jasmine::Headless
|
6
|
+
class TemplateWriter
|
7
|
+
attr_reader :runner
|
8
|
+
|
9
|
+
def initialize(runner)
|
10
|
+
@runner = runner
|
11
|
+
end
|
12
|
+
|
13
|
+
def write!(files_list)
|
14
|
+
output = [
|
15
|
+
[ all_tests_filename, files_list.files_to_html ]
|
16
|
+
]
|
17
|
+
|
18
|
+
output.unshift([filtered_tests_filename , files_list.filtered_files_to_html ]) if files_list.filtered?
|
19
|
+
|
20
|
+
output.each do |name, files|
|
21
|
+
File.open(name, 'w') { |fh| fh.print template_for(files, files_list.spec_file_line_numbers) }
|
22
|
+
end
|
23
|
+
|
24
|
+
output.collect(&:first)
|
25
|
+
end
|
26
|
+
|
27
|
+
def all_tests_filename
|
28
|
+
runner.runner_filename || "jhw.#{$$}.html"
|
29
|
+
end
|
30
|
+
|
31
|
+
def filtered_tests_filename
|
32
|
+
all_tests_filename.gsub(%r{\.html$}, '.filter.html')
|
33
|
+
end
|
34
|
+
|
35
|
+
private
|
36
|
+
def template_for(files, spec_lines)
|
37
|
+
ERB.new(Jasmine::Headless.root.join('skel/template.html.erb').read).result(binding)
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
|
3
|
+
module Jasmine::Headless
|
4
|
+
autoload :CoffeeScriptCache, 'jasmine/headless/coffee_script_cache'
|
5
|
+
autoload :SpecFileAnalyzer, 'jasmine/headless/spec_file_analyzer'
|
6
|
+
autoload :CacheableAction, 'jasmine/headless/cacheable_action'
|
7
|
+
autoload :VERSION, 'jasmine/headless/version'
|
8
|
+
autoload :Runner, 'jasmine/headless/runner'
|
9
|
+
autoload :Options, 'jasmine/headless/options'
|
10
|
+
autoload :Task, 'jasmine/headless/task'
|
11
|
+
|
12
|
+
autoload :TemplateWriter, 'jasmine/headless/template_writer'
|
13
|
+
|
14
|
+
autoload :Report, 'jasmine/headless/report'
|
15
|
+
autoload :ReportMessage, 'jasmine/headless/report_message'
|
16
|
+
|
17
|
+
class << self
|
18
|
+
def root
|
19
|
+
@root ||= Pathname.new(File.expand_path('../../..', __FILE__))
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
require 'jasmine/headless/errors'
|
@@ -1,22 +1,7 @@
|
|
1
1
|
module Jasmine
|
2
2
|
autoload :FilesList, 'jasmine/files_list'
|
3
|
-
autoload :TemplateWriter, 'jasmine/template_writer'
|
4
|
-
|
5
|
-
module Headless
|
6
|
-
autoload :CoffeeScriptCache, 'jasmine/headless/coffee_script_cache'
|
7
|
-
autoload :SpecFileAnalyzer, 'jasmine/headless/spec_file_analyzer'
|
8
|
-
autoload :CacheableAction, 'jasmine/headless/cacheable_action'
|
9
|
-
autoload :VERSION, 'jasmine/headless/version'
|
10
|
-
autoload :Runner, 'jasmine/headless/runner'
|
11
|
-
autoload :Options, 'jasmine/headless/options'
|
12
|
-
autoload :Task, 'jasmine/headless/task'
|
13
|
-
|
14
|
-
autoload :Report, 'jasmine/headless/report'
|
15
|
-
autoload :ReportMessage, 'jasmine/headless/report_message'
|
16
|
-
end
|
17
3
|
end
|
18
4
|
|
19
|
-
require 'jasmine/headless
|
20
|
-
|
5
|
+
require 'jasmine/headless'
|
21
6
|
require 'jasmine/headless/railtie' if defined?(Rails) && Rails::VERSION::MAJOR >= 3
|
22
7
|
|
@@ -0,0 +1,71 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta content="text/html;charset=UTF-8" http-equiv="Content-Type"/>
|
5
|
+
<title>Jasmine Test Runner - Generated by jasmine-headless-webkit</title>
|
6
|
+
<script type="text/javascript">
|
7
|
+
if (window.JHW) {
|
8
|
+
window.console = { log: function(data) {
|
9
|
+
if (typeof(jQuery) !== 'undefined' && data instanceof jQuery) {
|
10
|
+
JHW.log(style_html($("<div />").append(data).html(), { indent_size: 2 }));
|
11
|
+
} else {
|
12
|
+
var usejsDump = true;
|
13
|
+
try {
|
14
|
+
if (typeof data.toJSON == 'function') {
|
15
|
+
JHW.log("JSON: " + JSON.stringify(data, null, 2));
|
16
|
+
usejsDump = false;
|
17
|
+
}
|
18
|
+
} catch (e) {}
|
19
|
+
|
20
|
+
if (usejsDump) {
|
21
|
+
var dump = jsDump.doParse(data);
|
22
|
+
if (dump.indexOf("\\n") == -1) {
|
23
|
+
JHW.log(dump);
|
24
|
+
} else {
|
25
|
+
JHW.log("jsDump: " + dump);
|
26
|
+
}
|
27
|
+
}
|
28
|
+
}
|
29
|
+
}, pp: function(data) {
|
30
|
+
JHW.log(jasmine ? jasmine.pp(data) : JSON.stringify(data));
|
31
|
+
}, peek: function(data) {
|
32
|
+
console.log(data);
|
33
|
+
return data;
|
34
|
+
} };
|
35
|
+
|
36
|
+
window.onbeforeunload = function(e) {
|
37
|
+
JHW.leavePageAttempt('The code tried to leave the test page. Check for unhandled form submits and link clicks.');
|
38
|
+
|
39
|
+
if (e = e || window.event) {
|
40
|
+
e.returnValue = "leaving";
|
41
|
+
}
|
42
|
+
|
43
|
+
return "leaving";
|
44
|
+
};
|
45
|
+
}
|
46
|
+
</script>
|
47
|
+
<%= files.join("\n") %>
|
48
|
+
<script type="text/javascript">
|
49
|
+
if (window.JHW) { HeadlessReporterResult.specLineNumbers = <%= MultiJson.encode(spec_lines) %>; }
|
50
|
+
</script>
|
51
|
+
</head>
|
52
|
+
<body>
|
53
|
+
<script type="text/javascript">
|
54
|
+
window._onload = window.onload
|
55
|
+
|
56
|
+
window.onload = function() {
|
57
|
+
if (window._onload) { window._onload() }
|
58
|
+
if (window.JHW) {
|
59
|
+
jasmine.getEnv().addReporter(new jasmine.HeadlessReporter(function() {
|
60
|
+
window.onbeforeunload = null;
|
61
|
+
}));
|
62
|
+
} else {
|
63
|
+
jasmine.getEnv().addReporter(new jasmine.HtmlReporter());
|
64
|
+
}
|
65
|
+
|
66
|
+
jasmine.getEnv().execute();
|
67
|
+
}
|
68
|
+
</script>
|
69
|
+
</body>
|
70
|
+
</html>
|
71
|
+
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'spec_helper'
|
2
|
+
require 'tempfile'
|
2
3
|
|
3
4
|
describe "jasmine-headless-webkit" do
|
4
5
|
let(:report) { 'spec/report.txt' }
|
@@ -122,8 +123,19 @@ describe "jasmine-headless-webkit" do
|
|
122
123
|
files = %x{bin/jasmine-headless-webkit -l -j spec/jasmine/success/success.yml}
|
123
124
|
$?.exitstatus.should == 0
|
124
125
|
|
125
|
-
files.lines.to_a.should include("./spec/jasmine/success/success.js\n")
|
126
|
-
files.lines.to_a.should include("./spec/jasmine/success/success_spec.js\n")
|
126
|
+
files.lines.to_a.should include(File.expand_path("./spec/jasmine/success/success.js\n"))
|
127
|
+
files.lines.to_a.should include(File.expand_path("./spec/jasmine/success/success_spec.js\n"))
|
128
|
+
end
|
129
|
+
end
|
130
|
+
|
131
|
+
describe 'runner-out' do
|
132
|
+
it 'should write out the runner HTML to the specified path and not run the test' do
|
133
|
+
runner_path = Tempfile.new('jhw')
|
134
|
+
runner_path.close
|
135
|
+
|
136
|
+
system %{bin/jasmine-headless-webkit -j spec/jasmine/success/success.yml --runner-out #{runner_path.path}}
|
137
|
+
|
138
|
+
File.size(runner_path.path).should_not == 0
|
127
139
|
end
|
128
140
|
end
|
129
141
|
end
|
@@ -94,3 +94,22 @@ describe 'jasmine.WaitsBlock and jasmine.WaitsForBlock', ->
|
|
94
94
|
runs ->
|
95
95
|
expect(true).toEqual(true)
|
96
96
|
|
97
|
+
describe 'jasmine.NestedResults.isValidSpecLine', ->
|
98
|
+
it 'should check the lines', ->
|
99
|
+
expect(jasmine.NestedResults.isValidSpecLine('yes')).toEqual(false)
|
100
|
+
expect(jasmine.NestedResults.isValidSpecLine('expect')).toEqual(true)
|
101
|
+
expect(jasmine.NestedResults.isValidSpecLine(' expect')).toEqual(true)
|
102
|
+
expect(jasmine.NestedResults.isValidSpecLine('return expect')).toEqual(true)
|
103
|
+
expect(jasmine.NestedResults.isValidSpecLine(' return expect')).toEqual(true)
|
104
|
+
|
105
|
+
describe 'jasmine.nestedResults.parseFunction', ->
|
106
|
+
it 'should parse the function', ->
|
107
|
+
expect(jasmine.NestedResults.parseFunction("""
|
108
|
+
test
|
109
|
+
expect("cat")
|
110
|
+
return expect("dog")
|
111
|
+
""")).toEqual([
|
112
|
+
[ 'expect("cat")', 1 ],
|
113
|
+
[ 'expect("dog")', 2 ]
|
114
|
+
])
|
115
|
+
|
@@ -6,13 +6,14 @@ require 'fakefs/spec_helpers'
|
|
6
6
|
require 'coffee-script'
|
7
7
|
|
8
8
|
describe Jasmine::FilesList do
|
9
|
-
let(:files_list) {
|
9
|
+
let(:files_list) { described_class.new }
|
10
10
|
|
11
11
|
describe '#initialize' do
|
12
12
|
it "should have default files" do
|
13
13
|
files_list.files.should == [
|
14
14
|
File.join(Jasmine::Core.path, "jasmine.js"),
|
15
15
|
File.join(Jasmine::Core.path, "jasmine-html.js"),
|
16
|
+
File.join(Jasmine::Core.path, "jasmine.css"),
|
16
17
|
File.expand_path('jasmine/jasmine.headless-reporter.js'),
|
17
18
|
File.expand_path('js-lib/jsDump.js'),
|
18
19
|
File.expand_path('js-lib/beautify-html.js'),
|
@@ -21,7 +22,7 @@ describe Jasmine::FilesList do
|
|
21
22
|
end
|
22
23
|
|
23
24
|
describe '#use_config' do
|
24
|
-
let(:files_list) {
|
25
|
+
let(:files_list) { described_class.new(:config => config) }
|
25
26
|
|
26
27
|
include FakeFS::SpecHelpers
|
27
28
|
|
@@ -80,6 +81,33 @@ describe Jasmine::FilesList do
|
|
80
81
|
|
81
82
|
it_should_behave_like :reading_data
|
82
83
|
end
|
84
|
+
|
85
|
+
context 'with vendored helpers' do
|
86
|
+
let(:config) { {
|
87
|
+
'src_dir' => src_dir,
|
88
|
+
'spec_dir' => spec_dir,
|
89
|
+
'src_files' => [ 'js/first_file.js', 'js/*.js' ],
|
90
|
+
'spec_files' => [ '*_spec.js' ],
|
91
|
+
'helpers' => [],
|
92
|
+
'stylesheets' => [ 'stylesheet/*.css' ],
|
93
|
+
'vendored_helpers' => [ 'one', 'two' ]
|
94
|
+
} }
|
95
|
+
|
96
|
+
let(:helper_file) { "path/one.js" }
|
97
|
+
let(:other_helper_file) { "path/two.js" }
|
98
|
+
|
99
|
+
before do
|
100
|
+
described_class.expects(:find_vendored_asset_path).with('one').returns([ helper_file ])
|
101
|
+
described_class.expects(:find_vendored_asset_path).with('two').returns([ other_helper_file ])
|
102
|
+
end
|
103
|
+
|
104
|
+
it 'should find the vendored file' do
|
105
|
+
files_list.files.should include(helper_file)
|
106
|
+
files_list.files.should include(other_helper_file)
|
107
|
+
|
108
|
+
files_list.files.index(helper_file).should be < files_list.files.index(other_helper_file)
|
109
|
+
end
|
110
|
+
end
|
83
111
|
end
|
84
112
|
|
85
113
|
context 'with filtered specs' do
|
@@ -170,7 +198,8 @@ describe Jasmine::FilesList do
|
|
170
198
|
'test.coffee'
|
171
199
|
])
|
172
200
|
|
173
|
-
|
201
|
+
File.stubs(:read)
|
202
|
+
Jasmine::Headless::CoffeeScriptCache.any_instance.stubs(:handle).returns("i compiled")
|
174
203
|
end
|
175
204
|
|
176
205
|
context '#files_to_html' do
|
@@ -19,9 +19,11 @@ describe Jasmine::Headless::CacheableAction do
|
|
19
19
|
|
20
20
|
let(:cache_type) { 'action' }
|
21
21
|
let(:cache_dir) { 'cache' }
|
22
|
-
let(:cache_file) { File.join(cache_dir, cache_type, Digest::SHA1.hexdigest(file)) }
|
22
|
+
let(:cache_file) { File.join(cache_dir, cache_type, Digest::SHA1.hexdigest(file)) + '.js' }
|
23
23
|
let(:cache_file_data) { YAML.load(File.read(cache_file)) }
|
24
24
|
|
25
|
+
let(:cache_object) { described_class.new(file) }
|
26
|
+
|
25
27
|
describe '.for' do
|
26
28
|
context 'cache disabled' do
|
27
29
|
before do
|
@@ -32,6 +34,8 @@ describe Jasmine::Headless::CacheableAction do
|
|
32
34
|
action_runs!
|
33
35
|
described_class.for(file).should == compiled
|
34
36
|
cache_file.should_not be_a_file
|
37
|
+
|
38
|
+
cache_object.should_not be_cached
|
35
39
|
end
|
36
40
|
end
|
37
41
|
|
@@ -52,6 +56,7 @@ describe Jasmine::Headless::CacheableAction do
|
|
52
56
|
described_class.for(file).should == compiled
|
53
57
|
|
54
58
|
cache_file_data.should == compiled
|
59
|
+
cache_object.should be_cached
|
55
60
|
end
|
56
61
|
end
|
57
62
|
|
@@ -69,6 +74,7 @@ describe Jasmine::Headless::CacheableAction do
|
|
69
74
|
described_class.for(file).should == compiled
|
70
75
|
|
71
76
|
cache_file_data.should == compiled
|
77
|
+
cache_object.should be_cached
|
72
78
|
end
|
73
79
|
end
|
74
80
|
|
@@ -81,6 +87,7 @@ describe Jasmine::Headless::CacheableAction do
|
|
81
87
|
described_class.for(file).should == compiled
|
82
88
|
|
83
89
|
cache_file_data.should == compiled
|
90
|
+
cache_object.should be_cached
|
84
91
|
end
|
85
92
|
end
|
86
93
|
end
|
@@ -13,6 +13,11 @@ describe Jasmine::Headless::Runner do
|
|
13
13
|
runner.options[:test].should == 'test'
|
14
14
|
runner.options[:jasmine_config].should == 'spec/javascripts/support/jasmine.yml'
|
15
15
|
end
|
16
|
+
|
17
|
+
it 'should have a template writer' do
|
18
|
+
runner.template_writer.should be_a_kind_of(Jasmine::Headless::TemplateWriter)
|
19
|
+
runner.template_writer.runner.should == runner
|
20
|
+
end
|
16
21
|
end
|
17
22
|
|
18
23
|
describe '#load_config' do
|
@@ -96,4 +101,58 @@ describe Jasmine::Headless::Runner do
|
|
96
101
|
report.should contain_a_failing_spec(['failure', 'should fail with error code of 1'])
|
97
102
|
end
|
98
103
|
end
|
104
|
+
|
105
|
+
describe '#runner_filename' do
|
106
|
+
let(:runner_filename) { runner.runner_filename }
|
107
|
+
let(:yaml_output) { 'yaml output' }
|
108
|
+
|
109
|
+
context 'not in options' do
|
110
|
+
let(:opts) { { :runner_output_filename => false } }
|
111
|
+
|
112
|
+
context 'not in yaml file' do
|
113
|
+
before do
|
114
|
+
runner.stubs(:jasmine_config).returns('runner_output' => '')
|
115
|
+
end
|
116
|
+
|
117
|
+
it 'should reverse the remove_html_file option' do
|
118
|
+
runner_filename.should == false
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
122
|
+
context 'in yaml file' do
|
123
|
+
before do
|
124
|
+
runner.stubs(:jasmine_config).returns('runner_output' => yaml_output)
|
125
|
+
end
|
126
|
+
|
127
|
+
it 'should use the yaml file definition' do
|
128
|
+
runner_filename.should == yaml_output
|
129
|
+
end
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
133
|
+
context 'in options' do
|
134
|
+
let(:filename) { 'filename.html' }
|
135
|
+
let(:opts) { { :runner_output_filename => filename } }
|
136
|
+
|
137
|
+
context 'not in yaml file' do
|
138
|
+
before do
|
139
|
+
runner.stubs(:jasmine_config).returns('runner_output' => '')
|
140
|
+
end
|
141
|
+
|
142
|
+
it 'should reverse the remove_html_file option' do
|
143
|
+
runner.runner_filename.should == filename
|
144
|
+
end
|
145
|
+
end
|
146
|
+
|
147
|
+
context 'in yaml file' do
|
148
|
+
before do
|
149
|
+
runner.stubs(:jasmine_config).returns('runner_output' => yaml_output)
|
150
|
+
end
|
151
|
+
|
152
|
+
it 'shoulduse the command line filename' do
|
153
|
+
runner.runner_filename.should == filename
|
154
|
+
end
|
155
|
+
end
|
156
|
+
end
|
157
|
+
end
|
99
158
|
end
|
@@ -0,0 +1,84 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'fakefs/spec_helpers'
|
3
|
+
|
4
|
+
describe Jasmine::Headless::TemplateWriter do
|
5
|
+
let(:runner) { stub }
|
6
|
+
let(:template_writer) { described_class.new(runner) }
|
7
|
+
|
8
|
+
describe '#all_tests_filename' do
|
9
|
+
let(:all_tests_filename) { template_writer.all_tests_filename }
|
10
|
+
|
11
|
+
context 'runner does not care about filename' do
|
12
|
+
before do
|
13
|
+
runner.stubs(:runner_filename).returns(false)
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'should use a specrunner.html file' do
|
17
|
+
all_tests_filename.should_not include('tmp')
|
18
|
+
all_tests_filename.should include('jhw')
|
19
|
+
all_tests_filename.should include('.html')
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
context 'runner cares about filename' do
|
24
|
+
let(:filename) { 'filename.html' }
|
25
|
+
|
26
|
+
before do
|
27
|
+
runner.stubs(:runner_filename).returns(filename)
|
28
|
+
end
|
29
|
+
|
30
|
+
it 'should use a specrunner.html file' do
|
31
|
+
all_tests_filename.should == filename
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
describe '#filtered_tests_filename' do
|
37
|
+
before do
|
38
|
+
template_writer.stubs(:all_tests_filename).returns("test.html")
|
39
|
+
end
|
40
|
+
|
41
|
+
it 'should filter the filename for all tests' do
|
42
|
+
template_writer.filtered_tests_filename.should == 'test.filter.html'
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
describe '#write!' do
|
47
|
+
include FakeFS::SpecHelpers
|
48
|
+
|
49
|
+
before do
|
50
|
+
File.stubs(:read).returns(nil)
|
51
|
+
|
52
|
+
runner.stubs(:keep_runner).returns(true)
|
53
|
+
runner.stubs(:runner_filename).returns(false)
|
54
|
+
end
|
55
|
+
|
56
|
+
let(:files_list) { Jasmine::FilesList.new }
|
57
|
+
|
58
|
+
before do
|
59
|
+
files_list.files << 'file.js'
|
60
|
+
files_list.filtered_files << 'file.js'
|
61
|
+
end
|
62
|
+
|
63
|
+
context 'no filter' do
|
64
|
+
it 'should write one file' do
|
65
|
+
template_writer.write!(files_list).should == [
|
66
|
+
"jhw.#{$$}.html"
|
67
|
+
]
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
context 'filtered files' do
|
72
|
+
before do
|
73
|
+
files_list.files << 'file2.js'
|
74
|
+
end
|
75
|
+
|
76
|
+
it 'should write two files' do
|
77
|
+
template_writer.write!(files_list).should == [
|
78
|
+
"jhw.#{$$}.filter.html", "jhw.#{$$}.html"
|
79
|
+
]
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jasmine-headless-webkit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,11 +11,11 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2011-
|
14
|
+
date: 2011-10-24 00:00:00.000000000Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: jasmine-core
|
18
|
-
requirement: &
|
18
|
+
requirement: &2160034300 !ruby/object:Gem::Requirement
|
19
19
|
none: false
|
20
20
|
requirements:
|
21
21
|
- - ~>
|
@@ -23,10 +23,10 @@ dependencies:
|
|
23
23
|
version: 1.1.beta
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
|
-
version_requirements: *
|
26
|
+
version_requirements: *2160034300
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: coffee-script
|
29
|
-
requirement: &
|
29
|
+
requirement: &2160033760 !ruby/object:Gem::Requirement
|
30
30
|
none: false
|
31
31
|
requirements:
|
32
32
|
- - ! '>='
|
@@ -34,10 +34,10 @@ dependencies:
|
|
34
34
|
version: '2.2'
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
|
-
version_requirements: *
|
37
|
+
version_requirements: *2160033760
|
38
38
|
- !ruby/object:Gem::Dependency
|
39
39
|
name: rainbow
|
40
|
-
requirement: &
|
40
|
+
requirement: &2160033360 !ruby/object:Gem::Requirement
|
41
41
|
none: false
|
42
42
|
requirements:
|
43
43
|
- - ! '>='
|
@@ -45,10 +45,10 @@ dependencies:
|
|
45
45
|
version: '0'
|
46
46
|
type: :runtime
|
47
47
|
prerelease: false
|
48
|
-
version_requirements: *
|
48
|
+
version_requirements: *2160033360
|
49
49
|
- !ruby/object:Gem::Dependency
|
50
50
|
name: multi_json
|
51
|
-
requirement: &
|
51
|
+
requirement: &2160032900 !ruby/object:Gem::Requirement
|
52
52
|
none: false
|
53
53
|
requirements:
|
54
54
|
- - ! '>='
|
@@ -56,7 +56,7 @@ dependencies:
|
|
56
56
|
version: '0'
|
57
57
|
type: :runtime
|
58
58
|
prerelease: false
|
59
|
-
version_requirements: *
|
59
|
+
version_requirements: *2160032900
|
60
60
|
description: Run Jasmine specs headlessly
|
61
61
|
email:
|
62
62
|
- john@coswellproductions.com
|
@@ -113,6 +113,7 @@ files:
|
|
113
113
|
- lib/autotest/jasmine_rspec2.rb
|
114
114
|
- lib/jasmine-headless-webkit.rb
|
115
115
|
- lib/jasmine/files_list.rb
|
116
|
+
- lib/jasmine/headless.rb
|
116
117
|
- lib/jasmine/headless/cacheable_action.rb
|
117
118
|
- lib/jasmine/headless/coffee_script_cache.rb
|
118
119
|
- lib/jasmine/headless/errors.rb
|
@@ -129,13 +130,14 @@ files:
|
|
129
130
|
- lib/jasmine/headless/runner.rb
|
130
131
|
- lib/jasmine/headless/spec_file_analyzer.rb
|
131
132
|
- lib/jasmine/headless/task.rb
|
133
|
+
- lib/jasmine/headless/template_writer.rb
|
132
134
|
- lib/jasmine/headless/version.rb
|
133
|
-
- lib/jasmine/template_writer.rb
|
134
135
|
- lib/qt/qmake.rb
|
135
136
|
- script/gemfile
|
136
137
|
- script/hooks/pre-commit
|
137
138
|
- script/initialize-environment
|
138
139
|
- script/install-git-hooks
|
140
|
+
- skel/template.html.erb
|
139
141
|
- spec/bin/jasmine-headless-webkit_spec.rb
|
140
142
|
- spec/jasmine/click_button/click_button.js
|
141
143
|
- spec/jasmine/click_button/click_button.yml
|
@@ -183,7 +185,7 @@ files:
|
|
183
185
|
- spec/lib/jasmine/headless/runner_spec.rb
|
184
186
|
- spec/lib/jasmine/headless/spec_file_analyzer_spec.rb
|
185
187
|
- spec/lib/jasmine/headless/task_spec.rb
|
186
|
-
- spec/lib/jasmine/template_writer_spec.rb
|
188
|
+
- spec/lib/jasmine/headless/template_writer_spec.rb
|
187
189
|
- spec/lib/qt/qmake_spec.rb
|
188
190
|
- spec/spec_helper.rb
|
189
191
|
homepage: ''
|
@@ -206,7 +208,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
206
208
|
version: '0'
|
207
209
|
requirements: []
|
208
210
|
rubyforge_project: jasmine-headless-webkit
|
209
|
-
rubygems_version: 1.8.
|
211
|
+
rubygems_version: 1.8.11
|
210
212
|
signing_key:
|
211
213
|
specification_version: 3
|
212
214
|
summary: Run Jasmine specs headlessly in a WebKit browser
|
@@ -258,6 +260,6 @@ test_files:
|
|
258
260
|
- spec/lib/jasmine/headless/runner_spec.rb
|
259
261
|
- spec/lib/jasmine/headless/spec_file_analyzer_spec.rb
|
260
262
|
- spec/lib/jasmine/headless/task_spec.rb
|
261
|
-
- spec/lib/jasmine/template_writer_spec.rb
|
263
|
+
- spec/lib/jasmine/headless/template_writer_spec.rb
|
262
264
|
- spec/lib/qt/qmake_spec.rb
|
263
265
|
- spec/spec_helper.rb
|