jasmine-core 2.0.0.rc2 → 2.0.0.rc3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. checksums.yaml +7 -0
  2. data/lib/jasmine-core/boot.js +0 -4
  3. data/lib/jasmine-core/boot/boot.js +0 -4
  4. data/lib/jasmine-core/jasmine-html.js +3 -1
  5. data/lib/jasmine-core/jasmine.css +4 -3
  6. data/lib/jasmine-core/jasmine.js +64 -34
  7. data/lib/jasmine-core/spec/console/ConsoleReporterSpec.js +2 -2
  8. data/lib/jasmine-core/spec/core/ClockSpec.js +168 -118
  9. data/lib/jasmine-core/spec/core/EnvSpec.js +133 -48
  10. data/lib/jasmine-core/spec/core/ExceptionsSpec.js +1 -1
  11. data/lib/jasmine-core/spec/core/ExpectationResultSpec.js +2 -2
  12. data/lib/jasmine-core/spec/core/ExpectationSpec.js +2 -2
  13. data/lib/jasmine-core/spec/core/JsApiReporterSpec.js +1 -1
  14. data/lib/jasmine-core/spec/core/QueueRunnerSpec.js +17 -0
  15. data/lib/jasmine-core/spec/core/SpecRunningSpec.js +6 -6
  16. data/lib/jasmine-core/spec/core/SpecSpec.js +6 -2
  17. data/lib/jasmine-core/spec/core/SpyStrategySpec.js +19 -9
  18. data/lib/jasmine-core/spec/core/TimerSpec.js +2 -2
  19. data/lib/jasmine-core/spec/core/matchers/toContainSpec.js +2 -2
  20. data/lib/jasmine-core/spec/core/matchers/toEqualSpec.js +2 -2
  21. data/lib/jasmine-core/spec/core/matchers/toHaveBeenCalledWithSpec.js +7 -12
  22. data/lib/jasmine-core/spec/core/matchers/toThrowErrorSpec.js +8 -8
  23. data/lib/jasmine-core/spec/core/matchers/toThrowSpec.js +4 -4
  24. data/lib/jasmine-core/spec/helpers/BrowserFlags.js +15 -11
  25. data/lib/jasmine-core/spec/html/HtmlReporterSpec.js +5 -3
  26. data/lib/jasmine-core/spec/html/PrettyPrintHtmlSpec.js +7 -0
  27. data/lib/jasmine-core/spec/node_suite.js +1 -1
  28. data/lib/jasmine-core/spec/support/dev_boot.js +0 -5
  29. data/lib/jasmine-core/version.rb +1 -1
  30. metadata +16 -107
