jasmine-core 2.0.0.rc2 → 2.0.0.rc3

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.
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: []