smparkes-jazrb 0.0.3

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 (41) hide show
  1. data/LICENSE +20 -0
  2. data/README.rdoc +41 -0
  3. data/bin/autojaz +4 -0
  4. data/bin/jazrb +11 -0
  5. data/doc/jasmine/files.html +292 -0
  6. data/doc/jasmine/index.html +322 -0
  7. data/doc/jasmine/symbols/_global_.html +918 -0
  8. data/doc/jasmine/symbols/jasmine.Block.html +349 -0
  9. data/doc/jasmine/symbols/jasmine.Env.html +517 -0
  10. data/doc/jasmine/symbols/jasmine.EnvjsReporter.html +326 -0
  11. data/doc/jasmine/symbols/jasmine.JsApiReporter.html +326 -0
  12. data/doc/jasmine/symbols/jasmine.Matchers.html +885 -0
  13. data/doc/jasmine/symbols/jasmine.MultiReporter.html +326 -0
  14. data/doc/jasmine/symbols/jasmine.NestedResults.html +710 -0
  15. data/doc/jasmine/symbols/jasmine.Reporter.html +326 -0
  16. data/doc/jasmine/symbols/jasmine.Runner.html +337 -0
  17. data/doc/jasmine/symbols/jasmine.Spec.html +406 -0
  18. data/doc/jasmine/symbols/jasmine.Spy.html +855 -0
  19. data/doc/jasmine/symbols/jasmine.Suite.html +355 -0
  20. data/doc/jasmine/symbols/jasmine.html +770 -0
  21. data/doc/jasmine/symbols/jasmine.util.html +326 -0
  22. data/doc/jasmine/symbols/src/lib_EnvjsReporter.js.html +149 -0
  23. data/doc/jasmine/symbols/src/lib_TrivialReporter.js.html +127 -0
  24. data/doc/jasmine/symbols/src/lib_consolex.js.html +35 -0
  25. data/doc/jasmine/symbols/src/lib_jasmine-0.10.0.js.html +2302 -0
  26. data/doc/jasmine/symbols/src/lib_jasmine-0.9.0.js.html +2212 -0
  27. data/doc/jasmine/symbols/src/lib_json2.js.html +486 -0
  28. data/lib/autotest/discover.rb +3 -0
  29. data/lib/autotest/jazrb.rb +55 -0
  30. data/lib/jazrb/intro.js +18 -0
  31. data/lib/jazrb/jasmine/EnvjsReporter.js +141 -0
  32. data/lib/jazrb/jasmine/TrivialReporter.js +119 -0
  33. data/lib/jazrb/jasmine/consolex.js +28 -0
  34. data/lib/jazrb/jasmine/jasmine-0.10.0.js +2294 -0
  35. data/lib/jazrb/jasmine/jasmine.js +2294 -0
  36. data/lib/jazrb/jasmine/json2.js +478 -0
  37. data/lib/jazrb/outro.js +3 -0
  38. data/lib/jazrb.rb +0 -0
  39. data/test/jazrb_test.rb +7 -0
  40. data/test/test_helper.rb +10 -0
  41. metadata +116 -0