@@ -1,7 +1,7 @@
1
1
  describe("toEqual", function() {
2
2
  it("delegates to equals function", function() {
3
3
  var util = {
4
- equals: jasmine.createSpy('delegated-equals').and.callReturn(true)
4
+ equals: jasmine.createSpy('delegated-equals').and.returnValue(true)
5
5
  },
6
6
  matcher = j$.matchers.toEqual(util),
7
7
  result;
@@ -14,7 +14,7 @@ describe("toEqual", function() {
14
14
 
15
15
  it("delegates custom equality testers, if present", function() {
16
16
  var util = {
17
- equals: jasmine.createSpy('delegated-equals').and.callReturn(true)
17
+ equals: jasmine.createSpy('delegated-equals').and.returnValue(true)
18
18
  },
19
19
  customEqualityTesters = ['a', 'b'],
20
20
  matcher = j$.matchers.toEqual(util, customEqualityTesters),
@@ -1,7 +1,7 @@
1
1
  describe("toHaveBeenCalledWith", function() {
2
2
  it("passes when the actual was called with matching parameters", function() {
3
3
  var util = {
4
- contains: jasmine.createSpy('delegated-contains').and.callReturn(true)
4
+ contains: jasmine.createSpy('delegated-contains').and.returnValue(true)
5
5
  },
6
6
  matcher = j$.matchers.toHaveBeenCalledWith(util),
7
7
  calledSpy = j$.createSpy('called-spy'),
@@ -11,11 +11,12 @@ describe("toHaveBeenCalledWith", function() {
11
11
  result = matcher.compare(calledSpy, 'a', 'b');
12
12
 
13
13
  expect(result.pass).toBe(true);
14
+ expect(result.message).toEqual("Expected spy called-spy not to have been called with [ 'a', 'b' ] but it was.");
14
15
  });
15
16
 
16
17
  it("fails when the actual was not called", function() {
17
18
  var util = {
18
- contains: jasmine.createSpy('delegated-contains').and.callReturn(false)
19
+ contains: jasmine.createSpy('delegated-contains').and.returnValue(false)
19
20
  },
20
21
  matcher = j$.matchers.toHaveBeenCalledWith(util),
21
22
  uncalledSpy = j$.createSpy('uncalled spy'),
@@ -23,20 +24,23 @@ describe("toHaveBeenCalledWith", function() {
23
24
 
24
25
  result = matcher.compare(uncalledSpy);
25
26
  expect(result.pass).toBe(false);
27
+ expect(result.message).toEqual("Expected spy uncalled spy to have been called with [ ] but it was never called.");
26
28
  });
27
29
 
28
30
  it("fails when the actual was called with different parameters", function() {
29
31
  var util = {
30
- contains: jasmine.createSpy('delegated-contains').and.callReturn(false)
32
+ contains: jasmine.createSpy('delegated-contains').and.returnValue(false)
31
33
  },
32
34
  matcher = j$.matchers.toHaveBeenCalledWith(util),
33
35
  calledSpy = j$.createSpy('called spy'),
34
36
  result;
35
37
 
36
38
  calledSpy('a');
39
+ calledSpy('c', 'd');
37
40
  result = matcher.compare(calledSpy, 'a', 'b');
38
41
 
39
42
  expect(result.pass).toBe(false);
43
+ expect(result.message).toEqual("Expected spy called spy to have been called with [ 'a', 'b' ] but actual calls were [ 'a' ], [ 'c', 'd' ].");
40
44
  });
41
45
 
42
46
  it("throws an exception when the actual is not a spy", function() {
@@ -45,13 +49,4 @@ describe("toHaveBeenCalledWith", function() {
45
49
 
46
50
  expect(function() { matcher.compare(fn) }).toThrow(new Error("Expected a spy, but got Function."));
47
51
  });
48
-
49
- it("has a custom message on failure", function() {
50
- var matcher = j$.matchers.toHaveBeenCalledWith(),
51
- spy = j$.createSpy('sample-spy'),
52
- messages = matcher.message(spy);
53
-
54
- expect(messages.affirmative).toEqual("Expected spy sample-spy to have been called.")
55
- expect(messages.negative).toEqual("Expected spy sample-spy not to have been called.")
56
- });
57
52
  });
@@ -144,7 +144,7 @@ describe("toThrowError", function() {
144
144
 
145
145
  it("passes if thrown is an Error and the expected the same Error", function() {
146
146
  var util = {
147
- equals: jasmine.createSpy('delegated-equal').and.callReturn(true)
147
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(true)
148
148
  },
149
149
  matcher = j$.matchers.toThrowError(util),
150
150
  fn = function() {
@@ -160,7 +160,7 @@ describe("toThrowError", function() {
160
160
 
161
161
  it("passes if thrown is a custom error that takes arguments and the expected is the same error", function() {
162
162
  var util = {
163
- equals: jasmine.createSpy('delegated-equal').and.callReturn(true)
163
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(true)
164
164
  },
165
165
  matcher = j$.matchers.toThrowError(util),
166
166
  CustomError = function CustomError(arg) { arg.x },
@@ -180,7 +180,7 @@ describe("toThrowError", function() {
180
180
 
181
181
  it("fails if thrown is an Error and the expected is a different Error", function() {
182
182
  var util = {
183
- equals: jasmine.createSpy('delegated-equal').and.callReturn(false)
183
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(false)
184
184
  },
185
185
  matcher = j$.matchers.toThrowError(util),
186
186
  fn = function() {
@@ -196,7 +196,7 @@ describe("toThrowError", function() {
196
196
 
197
197
  it("passes if thrown is a type of Error and it is equal to the expected Error and message", function() {
198
198
  var util = {
199
- equals: jasmine.createSpy('delegated-equal').and.callReturn(true)
199
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(true)
200
200
  },
201
201
  matcher = j$.matchers.toThrowError(util),
202
202
  fn = function() {
@@ -212,7 +212,7 @@ describe("toThrowError", function() {
212
212
 
213
213
  it("passes if thrown is a custom error that takes arguments and it is equal to the expected custom error and message", function() {
214
214
  var util = {
215
- equals: jasmine.createSpy('delegated-equal').and.callReturn(true)
215
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(true)
216
216
  },
217
217
  matcher = j$.matchers.toThrowError(util),
218
218
  CustomError = function CustomError(arg) { this.message = arg.message },
@@ -232,7 +232,7 @@ describe("toThrowError", function() {
232
232
 
233
233
  it("fails if thrown is a type of Error and the expected is a different Error", function() {
234
234
  var util = {
235
- equals: jasmine.createSpy('delegated-equal').and.callReturn(false)
235
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(false)
236
236
  },
237
237
  matcher = j$.matchers.toThrowError(util),
238
238
  fn = function() {
@@ -248,7 +248,7 @@ describe("toThrowError", function() {
248
248
 
249
249
  it("passes if thrown is a type of Error and has the same type as the expected Error and the message matches the exepcted message", function() {
250
250
  var util = {
251
- equals: jasmine.createSpy('delegated-equal').and.callReturn(true)
251
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(true)
252
252
  },
253
253
  matcher = j$.matchers.toThrowError(util),
254
254
  fn = function() {
@@ -264,7 +264,7 @@ describe("toThrowError", function() {
264
264
 
265
265
  it("fails if thrown is a type of Error and the expected is a different Error", function() {
266
266
  var util = {
267
- equals: jasmine.createSpy('delegated-equal').and.callReturn(false)
267
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(false)
268
268
  },
269
269
  matcher = j$.matchers.toThrowError(util),
270
270
  fn = function() {
@@ -22,7 +22,7 @@ describe("toThrow", function() {
22
22
 
23
23
  it("passes if it throws but there is no expected", function() {
24
24
  var util = {
25
- equals: jasmine.createSpy('delegated-equal').and.callReturn(true)
25
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(true)
26
26
  },
27
27
  matcher = j$.matchers.toThrow(util),
28
28
  fn = function() {
@@ -50,7 +50,7 @@ describe("toThrow", function() {
50
50
 
51
51
  it("passes if what is thrown is equivalent to what is expected", function() {
52
52
  var util = {
53
- equals: jasmine.createSpy('delegated-equal').and.callReturn(true)
53
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(true)
54
54
  },
55
55
  matcher = j$.matchers.toThrow(util),
56
56
  fn = function() {
@@ -66,7 +66,7 @@ describe("toThrow", function() {
66
66
 
67
67
  it("fails if what is thrown is not equivalent to what is expected", function() {
68
68
  var util = {
69
- equals: jasmine.createSpy('delegated-equal').and.callReturn(false)
69
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(false)
70
70
  },
71
71
  matcher = j$.matchers.toThrow(util),
72
72
  fn = function() {
@@ -82,7 +82,7 @@ describe("toThrow", function() {
82
82
 
83
83
  it("fails if what is thrown is not equivalent to undefined", function() {
84
84
  var util = {
85
- equals: jasmine.createSpy('delegated-equal').and.callReturn(false)
85
+ equals: jasmine.createSpy('delegated-equal').and.returnValue(false)
86
86
  },
87
87
  matcher = j$.matchers.toThrow(util),
88
88
  fn = function() {
@@ -1,19 +1,23 @@
1
1
  (function(env) {
2
- env.ieVersion = (function() {
2
+ function browserVersion(matchFn) {
3
3
  var userAgent = jasmine.getGlobal().navigator.userAgent;
4
- if (!userAgent) { return Number.MAX_VALUE; }
4
+ if (!userAgent) { return void 0; }
5
5
 
6
- var match = /MSIE ([0-9]{1,}[\.0-9]{0,})/.exec(userAgent);
6
+ var match = matchFn(userAgent);
7
7
 
8
- return match ? parseFloat(match[1]) : Number.MAX_VALUE;
9
- })();
8
+ return match ? parseFloat(match[1]) : void 0;
9
+ }
10
10
 
11
- env.safariVersion = (function() {
12
- var userAgent = jasmine.getGlobal().navigator.userAgent;
13
- if (!userAgent) { return Number.MAX_VALUE; }
11
+ env.ieVersion = browserVersion(function(userAgent) {
12
+ return /MSIE ([0-9]{1,}[\.0-9]{0,})/.exec(userAgent);
13
+ });
14
+
15
+ env.safariVersion = browserVersion(function(userAgent) {
16
+ return /Safari/.exec(userAgent) && /Version\/([0-9]{0,})/.exec(userAgent);
17
+ });
14
18
 
15
- var match = /Safari/.exec(userAgent) && /Version\/([0-9]{0,})/.exec(userAgent);
19
+ env.firefoxVersion = browserVersion(function(userAgent) {
20
+ return /Firefox\/([0-9]{0,})/.exec(userAgent);
21
+ });
16
22
 
17
- return match ? parseFloat(match[1]) : Number.MAX_VALUE;
18
- })();
19
23
  })(jasmine.getEnv());
@@ -148,7 +148,7 @@ describe("New HtmlReporter", function() {
148
148
 
149
149
  reporter.jasmineStarted({});
150
150
 
151
- timer.elapsed.and.callReturn(100);
151
+ timer.elapsed.and.returnValue(100);
152
152
  reporter.jasmineDone();
153
153
 
154
154
  var duration = container.querySelector(".banner .duration");
@@ -461,8 +461,10 @@ describe("New HtmlReporter", function() {
461
461
  expect(failure.getAttribute("class")).toMatch(/failed/);
462
462
  expect(failure.getAttribute("class")).toMatch(/spec-detail/);
463
463
 
464
- var specLink = failure.childNodes[0];
465
- expect(specLink.getAttribute("class")).toEqual("description");
464
+ var specDiv = failure.childNodes[0];
465
+ expect(specDiv.getAttribute("class")).toEqual("description");
466
+
467
+ var specLink = specDiv.childNodes[0];
466
468
  expect(specLink.getAttribute("title")).toEqual("a suite with a failing spec");
467
469
  expect(specLink.getAttribute("href")).toEqual("?spec=a%20suite%20with%20a%20failing%20spec");
468
470
 
@@ -5,4 +5,11 @@ describe("j$.pp (HTML Dependent)", function () {
5
5
  expect(j$.pp(sampleNode)).toEqual("HTMLNode");
6
6
  expect(j$.pp({foo: sampleNode})).toEqual("{ foo : HTMLNode }");
7
7
  });
8
+
9
+ it("should print Firefox's wrapped native objects correctly", function() {
10
+ if(jasmine.getEnv().firefoxVersion) {
11
+ try { new CustomEvent(); } catch(e) { var err = e; };
12
+ expect(j$.pp(err)).toMatch(/Not enough arguments/);
13
+ }
14
+ });
8
15
  });
@@ -141,7 +141,7 @@ var j$require = (function() {
141
141
  }
142
142
  }());
143
143
 
144
- var j$ = j$require.core(j$require);
144
+ j$ = j$require.core(j$require);
145
145
  j$require.console(j$require, j$);
146
146
 
147
147
  // options from command line
@@ -48,11 +48,6 @@
48
48
  },
49
49
 
50
50
  clock: env.clock,
51
- setTimeout: env.clock.setTimeout,
52
- clearTimeout: env.clock.clearTimeout,
53
- setInterval: env.clock.setInterval,
54
- clearInterval: env.clock.clearInterval,
55
-
56
51
  jsApiReporter: new jasmine.JsApiReporter({
57
52
  timer: new jasmine.Timer()
58
53
  })
@@ -4,6 +4,6 @@
4
4
  #
5
5
  module Jasmine
6
6
  module Core
7
- VERSION = "2.0.0.rc2"
7
+ VERSION = "2.0.0.rc3"
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jasmine-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.rc2
5
- prerelease: 6
4
+ version: 2.0.0.rc3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Rajan Agaskar
@@ -11,134 +10,48 @@ authors:
11
10
  autorequire:
12
11
  bindir: bin
13
12
  cert_chain: []
14
- date: 2013-07-29 00:00:00.000000000 Z
13
+ date: 2013-10-03 00:00:00.000000000 Z
15
14
  dependencies:
16
15
  - !ruby/object:Gem::Dependency
17
- name: json_pure
16
+ name: rake
18
17
  requirement: !ruby/object:Gem::Requirement
19
- none: false
20
18
  requirements:
21
- - - ! '>='
22
- - !ruby/object:Gem::Version
23
- version: 1.4.3
24
- type: :development
25
- prerelease: false
26
- version_requirements: !ruby/object:Gem::Requirement
27
- none: false
28
- requirements:
29
- - - ! '>='
30
- - !ruby/object:Gem::Version
31
- version: 1.4.3
32
- - !ruby/object:Gem::Dependency
33
- name: sass
34
- requirement: !ruby/object:Gem::Requirement
35
- none: false
36
- requirements:
37
- - - ! '>='
38
- - !ruby/object:Gem::Version
39
- version: '0'
40
- type: :development
41
- prerelease: false
42
- version_requirements: !ruby/object:Gem::Requirement
43
- none: false
44
- requirements:
45
- - - ! '>='
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- - !ruby/object:Gem::Dependency
49
- name: compass
50
- requirement: !ruby/object:Gem::Requirement
51
- none: false
52
- requirements:
53
- - - ! '>='
19
+ - - '>='
54
20
  - !ruby/object:Gem::Version
55
21
  version: '0'
56
22
  type: :development
57
23
  prerelease: false
58
24
  version_requirements: !ruby/object:Gem::Requirement
59
- none: false
60
25
  requirements:
61
- - - ! '>='
26
+ - - '>='
62
27
  - !ruby/object:Gem::Version
63
28
  version: '0'
64
29
  - !ruby/object:Gem::Dependency
65
- name: rspec
66
- requirement: !ruby/object:Gem::Requirement
67
- none: false
68
- requirements:
69
- - - ! '>='
70
- - !ruby/object:Gem::Version
71
- version: '0'
72
- type: :development
73
- prerelease: false
74
- version_requirements: !ruby/object:Gem::Requirement
75
- none: false
76
- requirements:
77
- - - ! '>='
78
- - !ruby/object:Gem::Version
79
- version: '0'
80
- - !ruby/object:Gem::Dependency
81
- name: fuubar
82
- requirement: !ruby/object:Gem::Requirement
83
- none: false
84
- requirements:
85
- - - ! '>='
86
- - !ruby/object:Gem::Version
87
- version: '0'
88
- type: :development
89
- prerelease: false
90
- version_requirements: !ruby/object:Gem::Requirement
91
- none: false
92
- requirements:
93
- - - ! '>='
94
- - !ruby/object:Gem::Version
95
- version: '0'
96
- - !ruby/object:Gem::Dependency
97
- name: awesome_print
98
- requirement: !ruby/object:Gem::Requirement
99
- none: false
100
- requirements:
101
- - - ! '>='
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- none: false
108
- requirements:
109
- - - ! '>='
110
- - !ruby/object:Gem::Version
111
- version: '0'
112
- - !ruby/object:Gem::Dependency
113
- name: nokogiri
30
+ name: sauce-connect
114
31
  requirement: !ruby/object:Gem::Requirement
115
- none: false
116
32
  requirements:
117
- - - ! '>='
33
+ - - '>='
118
34
  - !ruby/object:Gem::Version
119
35
  version: '0'
120
36
  type: :development
121
37
  prerelease: false
122
38
  version_requirements: !ruby/object:Gem::Requirement
123
- none: false
124
39
  requirements:
125
- - - ! '>='
40
+ - - '>='
126
41
  - !ruby/object:Gem::Version
127
42
  version: '0'
128
43
  - !ruby/object:Gem::Dependency
129
- name: sauce-connect
44
+ name: jasmine_selenium_runner
130
45
  requirement: !ruby/object:Gem::Requirement
131
- none: false
132
46
  requirements:
133
- - - ! '>='
47
+ - - '>='
134
48
  - !ruby/object:Gem::Version
135
49
  version: '0'
136
50
  type: :development
137
51
  prerelease: false
138
52
  version_requirements: !ruby/object:Gem::Requirement
139
- none: false
140
53
  requirements:
141
- - - ! '>='
54
+ - - '>='
142
55
  - !ruby/object:Gem::Version
143
56
  version: '0'
144
57
  description: Test your JavaScript without any framework dependencies, in any environment,
@@ -214,29 +127,25 @@ files:
214
127
  homepage: http://pivotal.github.com/jasmine
215
128
  licenses:
216
129
  - MIT
130
+ metadata: {}
217
131
  post_install_message:
218
132
  rdoc_options: []
219
133
  require_paths:
220
134
  - lib
221
135
  required_ruby_version: !ruby/object:Gem::Requirement
222
- none: false
223
136
  requirements:
224
- - - ! '>='
137
+ - - '>='
225
138
  - !ruby/object:Gem::Version
226
139
  version: '0'
227
- segments:
228
- - 0
229
- hash: 1155836624161041639
230
140
  required_rubygems_version: !ruby/object:Gem::Requirement
231
- none: false
232
141
  requirements:
233
- - - ! '>'
142
+ - - '>'
234
143
  - !ruby/object:Gem::Version
235
144
  version: 1.3.1
236
145
  requirements: []
237
146
  rubyforge_project: jasmine-core
238
- rubygems_version: 1.8.25
147
+ rubygems_version: 2.0.5
239
148
  signing_key:
240
- specification_version: 3
149
+ specification_version: 4
241
150
  summary: JavaScript BDD framework
242
151
  test_files: []