@@ -0,0 +1,855 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="content-type" content="text/html; charset=utf-8" />
6
+ <meta name="generator" content="JsDoc Toolkit" />
7
+
8
+ <title>JsDoc Reference - jasmine.Spy</title>
9
+
10
+ <style type="text/css">
11
+ /* default.css */
12
+ body
13
+ {
14
+ font: 12px "Lucida Grande", Tahoma, Arial, Helvetica, sans-serif;
15
+ width: 800px;
16
+ }
17
+
18
+ .header
19
+ {
20
+ clear: both;
21
+ background-color: #ccc;
22
+ padding: 8px;
23
+ }
24
+
25
+ h1
26
+ {
27
+ font-size: 150%;
28
+ font-weight: bold;
29
+ padding: 0;
30
+ margin: 1em 0 0 .3em;
31
+ }
32
+
33
+ hr
34
+ {
35
+ border: none 0;
36
+ border-top: 1px solid #7F8FB1;
37
+ height: 1px;
38
+ }
39
+
40
+ pre.code
41
+ {
42
+ display: block;
43
+ padding: 8px;
44
+ border: 1px dashed #ccc;
45
+ }
46
+
47
+ #index
48
+ {
49
+ margin-top: 24px;
50
+ float: left;
51
+ width: 160px;
52
+ position: absolute;
53
+ left: 8px;
54
+ background-color: #F3F3F3;
55
+ padding: 8px;
56
+ }
57
+
58
+ #content
59
+ {
60
+ margin-left: 190px;
61
+ width: 600px;
62
+ }
63
+
64
+ .classList
65
+ {
66
+ list-style-type: none;
67
+ padding: 0;
68
+ margin: 0 0 0 8px;
69
+ font-family: arial, sans-serif;
70
+ font-size: 1em;
71
+ overflow: auto;
72
+ }
73
+
74
+ .classList li
75
+ {
76
+ padding: 0;
77
+ margin: 0 0 8px 0;
78
+ }
79
+
80
+ .summaryTable { width: 100%; }
81
+
82
+ h1.classTitle
83
+ {
84
+ font-size:170%;
85
+ line-height:130%;
86
+ }
87
+
88
+ h2 { font-size: 110%; }
89
+ caption, div.sectionTitle
90
+ {
91
+ background-color: #7F8FB1;
92
+ color: #fff;
93
+ font-size:130%;
94
+ text-align: left;
95
+ padding: 2px 6px 2px 6px;
96
+ border: 1px #7F8FB1 solid;
97
+ }
98
+
99
+ div.sectionTitle { margin-bottom: 8px; }
100
+ .summaryTable thead { display: none; }
101
+
102
+ .summaryTable td
103
+ {
104
+ vertical-align: top;
105
+ padding: 4px;
106
+ border-bottom: 1px #7F8FB1 solid;
107
+ border-right: 1px #7F8FB1 solid;
108
+ }
109
+
110
+ /*col#summaryAttributes {}*/
111
+ .summaryTable td.attributes
112
+ {
113
+ border-left: 1px #7F8FB1 solid;
114
+ width: 140px;
115
+ text-align: right;
116
+ }
117
+
118
+ td.attributes, .fixedFont
119
+ {
120
+ line-height: 15px;
121
+ color: #002EBE;
122
+ font-family: "Courier New",Courier,monospace;
123
+ font-size: 13px;
124
+ }
125
+
126
+ .summaryTable td.nameDescription
127
+ {
128
+ text-align: left;
129
+ font-size: 13px;
130
+ line-height: 15px;
131
+ }
132
+
133
+ .summaryTable td.nameDescription, .description
134
+ {
135
+ line-height: 15px;
136
+ padding: 4px;
137
+ padding-left: 4px;
138
+ }
139
+
140
+ .summaryTable { margin-bottom: 8px; }
141
+
142
+ ul.inheritsList
143
+ {
144
+ list-style: square;
145
+ margin-left: 20px;
146
+ padding-left: 0;
147
+ }
148
+
149
+ .detailList {
150
+ margin-left: 20px;
151
+ line-height: 15px;
152
+ }
153
+ .detailList dt { margin-left: 20px; }
154
+
155
+ .detailList .heading
156
+ {
157
+ font-weight: bold;
158
+ padding-bottom: 6px;
159
+ margin-left: 0;
160
+ }
161
+
162
+ .light, td.attributes, .light a:link, .light a:visited
163
+ {
164
+ color: #777;
165
+ font-style: italic;
166
+ }
167
+
168
+ .fineprint
169
+ {
170
+ text-align: right;
171
+ font-size: 10px;
172
+ }
173
+ </style>
174
+ </head>
175
+
176
+ <body>
177
+ <!-- ============================== header ================================= -->
178
+ <!-- begin static/header.html -->
179
+ <div id="header">
180
+ </div>
181
+ <!-- end static/header.html -->
182
+
183
+ <!-- ============================== classes index ============================ -->
184
+ <div id="index">
185
+ <!-- begin publish.classesIndex -->
186
+ <div align="center"><a href="../index.html">Class Index</a>
187
+ | <a href="../files.html">File Index</a></div>
188
+ <hr />
189
+ <h2>Classes</h2>
190
+ <ul class="classList">
191
+
192
+ <li><i><a href="../symbols/_global_.html">_global_</a></i></li>
193
+
194
+ <li><a href="../symbols/jasmine.html">jasmine</a></li>
195
+
196
+ <li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
197
+
198
+ <li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
199
+
200
+ <li><a href="../symbols/jasmine.EnvjsReporter.html">jasmine.EnvjsReporter</a></li>
201
+
202
+ <li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
203
+
204
+ <li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
205
+
206
+ <li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
207
+
208
+ <li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
209
+
210
+ <li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
211
+
212
+ <li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
213
+
214
+ <li><a href="../symbols/jasmine.Spec.html">jasmine.Spec</a></li>
215
+
216
+ <li><a href="../symbols/jasmine.Spy.html">jasmine.Spy</a></li>
217
+
218
+ <li><a href="../symbols/jasmine.Suite.html">jasmine.Suite</a></li>
219
+
220
+ <li><a href="../symbols/jasmine.util.html">jasmine.util</a></li>
221
+
222
+ </ul>
223
+ <hr />
224
+ <!-- end publish.classesIndex -->
225
+ </div>
226
+
227
+ <div id="content">
228
+ <!-- ============================== class title ============================ -->
229
+ <h1 class="classTitle">
230
+
231
+ Class jasmine.Spy
232
+ </h1>
233
+
234
+ <!-- ============================== class summary ========================== -->
235
+ <p class="description">
236
+
237
+
238
+
239
+
240
+
241
+ <br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine-0.10.0.js.html">jasmine-0.10.0.js</a>.
242
+
243
+ </p>
244
+
245
+ <!-- ============================== constructor summary ==================== -->
246
+
247
+ <table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class jasmine.Spy.">
248
+ <caption>Class Summary</caption>
249
+ <thead>
250
+ <tr>
251
+ <th scope="col">Constructor Attributes</th>
252
+ <th scope="col">Constructor Name and Description</th>
253
+ </tr>
254
+ </thead>
255
+ <tbody>
256
+ <tr>
257
+ <td class="attributes">&nbsp;</td>
258
+ <td class="nameDescription" >
259
+ <div class="fixedFont">
260
+ <b><a href="../symbols/jasmine.Spy.html">jasmine.Spy</a></b>(name)
261
+ </div>
262
+ <div class="description">Jasmine Spies are test doubles that can act as stubs, spies, fakes or when used in an expecation, mocks.</div>
263
+ </td>
264
+ </tr>
265
+ </tbody>
266
+ </table>
267
+
268
+
269
+ <!-- ============================== properties summary ===================== -->
270
+
271
+
272
+
273
+ <table class="summaryTable" cellspacing="0" summary="A summary of the fields documented in the class jasmine.Spy.">
274
+ <caption>Field Summary</caption>
275
+ <thead>
276
+ <tr>
277
+ <th scope="col">Field Attributes</th>
278
+ <th scope="col">Field Name and Description</th>
279
+ </tr>
280
+ </thead>
281
+ <tbody>
282
+
283
+ <tr>
284
+ <td class="attributes">&nbsp;</td>
285
+ <td class="nameDescription">
286
+ <div class="fixedFont">
287
+ <b><a href="../symbols/jasmine.Spy.html#argsForCall">argsForCall</a></b>
288
+ </div>
289
+ <div class="description">Holds arguments for each call to the spy, indexed by call count</div>
290
+ </td>
291
+ </tr>
292
+
293
+ <tr>
294
+ <td class="attributes">&nbsp;</td>
295
+ <td class="nameDescription">
296
+ <div class="fixedFont">
297
+ <b><a href="../symbols/jasmine.Spy.html#identity">identity</a></b>
298
+ </div>
299
+ <div class="description">The name of the spy, if provided.</div>
300
+ </td>
301
+ </tr>
302
+
303
+ <tr>
304
+ <td class="attributes">&nbsp;</td>
305
+ <td class="nameDescription">
306
+ <div class="fixedFont">
307
+ <b><a href="../symbols/jasmine.Spy.html#isSpy">isSpy</a></b>
308
+ </div>
309
+ <div class="description">Is this Object a spy?</div>
310
+ </td>
311
+ </tr>
312
+
313
+ <tr>
314
+ <td class="attributes">&nbsp;</td>
315
+ <td class="nameDescription">
316
+ <div class="fixedFont">
317
+ <b><a href="../symbols/jasmine.Spy.html#mostRecentCall">mostRecentCall</a></b>
318
+ </div>
319
+ <div class="description">Tracking of the most recent call to the spy.</div>
320
+ </td>
321
+ </tr>
322
+
323
+ </tbody>
324
+ </table>
325
+
326
+
327
+
328
+
329
+
330
+ <!-- ============================== methods summary ======================== -->
331
+
332
+
333
+
334
+ <table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.Spy.">
335
+ <caption>Method Summary</caption>
336
+ <thead>
337
+ <tr>
338
+ <th scope="col">Method Attributes</th>
339
+ <th scope="col">Method Name and Description</th>
340
+ </tr>
341
+ </thead>
342
+ <tbody>
343
+
344
+ <tr>
345
+ <td class="attributes">&nbsp;</td>
346
+ <td class="nameDescription">
347
+ <div class="fixedFont"><b><a href="../symbols/jasmine.Spy.html#andCallFake">andCallFake</a></b>(fakeFunc)
348
+ </div>
349
+ <div class="description">Calls an alternate implementation when a spy is called.</div>
350
+ </td>
351
+ </tr>
352
+
353
+ <tr>
354
+ <td class="attributes">&nbsp;</td>
355
+ <td class="nameDescription">
356
+ <div class="fixedFont"><b><a href="../symbols/jasmine.Spy.html#andCallThrough">andCallThrough</a></b>()
357
+ </div>
358
+ <div class="description">Tells a spy to call through to the actual implemenatation.</div>
359
+ </td>
360
+ </tr>
361
+
362
+ <tr>
363
+ <td class="attributes">&nbsp;</td>
364
+ <td class="nameDescription">
365
+ <div class="fixedFont"><b><a href="../symbols/jasmine.Spy.html#andReturn">andReturn</a></b>(value)
366
+ </div>
367
+ <div class="description">For setting the return value of a spy.</div>
368
+ </td>
369
+ </tr>
370
+
371
+ <tr>
372
+ <td class="attributes">&nbsp;</td>
373
+ <td class="nameDescription">
374
+ <div class="fixedFont"><b><a href="../symbols/jasmine.Spy.html#andThrow">andThrow</a></b>(exceptionMsg)
375
+ </div>
376
+ <div class="description">For throwing an exception when a spy is called.</div>
377
+ </td>
378
+ </tr>
379
+
380
+ <tr>
381
+ <td class="attributes">&nbsp;</td>
382
+ <td class="nameDescription">
383
+ <div class="fixedFont"><b><a href="../symbols/jasmine.Spy.html#plan">plan</a></b>()
384
+ </div>
385
+ <div class="description">The acutal function this spy stubs.</div>
386
+ </td>
387
+ </tr>
388
+
389
+ <tr>
390
+ <td class="attributes">&nbsp;</td>
391
+ <td class="nameDescription">
392
+ <div class="fixedFont"><b><a href="../symbols/jasmine.Spy.html#reset">reset</a></b>()
393
+ </div>
394
+ <div class="description">Resets all of a spy's the tracking variables so that it can be used again.</div>
395
+ </td>
396
+ </tr>
397
+
398
+ </tbody>
399
+ </table>
400
+
401
+
402
+
403
+
404
+ <!-- ============================== events summary ======================== -->
405
+
406
+
407
+ <!-- ============================== constructor details ==================== -->
408
+
409
+ <div class="details"><a name="constructor"> </a>
410
+ <div class="sectionTitle">
411
+ Class Detail
412
+ </div>
413
+
414
+ <div class="fixedFont">
415
+ <b>jasmine.Spy</b>(name)
416
+ </div>
417
+
418
+ <div class="description">
419
+ Jasmine Spies are test doubles that can act as stubs, spies, fakes or when used in an expecation, mocks.
420
+
421
+ Spies should be created in test setup, before expectations. They can then be checked, using the standard Jasmine
422
+ expectation syntax. Spies can be checked if they were called or not and what the calling params were.
423
+
424
+ A Spy has the following mehtod: wasCalled, callCount, mostRecentCall, and argsForCall (see docs)
425
+ Spies are torn down at the end of every spec.
426
+
427
+ Note: Do <b>not</b> call new jasmine.Spy() directly - a spy must be created using spyOn, jasmine.createSpy or jasmine.createSpyObj.
428
+
429
+ </div>
430
+
431
+
432
+
433
+ <pre class="code">// a stub
434
+ var myStub = jasmine.createSpy('myStub'); // can be used anywhere
435
+
436
+ // spy example
437
+ var foo = {
438
+ not: function(bool) { return !bool; }
439
+ }
440
+
441
+ // actual foo.not will not be called, execution stops
442
+ spyOn(foo, 'not');
443
+
444
+ // foo.not spied upon, execution will continue to implementation
445
+ spyOn(foo, 'not').andCallThrough();
446
+
447
+ // fake example
448
+ var foo = {
449
+ not: function(bool) { return !bool; }
450
+ }
451
+
452
+ // foo.not(val) will return val
453
+ spyOn(foo, 'not').andCallFake(function(value) {return value;});
454
+
455
+ // mock example
456
+ foo.not(7 == 7);
457
+ expect(foo.not).wasCalled();
458
+ expect(foo.not).wasCalledWith(true);</pre>
459
+
460
+
461
+
462
+
463
+
464
+ <dl class="detailList">
465
+ <dt class="heading">Parameters:</dt>
466
+
467
+ <dt>
468
+ <span class="light fixedFont">{String}</span> <b>name</b>
469
+
470
+ </dt>
471
+ <dd></dd>
472
+
473
+ </dl>
474
+
475
+
476
+
477
+
478
+
479
+
480
+
481
+ <dl class="detailList">
482
+ <dt class="heading">See:</dt>
483
+
484
+ <dd><a href="../symbols/_global_.html#spyOn">spyOn</a>, jasmine.createSpy, jasmine.createSpyObj</dd>
485
+
486
+ </dl>
487
+
488
+
489
+ </div>
490
+
491
+
492
+ <!-- ============================== field details ========================== -->
493
+
494
+ <div class="sectionTitle">
495
+ Field Detail
496
+ </div>
497
+
498
+ <a name="argsForCall"> </a>
499
+ <div class="fixedFont">
500
+
501
+
502
+ <b>argsForCall</b>
503
+
504
+ </div>
505
+ <div class="description">
506
+ Holds arguments for each call to the spy, indexed by call count
507
+
508
+
509
+ </div>
510
+
511
+
512
+
513
+ <pre class="code">var mySpy = jasmine.createSpy('foo');
514
+ mySpy(1, 2);
515
+ mySpy(7, 8);
516
+ mySpy.mostRecentCall.args = [7, 8];
517
+ mySpy.argsForCall[0] = [1, 2];
518
+ mySpy.argsForCall[1] = [7, 8];</pre>
519
+
520
+
521
+
522
+
523
+
524
+
525
+
526
+
527
+ <hr />
528
+
529
+ <a name="identity"> </a>
530
+ <div class="fixedFont">
531
+
532
+
533
+ <b>identity</b>
534
+
535
+ </div>
536
+ <div class="description">
537
+ The name of the spy, if provided.
538
+
539
+
540
+ </div>
541
+
542
+
543
+
544
+
545
+
546
+
547
+
548
+
549
+ <hr />
550
+
551
+ <a name="isSpy"> </a>
552
+ <div class="fixedFont">
553
+
554
+
555
+ <b>isSpy</b>
556
+
557
+ </div>
558
+ <div class="description">
559
+ Is this Object a spy?
560
+
561
+
562
+ </div>
563
+
564
+
565
+
566
+
567
+
568
+
569
+
570
+
571
+ <hr />
572
+
573
+ <a name="mostRecentCall"> </a>
574
+ <div class="fixedFont">
575
+
576
+
577
+ <b>mostRecentCall</b>
578
+
579
+ </div>
580
+ <div class="description">
581
+ Tracking of the most recent call to the spy.
582
+
583
+
584
+ </div>
585
+
586
+
587
+
588
+ <pre class="code">var mySpy = jasmine.createSpy('foo');
589
+ mySpy(1, 2);
590
+ mySpy.mostRecentCall.args = [1, 2];</pre>
591
+
592
+
593
+
594
+
595
+
596
+
597
+
598
+
599
+
600
+
601
+
602
+
603
+ <!-- ============================== method details ========================= -->
604
+
605
+ <div class="sectionTitle">
606
+ Method Detail
607
+ </div>
608
+
609
+ <a name="andCallFake"> </a>
610
+ <div class="fixedFont">
611
+
612
+
613
+ <b>andCallFake</b>(fakeFunc)
614
+
615
+ </div>
616
+ <div class="description">
617
+ Calls an alternate implementation when a spy is called.
618
+
619
+
620
+ </div>
621
+
622
+
623
+
624
+ <pre class="code">var baz = function() {
625
+ // do some stuff, return something
626
+ }
627
+ // defining a spy from scratch: foo() calls the function baz
628
+ var foo = jasmine.createSpy('spy on foo').andCall(baz);
629
+
630
+ // defining a spy on an existing property: foo.bar() calls an anonymnous function
631
+ spyOn(foo, 'bar').andCall(function() { return 'baz';} );</pre>
632
+
633
+
634
+
635
+
636
+ <dl class="detailList">
637
+ <dt class="heading">Parameters:</dt>
638
+
639
+ <dt>
640
+ <span class="light fixedFont">{Function}</span> <b>fakeFunc</b>
641
+
642
+ </dt>
643
+ <dd></dd>
644
+
645
+ </dl>
646
+
647
+
648
+
649
+
650
+
651
+
652
+
653
+
654
+ <hr />
655
+
656
+ <a name="andCallThrough"> </a>
657
+ <div class="fixedFont">
658
+
659
+
660
+ <b>andCallThrough</b>()
661
+
662
+ </div>
663
+ <div class="description">
664
+ Tells a spy to call through to the actual implemenatation.
665
+
666
+
667
+ </div>
668
+
669
+
670
+
671
+ <pre class="code">var foo = {
672
+ bar: function() { // do some stuff }
673
+ }
674
+
675
+ // defining a spy on an existing property: foo.bar
676
+ spyOn(foo, 'bar').andCallThrough();</pre>
677
+
678
+
679
+
680
+
681
+
682
+
683
+
684
+
685
+
686
+
687
+
688
+ <hr />
689
+
690
+ <a name="andReturn"> </a>
691
+ <div class="fixedFont">
692
+
693
+
694
+ <b>andReturn</b>(value)
695
+
696
+ </div>
697
+ <div class="description">
698
+ For setting the return value of a spy.
699
+
700
+
701
+ </div>
702
+
703
+
704
+
705
+ <pre class="code">// defining a spy from scratch: foo() returns 'baz'
706
+ var foo = jasmine.createSpy('spy on foo').andReturn('baz');
707
+
708
+ // defining a spy on an existing property: foo.bar() returns 'baz'
709
+ spyOn(foo, 'bar').andReturn('baz');</pre>
710
+
711
+
712
+
713
+
714
+ <dl class="detailList">
715
+ <dt class="heading">Parameters:</dt>
716
+
717
+ <dt>
718
+ <span class="light fixedFont">{Object}</span> <b>value</b>
719
+
720
+ </dt>
721
+ <dd></dd>
722
+
723
+ </dl>
724
+
725
+
726
+
727
+
728
+
729
+
730
+
731
+
732
+ <hr />
733
+
734
+ <a name="andThrow"> </a>
735
+ <div class="fixedFont">
736
+
737
+
738
+ <b>andThrow</b>(exceptionMsg)
739
+
740
+ </div>
741
+ <div class="description">
742
+ For throwing an exception when a spy is called.
743
+
744
+
745
+ </div>
746
+
747
+
748
+
749
+ <pre class="code">// defining a spy from scratch: foo() throws an exception w/ message 'ouch'
750
+ var foo = jasmine.createSpy('spy on foo').andThrow('baz');
751
+
752
+ // defining a spy on an existing property: foo.bar() throws an exception w/ message 'ouch'
753
+ spyOn(foo, 'bar').andThrow('baz');</pre>
754
+
755
+
756
+
757
+
758
+ <dl class="detailList">
759
+ <dt class="heading">Parameters:</dt>
760
+
761
+ <dt>
762
+ <span class="light fixedFont">{String}</span> <b>exceptionMsg</b>
763
+
764
+ </dt>
765
+ <dd></dd>
766
+
767
+ </dl>
768
+
769
+
770
+
771
+
772
+
773
+
774
+
775
+
776
+ <hr />
777
+
778
+ <a name="plan"> </a>
779
+ <div class="fixedFont">
780
+
781
+
782
+ <b>plan</b>()
783
+
784
+ </div>
785
+ <div class="description">
786
+ The acutal function this spy stubs.
787
+
788
+
789
+ </div>
790
+
791
+
792
+
793
+
794
+
795
+
796
+
797
+
798
+
799
+
800
+
801
+ <hr />
802
+
803
+ <a name="reset"> </a>
804
+ <div class="fixedFont">
805
+
806
+
807
+ <b>reset</b>()
808
+
809
+ </div>
810
+ <div class="description">
811
+ Resets all of a spy's the tracking variables so that it can be used again.
812
+
813
+
814
+ </div>
815
+
816
+
817
+
818
+ <pre class="code">spyOn(foo, 'bar');
819
+
820
+ foo.bar();
821
+
822
+ expect(foo.bar.callCount).toEqual(1);
823
+
824
+ foo.bar.reset();
825
+
826
+ expect(foo.bar.callCount).toEqual(0);</pre>
827
+
828
+
829
+
830
+
831
+
832
+
833
+
834
+
835
+
836
+
837
+
838
+
839
+
840
+
841
+
842
+ <!-- ============================== event details ========================= -->
843
+
844
+
845
+ <hr />
846
+ </div>
847
+
848
+
849
+ <!-- ============================== footer ================================= -->
850
+ <div class="fineprint" style="clear:both">
851
+
852
+ Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Mon Nov 02 2009 16:15:59 GMT-0800 (PST)
853
+ </div>
854
+ </body>
855
+ </html>