Compare commits
177 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0bb7f4bd6a | |||
| da49a0ce40 | |||
| 80d67d49a0 | |||
| 6ca766d5ea | |||
| 5e3eb884ca | |||
| aef78b1ef1 | |||
| f1f5d8de7d | |||
| 535d9abce0 | |||
| 8679090bf3 | |||
| b12605274d | |||
| db1c6e659d | |||
| d72b18c47b | |||
| 81c2779731 | |||
| 163f5977a5 | |||
| 99ab1f0e81 | |||
| 02db3338fb | |||
| ca841c9248 | |||
| c78460289a | |||
| e986b024bc | |||
| bef9867b61 | |||
| 20a00d517e | |||
| 9f247eb278 | |||
| b99bd08df9 | |||
| 72b5ede0da | |||
| 21998dcb9d | |||
| ba8c16acd7 | |||
| dd5e97bf14 | |||
| d90852336f | |||
| 849a4efda8 | |||
| 40ff1cb4c8 | |||
| 23c5289b7e | |||
| 7653107f0c | |||
| 2cb5bf146c | |||
| 4ebc3b5964 | |||
| 701ee719e6 | |||
| f99a5ff577 | |||
| 1a53838d97 | |||
| 2fc78a0fe2 | |||
| 60ea562560 | |||
| b0326d3078 | |||
| 752b91f118 | |||
| b0ae461139 | |||
| ee5905d237 | |||
| 5a8a050c46 | |||
| 7be8247b2f | |||
| 2881a645a5 | |||
| 98e86817bf | |||
| 3b92b9bb79 | |||
| 1b3545c82a | |||
| 2a5754600a | |||
| ff8b9d8375 | |||
| 1982fb51c9 | |||
| 0810e4a01c | |||
| 0f610b03d2 | |||
| 8feb285ca8 | |||
| c21431415b | |||
| f9d73761bb | |||
| 4c600311df | |||
| 827fd1da0e | |||
| 328cc89980 | |||
| cf6d26d25f | |||
| b67d2a265d | |||
| 8b23698852 | |||
| 6a467fc00e | |||
| fa2d36c5dc | |||
| a0cac54492 | |||
| 2059422955 | |||
| b35a2acfc8 | |||
| e77162f308 | |||
| 1c3b3b89be | |||
| 970ef0cec2 | |||
| 97ce2070d1 | |||
| b6e408aab8 | |||
| 6b3bf1b3ba | |||
| 5dd9c53176 | |||
| 5f82bdbf1b | |||
| 3109e7a4bb | |||
| 397d202f54 | |||
| 2597c235d9 | |||
| d222855cc8 | |||
| 308d02f72f | |||
| 35171c9222 | |||
| e9e74f1800 | |||
| 85d3b2d14b | |||
| 706b180a2c | |||
| beddbaf5c7 | |||
| a907301dcb | |||
| 1b1c2b1998 | |||
| e7865295dd | |||
| 6d8557608c | |||
| fd37be4dff | |||
| 92ffcb47e2 | |||
| c164d58a1a | |||
| 3459697cb4 | |||
| 31bb686fd5 | |||
| 5659a1e79e | |||
| b7549196da | |||
| a3ed49a5ed | |||
| e1ebc1e692 | |||
| d27684d280 | |||
| f9b3eff5ab | |||
| 34b479a1a4 | |||
| 6ee8ed02a9 | |||
| 73c0d57c94 | |||
| cbc15d733d | |||
| 61241140e8 | |||
| 250c483a6b | |||
| a394b564f4 | |||
| 2588368231 | |||
| d09cacebc7 | |||
| ddaab50b75 | |||
| e33ecf3665 | |||
| 26fdc7cc91 | |||
| 724f1772b7 | |||
| 2a29bb3ad9 | |||
| 3e7f870965 | |||
| 11f356e375 | |||
| 65cec7a2b9 | |||
| 4620ea6a44 | |||
| 3b702bd992 | |||
| bed9e118b6 | |||
| 8ba804e299 | |||
| 17b513eafb | |||
| ca6b23684e | |||
| 268cb0c6c5 | |||
| 5e8b52debf | |||
| 43f819e9e2 | |||
| 4533d6a7cd | |||
| 50134eb1ac | |||
| 4138fd3626 | |||
| b9ee6a9119 | |||
| d7a47264ef | |||
| 187bde37ca | |||
| 7edeb13be8 | |||
| e8d582600c | |||
| 7a446d53c0 | |||
| ba5b4ab166 | |||
| 985d08885e | |||
| 368756e4d5 | |||
| a1bc4dc2e4 | |||
| f9d61108ee | |||
| 3993969c41 | |||
| 9b9a4b6835 | |||
| 96bcde80af | |||
| bc790d6b87 | |||
| 2a4241323d | |||
| 0a3358f249 | |||
| 1573bf58c5 | |||
| 1c9607ec33 | |||
| e9126fdd9b | |||
| ab65914233 | |||
| 027b28ecb0 | |||
| 8870f907e8 | |||
| ca077342f3 | |||
| 454d453207 | |||
| 7b63960db0 | |||
| 3e68a2c2bc | |||
| 4410c7cd94 | |||
| 93c7b092b3 | |||
| 624a6dd85c | |||
| 8f12dbf3b4 | |||
| 2ef71580ad | |||
| 4b244612c1 | |||
| b1a007dfb5 | |||
| e476f2375a | |||
| 0061054aaa | |||
| 56c26c5b55 | |||
| 8b998749f3 | |||
| b55399bd4b | |||
| 0d6c6c2a35 | |||
| 9475de28b3 | |||
| b6a41c85e1 | |||
| f73fd8ae95 | |||
| d5489a3e0d | |||
| 60f513cbff | |||
| f84c67b98a | |||
| a1a278ee69 |
+1
-1
@@ -1,2 +1,2 @@
|
|||||||
.idea/
|
.idea/
|
||||||
.idea/inspectionProfiles/
|
.svn/
|
||||||
|
|||||||
-6
@@ -1,6 +0,0 @@
|
|||||||
<component name="InspectionProjectProfileManager">
|
|
||||||
<profile version="1.0" is_locked="false">
|
|
||||||
<option name="myName" value="Project Default" />
|
|
||||||
<option name="myLocal" value="false" />
|
|
||||||
</profile>
|
|
||||||
</component>
|
|
||||||
-8
@@ -1,8 +0,0 @@
|
|||||||
<component name="InspectionProjectProfileManager">
|
|
||||||
<settings>
|
|
||||||
<option name="PROJECT_PROFILE" value="Project Default" />
|
|
||||||
<option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
|
|
||||||
<scopes />
|
|
||||||
<list size="0" />
|
|
||||||
</settings>
|
|
||||||
</component>
|
|
||||||
+125
-90
@@ -2,6 +2,47 @@ Jasmine
|
|||||||
=======
|
=======
|
||||||
**YET ANOTHER JavaScript testing framework**
|
**YET ANOTHER JavaScript testing framework**
|
||||||
|
|
||||||
|
Quick Start
|
||||||
|
----------
|
||||||
|
|
||||||
|
### Ruby Suite Running
|
||||||
|
|
||||||
|
Please use the [jasmine-ruby gem](http://github.com/pivotal/jasmine-ruby) to run suites in a ruby environment.
|
||||||
|
|
||||||
|
open `http://localhost:8888/` in your favorite browser.
|
||||||
|
|
||||||
|
### HTML Suite Running
|
||||||
|
[Get the latest release from the downloads page](http://github.com/pivotal/jasmine/downloads)
|
||||||
|
|
||||||
|
open `example/example_runner.html` in your favorite browser
|
||||||
|
|
||||||
|
### Automatic Suite Running (w/ Selenium)
|
||||||
|
|
||||||
|
sudo gem sources -a http://gems.github.com
|
||||||
|
sudo gem install geminstaller
|
||||||
|
git clone git://github.com/pivotal/jasmine.git
|
||||||
|
cd jasmine
|
||||||
|
sudo geminstaller
|
||||||
|
cd examples/ruby
|
||||||
|
rake test:ci
|
||||||
|
|
||||||
|
Releases
|
||||||
|
----------
|
||||||
|
0.10.0 [[download]](http://cloud.github.com/downloads/pivotal/jasmine/jasmine-0.10.0.zip)
|
||||||
|
|
||||||
|
0.9.0 [[download]](http://github.com/pivotal/jasmine/zipball/0.9.0)
|
||||||
|
|
||||||
|
0.8.0 [[download]](http://github.com/pivotal/jasmine/zipball/0.8.0)
|
||||||
|
|
||||||
|
### Which Release Should I Use?
|
||||||
|
|
||||||
|
Please use the latest version unless you have a good reason not to. Some of this documentation may not be applicable to older versions.
|
||||||
|
|
||||||
|
Pull Requests
|
||||||
|
----------
|
||||||
|
We welcome your contributions! Jasmine is currently maintained by Davis Frank ([infews](http://github.com/infews)), Rajan Agaskar ([ragaskar](http://github.com/ragaskar)), and Christian Williams ([Xian](http://github.com/Xian)). You can help us by removing all other recipients from your pull request.
|
||||||
|
|
||||||
|
|
||||||
Why Another Frickin' JS TDD/BDD Framework?
|
Why Another Frickin' JS TDD/BDD Framework?
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
@@ -51,36 +92,39 @@ Results of the expectations are logged for later for reporting.
|
|||||||
|
|
||||||
Jasmine has several built-in matchers. Here are a few:
|
Jasmine has several built-in matchers. Here are a few:
|
||||||
|
|
||||||
`toEqual()` compares objects or primitives and returns true if they are equal
|
>`expect(x).toEqual(y);` compares objects or primitives `x` and `y` and passes if they are equivalent
|
||||||
|
>
|
||||||
`toNotEqual()` compares objects or primitives and returns true if they are not equal
|
>`expect(x).toMatch(pattern);` compares `x` to string or regular expression `pattern` and passes if they match
|
||||||
|
>
|
||||||
`toMatch()` takes a regex or a string and returns true if it matches
|
>`expect(x).toBeDefined();` passes if `x` is not `undefined`
|
||||||
|
>
|
||||||
`toNotMatch()` takes a regex or a string and returns true if it does not match
|
>`expect(x).toBeNull();` passes if `x` is not `null`
|
||||||
|
>
|
||||||
`toBeDefined()` returns true if the object or primitive is not `undefined`
|
>`expect(x).toBeTruthy();` passes if `x` evaluates to true
|
||||||
|
>
|
||||||
`toBeNull()` returns true if the object or primitive is not `null`
|
>`expect(x).toBeFalsy();` passes if `x` evaluates to false
|
||||||
|
>
|
||||||
`toBeTruthy()` returns true if the object or primitive evaluates to true
|
>`expect(x).toContain(y);` passes if array or string `x` contains `y`
|
||||||
|
|
||||||
`toBeFalsy()` returns true if the object or primitive evaluates to false
|
|
||||||
|
|
||||||
`toContain()` returns true if an array or string contains the passed variable.
|
|
||||||
|
|
||||||
`toNotContain()` returns true if an array or string does not contain the passed variable.
|
|
||||||
|
|
||||||
#### Writing New Matchers
|
#### Writing New Matchers
|
||||||
|
|
||||||
A Matcher has a method name, takes an expected value as it's only parameter, has access to the actual value in this, and then makes a call to this.report with true/false with a failure message. Here's the definition of `toEqual()`:
|
We've provided a small set of matchers that cover many common situations. However, we recommend that you write custom matchers when you want to assert a more specific sort of expectation. Custom matchers help to document the intent of your specs, and can help to remove code duplication in your specs.
|
||||||
|
|
||||||
Jasmine.Matchers.prototype.toEqual = function (expected) {
|
It's extremely easy to create new matchers for your app. A matcher function receives the actual value as `this.actual`, and zero or more arguments may be passed in the function call. The function should return `true` if the actual value passes the matcher's requirements, and `false` if it does not.
|
||||||
return this.report((this.actual === expected),
|
|
||||||
'Expected ' + expected + ' but got ' + this.actual + '.');
|
Here's the definition of `toBeLessThan()`:
|
||||||
|
|
||||||
|
toBeLessThan: function(expected) {
|
||||||
|
return this.actual < expected;
|
||||||
|
};
|
||||||
|
|
||||||
|
To add the matcher to your suite, call `this.addMatchers()` from within a `before` or `it` block. Call it with an object mapping matcher name to function:
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
this.addMatchers({
|
||||||
|
toBeVisible: function() { return this.actual.isVisible(); }
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
Feel free to define your own matcher as needed in your code. If you'd like to add Matchers to Jasmine, please write tests.
|
|
||||||
|
|
||||||
### Asynchronous Specs
|
### Asynchronous Specs
|
||||||
|
|
||||||
@@ -222,11 +266,30 @@ A suite can have a beforeEach declaration. It takes a function that is run befor
|
|||||||
|
|
||||||
beforeEach(function () {
|
beforeEach(function () {
|
||||||
suiteWideFoo = 1;
|
suiteWideFoo = 1;
|
||||||
}
|
});
|
||||||
|
|
||||||
it('should equal bar', function () {
|
it('should equal bar', function () {
|
||||||
expect(suiteWideFoo).toEqual(1);
|
expect(suiteWideFoo).toEqual(1);
|
||||||
};
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
A runner can also have beforeEach declarations. Runner beforeEach functions are executed before every spec in all suites, and execute BEFORE suite beforeEach functions. For example:
|
||||||
|
|
||||||
|
var runnerWideFoo = [];
|
||||||
|
|
||||||
|
beforeEach(function () {
|
||||||
|
runnerWideFoo.push('runner');
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('some suite', function () {
|
||||||
|
|
||||||
|
beforeEach(function () {
|
||||||
|
runnerWideFoo.push('suite');
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should equal bar', function () {
|
||||||
|
expect(runnerWideFoo).toEqual(['runner', 'suite']);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
#### afterEach
|
#### afterEach
|
||||||
@@ -238,17 +301,40 @@ Similarly, there is an afterEach declaration. It takes a function that is run a
|
|||||||
var suiteWideFoo;
|
var suiteWideFoo;
|
||||||
afterEach(function () {
|
afterEach(function () {
|
||||||
suiteWideFoo = 0;
|
suiteWideFoo = 0;
|
||||||
}
|
});
|
||||||
|
|
||||||
it('should equal 1', function () {
|
it('should equal 1', function () {
|
||||||
expect(suiteWideFoo).toEqual(1);
|
expect(suiteWideFoo).toEqual(1);
|
||||||
};
|
});
|
||||||
|
|
||||||
it('should equal 0 after', function () {
|
it('should equal 0 after', function () {
|
||||||
expect(suiteWideFoo).toEqual(0);
|
expect(suiteWideFoo).toEqual(0);
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
|
A runner can also have an afterEach declarations. Runner afterEach functions are executed after every spec in all suites, and execute AFTER suite afterEach functions. For example:
|
||||||
|
|
||||||
|
var runnerWideFoo = [];
|
||||||
|
|
||||||
|
afterEach(function () {
|
||||||
|
runnerWideFoo.push('runner');
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('some suite', function () {
|
||||||
|
|
||||||
|
afterEach(function () {
|
||||||
|
runnerWideFoo.push('suite');
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should be empty', function () {
|
||||||
|
expect(runnerWideFoo).toEqual([]);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should be populated after', function () {
|
||||||
|
expect(runnerWideFoo).toEqual(['suite', 'runner']);
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
### Nested Describes
|
### Nested Describes
|
||||||
Jasmine supports nested describes. An example:
|
Jasmine supports nested describes. An example:
|
||||||
|
|
||||||
@@ -269,14 +355,14 @@ Jasmine supports nested describes. An example:
|
|||||||
it('nested expectation', function () {
|
it('nested expectation', function () {
|
||||||
expect(suiteWideFoo).toEqual(0);
|
expect(suiteWideFoo).toEqual(0);
|
||||||
expect(nestedSuiteBar).toEqual(1);
|
expect(nestedSuiteBar).toEqual(1);
|
||||||
};
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it('top-level describe', function () {
|
it('top-level describe', function () {
|
||||||
expect(suiteWideFoo).toEqual(0);
|
expect(suiteWideFoo).toEqual(0);
|
||||||
expect(nestedSuiteBar).toEqual(undefined);
|
expect(nestedSuiteBar).toEqual(undefined);
|
||||||
};
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
### Spies
|
### Spies
|
||||||
@@ -286,15 +372,15 @@ Jasmine integrates 'spies' that permit many spying, mocking, and faking behavior
|
|||||||
Here are a few examples:
|
Here are a few examples:
|
||||||
|
|
||||||
var Klass = function () {
|
var Klass = function () {
|
||||||
}
|
};
|
||||||
|
|
||||||
var Klass.prototype.method = function (arg) {
|
var Klass.prototype.method = function (arg) {
|
||||||
return arg;
|
return arg;
|
||||||
}
|
};
|
||||||
|
|
||||||
var Klass.prototype.methodWithCallback = function (callback) {
|
var Klass.prototype.methodWithCallback = function (callback) {
|
||||||
return callback('foo');
|
return callback('foo');
|
||||||
}
|
};
|
||||||
|
|
||||||
...
|
...
|
||||||
|
|
||||||
@@ -367,75 +453,24 @@ Spies have some useful properties:
|
|||||||
|
|
||||||
Spies are automatically removed after each spec. They may be set in the beforeEach function.
|
Spies are automatically removed after each spec. They may be set in the beforeEach function.
|
||||||
|
|
||||||
### Runner
|
|
||||||
|
|
||||||
You don't need a DOM to run your tests, but you do need a page on which to load & execute your JS. Include the `jasmine.js` file in a script tag as well as the JS file with your specs. You can also use this page for reporting. More on that in a moment.
|
|
||||||
|
|
||||||
Here's the example HTML file (in `jasmine/example`):
|
|
||||||
|
|
||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>Jasmine Example</title>
|
|
||||||
<script type="text/javascript" src="../lib/jasmine.js"></script>
|
|
||||||
<script type="text/javascript" src="example.js"></script>
|
|
||||||
<link type="text/css" rel="stylesheet" href="../lib/jasmine.css"/>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<h1>
|
|
||||||
Running Jasmine Example Specs
|
|
||||||
</h1>
|
|
||||||
<div id="results"></div>
|
|
||||||
<script type="text/javascript">
|
|
||||||
jasmine.execute();
|
|
||||||
setTimeout(function () {
|
|
||||||
document.getElementById('results').innerHTML = 'It\'s alive! :' +
|
|
||||||
(jasmine.currentRunner.results.passedCount === 1);
|
|
||||||
}, 250);
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
||||||
It's the call to `jasmine.execute()` that runs all of the defined specs, gathering reports of each expectation.
|
|
||||||
|
|
||||||
### Reports
|
|
||||||
|
|
||||||
If a reporter exists on the Jasmine instance (named `jasmine`), it will be called when each spec, suite and the overall runner complete. If you're at the single-spec result level, you'll get a spec description, whether it passed or failed, and what the failure message was. At the suite & runner report level, you'll get the total specs run so far, the passed counts, failed counts, and a description (of the suite or runner).
|
|
||||||
|
|
||||||
There is a `Jasmine.Reporters` namespace for you to see how to handle reporting. See the file `json_reporter.js`, which takes the results objects and turns them into JSON strings, for two examples of how to make the results callbacks work for you.
|
|
||||||
|
|
||||||
|
|
||||||
### Disabling Tests & Suites
|
### Disabling Tests & Suites
|
||||||
|
|
||||||
Specs may be disabled by calling `xit()` instead of `it()`. Suites may be disabled by calling `xdescribe()` instead of `describe()`. A simple find/replace in your editor of choice will allow you to run a subset of your specs.
|
Specs may be disabled by calling `xit()` instead of `it()`. Suites may be disabled by calling `xdescribe()` instead of `describe()`. A simple find/replace in your editor of choice will allow you to run a subset of your specs.
|
||||||
|
|
||||||
Contributing and Tests
|
|
||||||
----------------------
|
|
||||||
|
|
||||||
Sometimes it's hard to test a framework with the framework itself. Either the framework isn't mature enough or it just hurts your head. Jasmine is affected by both.
|
|
||||||
|
|
||||||
So we made a little bootstrappy test reporter that lets us test Jasmine's pieces in isolation. See test/bootstrap.js. Feel free to use the bootstrap test suite to test your custom Matchers or extensions/changes to Jasmine.
|
|
||||||
|
|
||||||
Your contributions are welcome. Please submit tests with your pull request.
|
|
||||||
|
|
||||||
## Support
|
## Support
|
||||||
We now have a Google Group for support & discussion.
|
We now have a Google Group for support & discussion.
|
||||||
|
|
||||||
* Homepage: [http://groups.google.com/group/jasmine-js](http://groups.google.com/group/jasmine-js)
|
* Homepage: [http://groups.google.com/group/jasmine-js](http://groups.google.com/group/jasmine-js)
|
||||||
* Group email: [jasmine-js@googlegroups.com](jasmine-js@googlegroups.com)
|
* Group email: [jasmine-js@googlegroups.com](jasmine-js@googlegroups.com)
|
||||||
|
* Current build status of Jasmine is visible at [ci.pivotallabs.com](http://ci.pivotallabs.com)
|
||||||
|
|
||||||
## Maintainers
|
## Maintainers
|
||||||
|
|
||||||
* [Davis W. Frank](dwfrank@pivotallabs.com), Pivotal Labs
|
* [Davis W. Frank](mailto:dwfrank@pivotallabs.com), Pivotal Labs
|
||||||
* [Rajan Agaskar](rajan@pivotallabs.com), Pivotal Labs
|
* [Rajan Agaskar](mailto:rajan@pivotallabs.com), Pivotal Labs
|
||||||
|
* [Christian Williams](mailto:xian@pivotallabs.com), Pivotal Labs
|
||||||
|
|
||||||
## Acknowledgments
|
## Acknowledgments
|
||||||
* A big shout out to the various JavaScript test framework authors, especially TJ for [JSpec](http://github.com/visionmedia/jspec/tree/master) - we played with it a bit before deciding that we really needed to roll our own.
|
* A big shout out to the various JavaScript test framework authors, especially TJ for [JSpec](http://github.com/visionmedia/jspec/tree/master) - we played with it a bit before deciding that we really needed to roll our own.
|
||||||
* Thanks to Pivot [Jessica Miller](http://www.jessicamillerworks.com/) for our fancy pass/fail/pending icons
|
* Thanks to Pivot [Jessica Miller](http://www.jessicamillerworks.com/) for our fancy pass/fail/pending icons
|
||||||
* Huge contributions have been made by [Christian Williams](xian@pivotallabs.com) (the master "spy" coder), [Erik Hanson](erik@pivotallabs.com), [Adam Abrons](adam@pivotallabs.com) and [Carl Jackson](carl@pivotallabs.com), and many other Pivots.
|
* Huge contributions have been made by [Erik Hanson](mailto:erik@pivotallabs.com), [Adam Abrons](mailto:adam@pivotallabs.com) and [Carl Jackson](mailto:carl@pivotallabs.com), and many other Pivots.
|
||||||
|
|
||||||
## TODO List
|
|
||||||
|
|
||||||
* Pending & Disabled counts should be included in results
|
|
||||||
* BUG: describe blocks can't be empty - specs will stall
|
|
||||||
|
|||||||
@@ -1,14 +1,155 @@
|
|||||||
|
require File.expand_path(File.join(File.dirname(__FILE__), "spec/jasmine_helper.rb"))
|
||||||
|
|
||||||
|
def jasmine_sources
|
||||||
|
sources = ["src/base.js", "src/util.js", "src/Env.js", "src/Reporter.js", "src/Block.js"]
|
||||||
|
sources += Dir.glob('src/*.js').reject{|f| f == 'src/base.js' || sources.include?(f)}.sort
|
||||||
|
sources
|
||||||
|
end
|
||||||
|
|
||||||
|
def jasmine_filename(version)
|
||||||
|
"jasmine-#{version['major']}.#{version['minor']}.#{version['build']}.js"
|
||||||
|
end
|
||||||
|
|
||||||
|
def version_hash
|
||||||
|
JSON.parse(File.new("src/version.json").read);
|
||||||
|
end
|
||||||
|
|
||||||
|
def start_jasmine_server(jasmine_includes = nil)
|
||||||
|
require File.expand_path(File.join(JasmineHelper.jasmine_root, "contrib/ruby/jasmine_spec_builder"))
|
||||||
|
|
||||||
|
puts "your tests are here:"
|
||||||
|
puts " http://localhost:8888/run.html"
|
||||||
|
|
||||||
|
Jasmine::SimpleServer.start(
|
||||||
|
8888,
|
||||||
|
lambda { JasmineHelper.specs },
|
||||||
|
JasmineHelper.dir_mappings,
|
||||||
|
:jasmine_files => jasmine_includes)
|
||||||
|
end
|
||||||
|
|
||||||
|
task :default => 'jasmine:dist'
|
||||||
|
|
||||||
|
namespace :jasmine do
|
||||||
|
|
||||||
|
desc 'Prepares for distribution'
|
||||||
|
task :dist => ['jasmine:build', 'jasmine:doc']
|
||||||
|
|
||||||
|
desc 'Check jasmine sources for coding problems'
|
||||||
|
task :lint do
|
||||||
|
passed = true
|
||||||
|
jasmine_sources.each do |src|
|
||||||
|
lines = File.read(src).split(/\n/)
|
||||||
|
lines.each_index do |i|
|
||||||
|
line = lines[i]
|
||||||
|
undefineds = line.scan(/.?undefined/)
|
||||||
|
if undefineds.include?(" undefined") || undefineds.include?("\tundefined")
|
||||||
|
puts "Dangerous undefined at #{src}:#{i}:\n > #{line}"
|
||||||
|
passed = false
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
unless passed
|
||||||
|
puts "Lint failed!"
|
||||||
|
exit 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
desc 'Builds lib/jasmine from source'
|
desc 'Builds lib/jasmine from source'
|
||||||
task :build do
|
task :build => [:lint, 'gems:geminstaller'] do
|
||||||
|
puts 'Building Jasmine from source'
|
||||||
|
require 'json'
|
||||||
|
|
||||||
# these files must be better
|
sources = jasmine_sources
|
||||||
sources = ["src/base.js", "src/util.js", "src/Env.js", "src/ActionCollection.js", "src/Reporter.js"]
|
version = version_hash
|
||||||
|
|
||||||
sources += Dir.glob('src/*.js').reject{|f| sources.include?(f)}
|
old_jasmine_files = Dir.glob('lib/jasmine*.js')
|
||||||
|
old_jasmine_files.each do |file|
|
||||||
|
File.delete(file)
|
||||||
|
end
|
||||||
|
|
||||||
|
jasmine = File.new("lib/#{jasmine_filename version}", 'w')
|
||||||
|
|
||||||
jasmine = File.new('lib/jasmine.js', 'w')
|
|
||||||
sources.each do |source_filename|
|
sources.each do |source_filename|
|
||||||
jasmine.puts(File.read(source_filename))
|
jasmine.puts(File.read(source_filename))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
jasmine.puts %{
|
||||||
|
jasmine.version_= {
|
||||||
|
"major": #{version['major']},
|
||||||
|
"minor": #{version['minor']},
|
||||||
|
"build": #{version['build']},
|
||||||
|
"revision": #{Time.now.to_i}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
jasmine.close
|
||||||
end
|
end
|
||||||
|
|
||||||
|
desc "Build jasmine documentation"
|
||||||
|
task :doc do
|
||||||
|
puts 'Creating Jasmine Documentation'
|
||||||
|
require 'rubygems'
|
||||||
|
#sudo gem install ragaskar-jsdoc_helper
|
||||||
|
require 'jsdoc_helper'
|
||||||
|
|
||||||
|
|
||||||
|
JsdocHelper::Rake::Task.new(:lambda_jsdoc) do |t|
|
||||||
|
t[:files] = jasmine_sources << 'lib/TrivialReporter.js'
|
||||||
|
t[:options] = "-a"
|
||||||
|
end
|
||||||
|
Rake::Task[:lambda_jsdoc].invoke
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
desc "Run jasmine tests of source via server"
|
||||||
|
task :server do
|
||||||
|
files = jasmine_sources + ['lib/TrivialReporter.js', 'lib/consolex.js']
|
||||||
|
jasmine_includes = lambda {
|
||||||
|
raw_jasmine_includes = files.collect { |f| File.expand_path(File.join(JasmineHelper.jasmine_root, f)) }
|
||||||
|
Jasmine.cachebust(raw_jasmine_includes).collect {|f| f.sub(JasmineHelper.jasmine_src_dir, "/src").sub(JasmineHelper.jasmine_lib_dir, "/lib") }
|
||||||
|
}
|
||||||
|
start_jasmine_server(jasmine_includes)
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Build jasmine and run tests via server"
|
||||||
|
task :server_build => 'jasmine:build' do
|
||||||
|
|
||||||
|
start_jasmine_server
|
||||||
|
end
|
||||||
|
|
||||||
|
namespace :test do
|
||||||
|
desc "Run continuous integration tests using a local Selenium runner"
|
||||||
|
task :ci => :'ci:local'
|
||||||
|
namespace :ci do
|
||||||
|
|
||||||
|
task :local => 'jasmine:build' do
|
||||||
|
require "spec"
|
||||||
|
require 'spec/rake/spectask'
|
||||||
|
Spec::Rake::SpecTask.new(:lambda_ci) do |t|
|
||||||
|
t.spec_opts = ["--color", "--format", "specdoc"]
|
||||||
|
t.spec_files = ["spec/jasmine_spec.rb"]
|
||||||
|
end
|
||||||
|
Rake::Task[:lambda_ci].invoke
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Run continuous integration tests using Sauce Labs 'Selenium in the Cloud'"
|
||||||
|
task :saucelabs => ['jasmine:copy_saucelabs_config', 'jasmine:build'] do
|
||||||
|
ENV['SAUCELABS'] = 'true'
|
||||||
|
Rake::Task['jasmine:test:ci:local'].invoke
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
desc 'Copy saucelabs.yml to work directory'
|
||||||
|
task 'copy_saucelabs_config' do
|
||||||
|
FileUtils.cp '../saucelabs.yml', 'spec'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
namespace :gems do
|
||||||
|
desc "Run geminstaller."
|
||||||
|
task :geminstaller do
|
||||||
|
`geminstaller --sudo`
|
||||||
|
end
|
||||||
|
end
|
||||||
+178
-31
@@ -1,7 +1,12 @@
|
|||||||
require 'socket'
|
require 'socket'
|
||||||
require 'erb'
|
require 'erb'
|
||||||
|
require 'json'
|
||||||
|
|
||||||
module Jasmine
|
module Jasmine
|
||||||
|
def self.root
|
||||||
|
File.expand_path(File.join(File.dirname(__FILE__), '../..'))
|
||||||
|
end
|
||||||
|
|
||||||
# this seemingly-over-complex method is necessary to get an open port on at least some of our Macs
|
# this seemingly-over-complex method is necessary to get an open port on at least some of our Macs
|
||||||
def self.open_socket_on_unused_port
|
def self.open_socket_on_unused_port
|
||||||
infos = Socket::getaddrinfo("localhost", nil, Socket::AF_UNSPEC, Socket::SOCK_STREAM, 0, Socket::AI_PASSIVE)
|
infos = Socket::getaddrinfo("localhost", nil, Socket::AF_UNSPEC, Socket::SOCK_STREAM, 0, Socket::AI_PASSIVE)
|
||||||
@@ -43,14 +48,46 @@ module Jasmine
|
|||||||
Process.kill signal, -process_group_id # negative pid means kill process group. (see man 2 kill)
|
Process.kill signal, -process_group_id # negative pid means kill process group. (see man 2 kill)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.cachebust(files, root_dir="", replace=nil, replace_with=nil)
|
||||||
|
require 'digest/md5'
|
||||||
|
files.collect do |file_name|
|
||||||
|
real_file_name = replace && replace_with ? file_name.sub(replace, replace_with) : file_name
|
||||||
|
begin
|
||||||
|
digest = Digest::MD5.hexdigest(File.read("#{root_dir}#{real_file_name}"))
|
||||||
|
rescue
|
||||||
|
digest = "MISSING-FILE"
|
||||||
|
end
|
||||||
|
"#{file_name}?cachebust=#{digest}"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
class RunAdapter
|
class RunAdapter
|
||||||
def initialize(spec_files_or_proc)
|
def initialize(spec_files_or_proc, options = {})
|
||||||
@spec_files_or_proc = spec_files_or_proc
|
@spec_files_or_proc = Jasmine.files(spec_files_or_proc) || []
|
||||||
|
@jasmine_files = Jasmine.files(options[:jasmine_files]) || [
|
||||||
|
"/__JASMINE_ROOT__/lib/" + File.basename(Dir.glob("#{Jasmine.root}/lib/jasmine*.js").first),
|
||||||
|
"/__JASMINE_ROOT__/lib/TrivialReporter.js",
|
||||||
|
"/__JASMINE_ROOT__/lib/json2.js",
|
||||||
|
"/__JASMINE_ROOT__/lib/consolex.js",
|
||||||
|
]
|
||||||
|
@stylesheets = ["/__JASMINE_ROOT__/lib/jasmine.css"] + (Jasmine.files(options[:stylesheets]) || [])
|
||||||
|
@spec_helpers = Jasmine.files(options[:spec_helpers]) || []
|
||||||
end
|
end
|
||||||
|
|
||||||
def call(env)
|
def call(env)
|
||||||
|
run
|
||||||
|
end
|
||||||
|
|
||||||
|
def run
|
||||||
|
stylesheets = @stylesheets
|
||||||
|
spec_helpers = @spec_helpers
|
||||||
spec_files = @spec_files_or_proc
|
spec_files = @spec_files_or_proc
|
||||||
spec_files = spec_files.call if spec_files.respond_to?(:call)
|
|
||||||
|
jasmine_files = @jasmine_files
|
||||||
|
jasmine_files = jasmine_files.call if jasmine_files.respond_to?(:call)
|
||||||
|
|
||||||
|
css_files = @stylesheets
|
||||||
|
|
||||||
|
|
||||||
body = ERB.new(File.read(File.join(File.dirname(__FILE__), "run.html"))).result(binding)
|
body = ERB.new(File.read(File.join(File.dirname(__FILE__), "run.html"))).result(binding)
|
||||||
[
|
[
|
||||||
@@ -59,28 +96,88 @@ module Jasmine
|
|||||||
body
|
body
|
||||||
]
|
]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
class Redirect
|
||||||
|
def initialize(url)
|
||||||
|
@url = url
|
||||||
|
end
|
||||||
|
|
||||||
|
def call(env)
|
||||||
|
[
|
||||||
|
302,
|
||||||
|
{ 'Location' => @url },
|
||||||
|
[]
|
||||||
|
]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
class JsAlert
|
||||||
|
def call(env)
|
||||||
|
[
|
||||||
|
200,
|
||||||
|
{ 'Content-Type' => 'application/javascript' },
|
||||||
|
"document.write('<p>Couldn\\'t load #{env["PATH_INFO"]}!</p>');"
|
||||||
|
]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
class FocusedSuite
|
||||||
|
def initialize(spec_files_or_proc, options)
|
||||||
|
@spec_files_or_proc = Jasmine.files(spec_files_or_proc) || []
|
||||||
|
@options = options
|
||||||
|
end
|
||||||
|
|
||||||
|
def call(env)
|
||||||
|
spec_files = @spec_files_or_proc
|
||||||
|
matching_specs = spec_files.select {|spec_file| spec_file =~ /#{Regexp.escape(env["PATH_INFO"])}/ }.compact
|
||||||
|
if !matching_specs.empty?
|
||||||
|
run_adapter = Jasmine::RunAdapter.new(matching_specs, @options)
|
||||||
|
run_adapter.run
|
||||||
|
else
|
||||||
|
[
|
||||||
|
200,
|
||||||
|
{ 'Content-Type' => 'application/javascript' },
|
||||||
|
"document.write('<p>Couldn\\'t find any specs matching #{env["PATH_INFO"]}!</p>');"
|
||||||
|
]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
class SimpleServer
|
class SimpleServer
|
||||||
def self.start(port, spec_files_or_proc, mappings)
|
def self.start(port, spec_files_or_proc, mappings, options = {})
|
||||||
require 'thin'
|
require 'thin'
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
'/run.html' => Jasmine::RunAdapter.new(spec_files_or_proc)
|
'/__suite__' => Jasmine::FocusedSuite.new(spec_files_or_proc, options),
|
||||||
|
'/run.html' => Jasmine::Redirect.new('/'),
|
||||||
|
'/' => Jasmine::RunAdapter.new(spec_files_or_proc, options)
|
||||||
}
|
}
|
||||||
mappings.each do |from, to|
|
mappings.each do |from, to|
|
||||||
config[from] = Rack::File.new(to)
|
config[from] = Rack::File.new(to)
|
||||||
end
|
end
|
||||||
|
|
||||||
app = Rack::URLMap.new(config)
|
config["/__JASMINE_ROOT__"] = Rack::File.new(Jasmine.root)
|
||||||
|
|
||||||
|
app = Rack::Cascade.new([
|
||||||
|
Rack::URLMap.new(config),
|
||||||
|
JsAlert.new
|
||||||
|
])
|
||||||
|
|
||||||
|
begin
|
||||||
Thin::Server.start('0.0.0.0', port, app)
|
Thin::Server.start('0.0.0.0', port, app)
|
||||||
|
rescue RuntimeError => e
|
||||||
|
raise e unless e.message == 'no acceptor'
|
||||||
|
raise RuntimeError.new("A server is already running on port #{port}")
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class SimpleClient
|
class SimpleClient
|
||||||
def initialize(selenium_host, selenium_port, selenium_browser_start_command, http_address)
|
def initialize(selenium_host, selenium_port, selenium_browser_start_command, http_address)
|
||||||
require 'selenium'
|
require 'selenium/client'
|
||||||
@driver = Selenium::Client::Driver.new(
|
@driver = Selenium::Client::Driver.new(
|
||||||
selenium_host,
|
selenium_host,
|
||||||
selenium_port,
|
selenium_port,
|
||||||
@@ -96,7 +193,7 @@ module Jasmine
|
|||||||
|
|
||||||
def connect
|
def connect
|
||||||
@driver.start
|
@driver.start
|
||||||
@driver.open("/run.html")
|
@driver.open("/")
|
||||||
end
|
end
|
||||||
|
|
||||||
def disconnect
|
def disconnect
|
||||||
@@ -108,67 +205,76 @@ module Jasmine
|
|||||||
sleep 0.1
|
sleep 0.1
|
||||||
end
|
end
|
||||||
|
|
||||||
puts @driver.get_eval("window.getResults()")
|
puts @driver.get_eval("window.results()")
|
||||||
failed_count = @driver.get_eval("window.jasmine.getEnv().currentRunner.getResults().failedCount").to_i
|
failed_count = @driver.get_eval("window.jasmine.getEnv().currentRunner.results().failedCount").to_i
|
||||||
failed_count == 0
|
failed_count == 0
|
||||||
end
|
end
|
||||||
|
|
||||||
def eval_js(script)
|
def eval_js(script)
|
||||||
escaped_script = "'" + script.gsub(/(['\\])/) { '\\' + $1 } + "'"
|
escaped_script = "'" + script.gsub(/(['\\])/) { '\\' + $1 } + "'"
|
||||||
|
|
||||||
result = @driver.get_eval("window.eval(#{escaped_script})")
|
result = @driver.get_eval(" try { eval(#{escaped_script}, window); } catch(err) { window.eval(#{escaped_script}); }")
|
||||||
JSON.parse("[#{result}]")[0]
|
JSON.parse("[#{result}]")[0]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class Runner
|
class Runner
|
||||||
def initialize(selenium_jar_path, spec_files, dir_mappings)
|
def initialize(selenium_jar_path, spec_files, dir_mappings, options={})
|
||||||
@selenium_jar_path = selenium_jar_path
|
@selenium_jar_path = selenium_jar_path
|
||||||
@spec_files = spec_files
|
@spec_files = spec_files
|
||||||
@dir_mappings = dir_mappings
|
@dir_mappings = dir_mappings
|
||||||
|
@options = options
|
||||||
|
|
||||||
|
@browser = options[:browser] ? options[:browser].delete(:browser) : 'firefox'
|
||||||
@selenium_pid = nil
|
@selenium_pid = nil
|
||||||
@jasmine_server_pid = nil
|
@jasmine_server_pid = nil
|
||||||
|
@selenium_host = 'localhost'
|
||||||
|
@jasmine_server_port = Jasmine::find_unused_port
|
||||||
|
@selenium_server_port = Jasmine::find_unused_port
|
||||||
end
|
end
|
||||||
|
|
||||||
def start
|
def start
|
||||||
start_servers
|
start_jasmine_server
|
||||||
@client = Jasmine::SimpleClient.new("localhost", @selenium_server_port, "*firefox", "http://localhost:#{@jasmine_server_port}/")
|
start_selenium_server
|
||||||
|
@client = Jasmine::SimpleClient.new(@selenium_host, @selenium_server_port, "*#{@browser}", "http://localhost:#{@jasmine_server_port}/")
|
||||||
@client.connect
|
@client.connect
|
||||||
end
|
end
|
||||||
|
|
||||||
def stop
|
def stop
|
||||||
@client.disconnect
|
@client.disconnect
|
||||||
stop_servers
|
stop_selenium_server
|
||||||
|
stop_jasmine_server
|
||||||
end
|
end
|
||||||
|
|
||||||
def start_servers
|
def start_jasmine_server
|
||||||
@jasmine_server_port = Jasmine::find_unused_port
|
@jasmine_server_pid = fork do
|
||||||
@selenium_server_port = Jasmine::find_unused_port
|
Process.setpgrp
|
||||||
|
Jasmine::SimpleServer.start(@jasmine_server_port, @spec_files, @dir_mappings, @options)
|
||||||
|
exit! 0
|
||||||
|
end
|
||||||
|
puts "jasmine server started. pid is #{@jasmine_server_pid}"
|
||||||
|
Jasmine::wait_for_listener(@jasmine_server_port, "jasmine server")
|
||||||
|
end
|
||||||
|
|
||||||
|
def start_selenium_server
|
||||||
@selenium_pid = fork do
|
@selenium_pid = fork do
|
||||||
Process.setpgrp
|
Process.setpgrp
|
||||||
exec "java -jar #{@selenium_jar_path} -port #{@selenium_server_port} > /dev/null 2>&1"
|
exec "java -jar #{@selenium_jar_path} -port #{@selenium_server_port} > /dev/null 2>&1"
|
||||||
end
|
end
|
||||||
puts "selenium started. pid is #{@selenium_pid}"
|
puts "selenium started. pid is #{@selenium_pid}"
|
||||||
|
|
||||||
@jasmine_server_pid = fork do
|
|
||||||
Process.setpgrp
|
|
||||||
Jasmine::SimpleServer.start(@jasmine_server_port, @spec_files, @dir_mappings)
|
|
||||||
exit! 0
|
|
||||||
end
|
|
||||||
puts "jasmine server started. pid is #{@jasmine_server_pid}"
|
|
||||||
|
|
||||||
Jasmine::wait_for_listener(@selenium_server_port, "selenium server")
|
Jasmine::wait_for_listener(@selenium_server_port, "selenium server")
|
||||||
Jasmine::wait_for_listener(@jasmine_server_port, "jasmine server")
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def stop_servers
|
def stop_jasmine_server
|
||||||
puts "shutting down the servers..."
|
puts "shutting down Jasmine server..."
|
||||||
Jasmine::kill_process_group(@selenium_pid) if @selenium_pid
|
|
||||||
Jasmine::kill_process_group(@jasmine_server_pid) if @jasmine_server_pid
|
Jasmine::kill_process_group(@jasmine_server_pid) if @jasmine_server_pid
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def stop_selenium_server
|
||||||
|
puts "shutting down Selenium server..."
|
||||||
|
Jasmine::kill_process_group(@selenium_pid) if @selenium_pid
|
||||||
|
end
|
||||||
|
|
||||||
def run
|
def run
|
||||||
begin
|
begin
|
||||||
start
|
start
|
||||||
@@ -184,4 +290,45 @@ module Jasmine
|
|||||||
@client.eval_js(script)
|
@client.eval_js(script)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
class SauceLabsRunner < Runner
|
||||||
|
def initialize(spec_files, dir_mappings, options={})
|
||||||
|
@spec_files = spec_files
|
||||||
|
@dir_mappings = dir_mappings
|
||||||
|
@options = options
|
||||||
|
|
||||||
|
@browser = options[:browser] ? options[:browser].delete(:browser) : 'firefox'
|
||||||
|
@jasmine_server_pid = nil
|
||||||
|
@jasmine_server_port = Jasmine::find_unused_port
|
||||||
|
@saucelabs_config = SeleniumConfig.new(options[:saucelabs_config], options[:saucelabs_config_file], @jasmine_server_port)
|
||||||
|
end
|
||||||
|
|
||||||
|
def start_selenium_server
|
||||||
|
@sauce_tunnel = SauceTunnel.new(@saucelabs_config)
|
||||||
|
end
|
||||||
|
|
||||||
|
def start
|
||||||
|
start_jasmine_server
|
||||||
|
start_selenium_server
|
||||||
|
@client = Jasmine::SimpleClient.new(@saucelabs_config['selenium_server_address'],
|
||||||
|
4444,
|
||||||
|
@saucelabs_config['selenium_browser_key'],
|
||||||
|
"http://#{@saucelabs_config['application_address']}")
|
||||||
|
@client.connect
|
||||||
|
end
|
||||||
|
|
||||||
|
def stop
|
||||||
|
@client.disconnect
|
||||||
|
@sauce_tunnel.shutdown
|
||||||
|
stop_jasmine_server
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.files(f)
|
||||||
|
result = f
|
||||||
|
result = result.call if result.respond_to?(:call)
|
||||||
|
result
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
require File.expand_path(File.join(File.dirname(__FILE__), "jasmine_runner.rb"))
|
require File.expand_path(File.join(File.dirname(__FILE__), "jasmine_runner.rb"))
|
||||||
|
require 'enumerator'
|
||||||
module Jasmine
|
module Jasmine
|
||||||
|
|
||||||
class SpecBuilder
|
class SpecBuilder
|
||||||
@@ -8,6 +8,7 @@ module Jasmine
|
|||||||
def initialize(spec_files, runner)
|
def initialize(spec_files, runner)
|
||||||
@spec_files = spec_files
|
@spec_files = spec_files
|
||||||
@runner = runner
|
@runner = runner
|
||||||
|
@spec_ids = []
|
||||||
end
|
end
|
||||||
|
|
||||||
def start
|
def start
|
||||||
@@ -15,7 +16,7 @@ module Jasmine
|
|||||||
|
|
||||||
@runner.start
|
@runner.start
|
||||||
load_suite_info
|
load_suite_info
|
||||||
@spec_results = {}
|
wait_for_suites_to_finish_running
|
||||||
end
|
end
|
||||||
|
|
||||||
def stop
|
def stop
|
||||||
@@ -51,24 +52,33 @@ module Jasmine
|
|||||||
end
|
end
|
||||||
|
|
||||||
def load_suite_info
|
def load_suite_info
|
||||||
while !eval_js('jsApiReporter.started') do
|
started = Time.now
|
||||||
|
while !eval_js('jsApiReporter && jsApiReporter.started') do
|
||||||
|
raise "couldn't connect to Jasmine after 60 seconds" if (started + 60 < Time.now)
|
||||||
sleep 0.1
|
sleep 0.1
|
||||||
end
|
end
|
||||||
|
|
||||||
@suites = eval_js('JSON.stringify(jsApiReporter.suites)')
|
@suites = eval_js("var result = jsApiReporter.suites(); if (window.Prototype && result && result.toJSON) { result.toJSON()} else { JSON.stringify(result) }")
|
||||||
end
|
end
|
||||||
|
|
||||||
def results_for(spec_id)
|
def results_for(spec_id)
|
||||||
spec_id = spec_id.to_s
|
@spec_results ||= load_results
|
||||||
return @spec_results[spec_id] if @spec_results[spec_id]
|
@spec_results[spec_id.to_s]
|
||||||
|
|
||||||
@spec_results[spec_id] = eval_js("JSON.stringify(jsApiReporter.results[#{spec_id}])")
|
|
||||||
while @spec_results[spec_id].nil? do
|
|
||||||
sleep 0.1
|
|
||||||
@spec_results[spec_id] = eval_js("JSON.stringify(jsApiReporter.results[#{spec_id}])")
|
|
||||||
end
|
end
|
||||||
|
|
||||||
@spec_results[spec_id]
|
def load_results
|
||||||
|
@spec_results = {}
|
||||||
|
@spec_ids.each_slice(50) do |slice|
|
||||||
|
@spec_results.merge!(eval_js("var result = jsApiReporter.resultsForSpecs(#{JSON.generate(slice)}); if (window.Prototype && result && result.toJSON) { result.toJSON()} else { JSON.stringify(result) }"))
|
||||||
|
end
|
||||||
|
@spec_results
|
||||||
|
end
|
||||||
|
|
||||||
|
def wait_for_suites_to_finish_running
|
||||||
|
puts "Waiting for suite to finish in browser ..."
|
||||||
|
while !eval_js('jsApiReporter.finished') do
|
||||||
|
sleep 0.1
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def declare_suites
|
def declare_suites
|
||||||
@@ -97,7 +107,7 @@ module Jasmine
|
|||||||
def declare_spec(parent, spec)
|
def declare_spec(parent, spec)
|
||||||
me = self
|
me = self
|
||||||
example_name = spec["name"]
|
example_name = spec["name"]
|
||||||
|
@spec_ids << spec["id"]
|
||||||
backtrace = @example_locations[parent.description + " " + example_name]
|
backtrace = @example_locations[parent.description + " " + example_name]
|
||||||
parent.it example_name, {}, backtrace do
|
parent.it example_name, {}, backtrace do
|
||||||
me.report_spec(spec["id"])
|
me.report_spec(spec["id"])
|
||||||
@@ -114,13 +124,15 @@ module Jasmine
|
|||||||
puts message["text"]
|
puts message["text"]
|
||||||
puts "\n"
|
puts "\n"
|
||||||
else
|
else
|
||||||
|
unless message["message"] =~ /^Passed.$/
|
||||||
STDERR << message["message"]
|
STDERR << message["message"]
|
||||||
STDERR << "\n"
|
STDERR << "\n"
|
||||||
|
|
||||||
out << message["message"]
|
out << message["message"]
|
||||||
out << "\n"
|
out << "\n"
|
||||||
|
end
|
||||||
|
|
||||||
unless message["passed"]
|
if !message["passed"] && message["trace"]["stack"]
|
||||||
stack_trace = message["trace"]["stack"].gsub(/<br \/>/, "\n").gsub(/<\/?b>/, " ")
|
stack_trace = message["trace"]["stack"].gsub(/<br \/>/, "\n").gsub(/<\/?b>/, " ")
|
||||||
STDERR << stack_trace.gsub(/\(.*\)@http:\/\/localhost:[0-9]+\/specs\//, "/spec/")
|
STDERR << stack_trace.gsub(/\(.*\)@http:\/\/localhost:[0-9]+\/specs\//, "/spec/")
|
||||||
STDERR << "\n"
|
STDERR << "\n"
|
||||||
@@ -129,7 +141,7 @@ module Jasmine
|
|||||||
|
|
||||||
end
|
end
|
||||||
fail out unless spec_results['result'] == 'passed'
|
fail out unless spec_results['result'] == 'passed'
|
||||||
puts out
|
puts out unless out.empty?
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
@@ -139,4 +151,3 @@ module Jasmine
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
+26
-8
@@ -3,25 +3,43 @@
|
|||||||
<head>
|
<head>
|
||||||
<meta content="text/html;charset=UTF-8" http-equiv="Content-Type"/>
|
<meta content="text/html;charset=UTF-8" http-equiv="Content-Type"/>
|
||||||
<title>Jasmine suite</title>
|
<title>Jasmine suite</title>
|
||||||
<script src="/jasmine/lib/jasmine.js"></script>
|
<% css_files.each do |css_file| %>
|
||||||
<script src="/jasmine/lib/json2.js"></script><!-- todo: don't load JSON in the test runner! [20090710 xw] -->
|
<link rel="stylesheet" href="<%= css_file %>" type="text/css" media="screen"/>
|
||||||
<script src="/jasmine/lib/TrivialReporter.js"></script>
|
<% end %>
|
||||||
<script src="/specs/javascripts/screw-jasmine-compat.js"></script>
|
|
||||||
<script type="text/javascript"></script>
|
<% jasmine_files.each do |jasmine_file| %>
|
||||||
<link href="/jasmine/lib/jasmine.css" rel="stylesheet"/>
|
<script src="<%= jasmine_file %>" type="text/javascript"></script>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<% spec_helpers.each do |spec_helper| %>
|
||||||
|
<script src="<%= spec_helper %>" type="text/javascript"></script>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
|
var jsApiReporter;
|
||||||
|
(function() {
|
||||||
var jasmineEnv = jasmine.getEnv();
|
var jasmineEnv = jasmine.getEnv();
|
||||||
var jsApiReporter = new jasmine.JsApiReporter();
|
|
||||||
|
jsApiReporter = new jasmine.JsApiReporter();
|
||||||
|
var trivialReporter = new jasmine.TrivialReporter();
|
||||||
|
|
||||||
jasmineEnv.addReporter(jsApiReporter);
|
jasmineEnv.addReporter(jsApiReporter);
|
||||||
jasmineEnv.addReporter(new jasmine.TrivialReporter());
|
jasmineEnv.addReporter(trivialReporter);
|
||||||
|
|
||||||
|
jasmineEnv.specFilter = function(spec) {
|
||||||
|
return trivialReporter.specFilter(spec);
|
||||||
|
};
|
||||||
|
|
||||||
window.onload = function() {
|
window.onload = function() {
|
||||||
jasmineEnv.execute();
|
jasmineEnv.execute();
|
||||||
};
|
};
|
||||||
|
})();
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<% spec_files.each do |spec_file| %>
|
<% spec_files.each do |spec_file| %>
|
||||||
<script src="<%= spec_file %>" type="text/javascript"></script>
|
<script src="<%= spec_file %>" type="text/javascript"></script>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="jasmine_content"></div>
|
<div id="jasmine_content"></div>
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
require 'spec'
|
require 'spec'
|
||||||
require 'open-uri'
|
require 'open-uri'
|
||||||
require File.dirname(__FILE__) + '/jasmine_runner'
|
require 'thin'
|
||||||
|
|
||||||
|
require File.dirname(__FILE__) + '/../jasmine_runner'
|
||||||
|
|
||||||
describe Jasmine::SimpleServer do
|
describe Jasmine::SimpleServer do
|
||||||
before do
|
before do
|
||||||
@@ -20,11 +22,29 @@ describe Jasmine::SimpleServer do
|
|||||||
|
|
||||||
Jasmine::wait_for_listener(@port)
|
Jasmine::wait_for_listener(@port)
|
||||||
|
|
||||||
run_html = open("http://localhost:#{@port}/run.html").read
|
run_html = open("http://localhost:#{@port}/").read
|
||||||
run_html.should =~ /<script src="file1"/
|
run_html.should =~ /<script src="file1"/
|
||||||
run_html.should =~ /<script src="file2"/
|
run_html.should =~ /<script src="file2"/
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe "RuntimeError" do
|
||||||
|
|
||||||
|
it "should throw an Already Running error if there is already a server running" do
|
||||||
|
Thin::Server.should_receive(:start).and_raise(RuntimeError.new('no acceptor'))
|
||||||
|
lambda {
|
||||||
|
Jasmine::SimpleServer.start(@port, ["file1", "file2"], {})
|
||||||
|
}.should raise_error(RuntimeError, "A server is already running on port #{@port}")
|
||||||
|
end
|
||||||
|
|
||||||
|
it "re-raises other RuntimeErrors" do
|
||||||
|
Thin::Server.should_receive(:start).and_raise(RuntimeError.new('some random error'))
|
||||||
|
lambda {
|
||||||
|
Jasmine::SimpleServer.start(@port, ["file1", "file2"], {})
|
||||||
|
}.should raise_error(RuntimeError, "some random error")
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
it "should take a proc that returns a list of spec files" do
|
it "should take a proc that returns a list of spec files" do
|
||||||
spec_fileses = [["file1", "file2"], ["file1", "file2", "file3"]]
|
spec_fileses = [["file1", "file2"], ["file1", "file2", "file3"]]
|
||||||
spec_files_proc = lambda do
|
spec_files_proc = lambda do
|
||||||
@@ -39,11 +59,11 @@ describe Jasmine::SimpleServer do
|
|||||||
|
|
||||||
Jasmine::wait_for_listener(@port)
|
Jasmine::wait_for_listener(@port)
|
||||||
|
|
||||||
run_html = open("http://localhost:#{@port}/run.html").read
|
run_html = open("http://localhost:#{@port}/").read
|
||||||
run_html.should =~ /<script src="file1"/
|
run_html.should =~ /<script src="file1"/
|
||||||
run_html.should =~ /<script src="file2"/
|
run_html.should =~ /<script src="file2"/
|
||||||
|
|
||||||
run_html = open("http://localhost:#{@port}/run.html").read
|
run_html = open("http://localhost:#{@port}/").read
|
||||||
run_html.should =~ /<script src="file1"/
|
run_html.should =~ /<script src="file1"/
|
||||||
run_html.should =~ /<script src="file2"/
|
run_html.should =~ /<script src="file2"/
|
||||||
run_html.should =~ /<script src="file3"/
|
run_html.should =~ /<script src="file3"/
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
# Project-specific configuration for CruiseControl.rb
|
||||||
|
Project.configure do |project|
|
||||||
|
|
||||||
|
# Send email notifications about broken and fixed builds to email1@your.site, email2@your.site (default: send to nobody)
|
||||||
|
# project.email_notifier.emails = ['email1@your.site', 'email2@your.site']
|
||||||
|
|
||||||
|
# Set email 'from' field to john@doe.com:
|
||||||
|
# project.email_notifier.from = 'john@doe.com'
|
||||||
|
|
||||||
|
# Build the project by invoking rake task 'custom'
|
||||||
|
project.rake_task = 'jasmine:test:ci:saucelabs'
|
||||||
|
|
||||||
|
# Build the project by invoking shell script "build_my_app.sh". Keep in mind that when the script is invoked,
|
||||||
|
# current working directory is <em>[cruise data]</em>/projects/your_project/work, so if you do not keep build_my_app.sh
|
||||||
|
# in version control, it should be '../build_my_app.sh' instead
|
||||||
|
#project.build_command = 'cp ../saucelabs.yml .'
|
||||||
|
|
||||||
|
# Ping Subversion for new revisions every 5 minutes (default: 30 seconds)
|
||||||
|
# project.scheduler.polling_interval = 5.minutes
|
||||||
|
|
||||||
|
end
|
||||||
+225
-5
@@ -188,16 +188,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="symbols/jasmine.html">jasmine</a></li>
|
<li><a href="symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -219,7 +223,223 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h2><a href="symbols/src/lib_jasmine.js.html">lib/jasmine.js</a></h2>
|
<h2><a href="symbols/src/lib_TrivialReporter.js.html">lib/TrivialReporter.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_base.js.html">src/base.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_Block.js.html">src/Block.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_Env.js.html">src/Env.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_JsApiReporter.js.html">src/JsApiReporter.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_Matchers.js.html">src/Matchers.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_mock-timeout.js.html">src/mock-timeout.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_MultiReporter.js.html">src/MultiReporter.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_NestedResults.js.html">src/NestedResults.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_PrettyPrinter.js.html">src/PrettyPrinter.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_Queue.js.html">src/Queue.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_Reporter.js.html">src/Reporter.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_Reporters.js.html">src/Reporters.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_Runner.js.html">src/Runner.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_Spec.js.html">src/Spec.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_Suite.js.html">src/Suite.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_util.js.html">src/util.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_WaitsBlock.js.html">src/WaitsBlock.js</a></h2>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/src/src_WaitsForBlock.js.html">src/WaitsForBlock.js</a></h2>
|
||||||
|
|
||||||
<dl>
|
<dl>
|
||||||
|
|
||||||
@@ -234,7 +454,7 @@ ul.inheritsList
|
|||||||
</div>
|
</div>
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blankt">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
+28
-12
@@ -2,7 +2,7 @@
|
|||||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
<meta http-equiv="content-type" content="text/html; charset=utf-8"" />
|
||||||
|
|
||||||
<title>JsDoc Reference - Index</title>
|
<title>JsDoc Reference - Index</title>
|
||||||
<meta name="generator" content="JsDoc Toolkit" />
|
<meta name="generator" content="JsDoc Toolkit" />
|
||||||
@@ -188,16 +188,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="symbols/jasmine.html">jasmine</a></li>
|
<li><a href="symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -231,7 +235,13 @@ ul.inheritsList
|
|||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h2><a href="symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></h2>
|
<h2><a href="symbols/jasmine.Block.html">jasmine.Block</a></h2>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/jasmine.Clock.html">jasmine.Clock</a></h2>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<hr />
|
<hr />
|
||||||
@@ -242,6 +252,18 @@ ul.inheritsList
|
|||||||
</div>
|
</div>
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></h2>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2><a href="symbols/jasmine.Matchers.html">jasmine.Matchers</a></h2>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h2><a href="symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></h2>
|
<h2><a href="symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></h2>
|
||||||
|
|
||||||
@@ -254,12 +276,6 @@ ul.inheritsList
|
|||||||
</div>
|
</div>
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<div>
|
|
||||||
<h2><a href="symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></h2>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<hr />
|
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h2><a href="symbols/jasmine.Reporter.html">jasmine.Reporter</a></h2>
|
<h2><a href="symbols/jasmine.Reporter.html">jasmine.Reporter</a></h2>
|
||||||
|
|
||||||
@@ -300,7 +316,7 @@ ul.inheritsList
|
|||||||
</div>
|
</div>
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blankt">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
+20
-16
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -389,7 +393,7 @@ ul.inheritsList
|
|||||||
Used for restoring any state that is hijacked during spec execution.
|
Used for restoring any state that is hijacked during spec execution.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -430,7 +434,7 @@ Used for restoring any state that is hijacked during spec execution.
|
|||||||
Used for spec setup, including validating assumptions.
|
Used for spec setup, including validating assumptions.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -473,7 +477,7 @@ are accessible by calls to beforeEach, it, and afterEach. Describe blocks can be
|
|||||||
of setup in some tests.
|
of setup in some tests.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -527,7 +531,7 @@ It is passed an Object that is the actual value and should chain to one of the m
|
|||||||
jasmine.Matchers functions.
|
jasmine.Matchers functions.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -568,7 +572,7 @@ jasmine.Matchers functions.
|
|||||||
// TODO: pending tests
|
// TODO: pending tests
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -619,7 +623,7 @@ jasmine.Matchers functions.
|
|||||||
Defines part of a jasmine spec. Used in cominbination with waits or waitsFor in asynchrnous specs.
|
Defines part of a jasmine spec. Used in cominbination with waits or waitsFor in asynchrnous specs.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -658,7 +662,7 @@ jasmine.Matchers functions.
|
|||||||
Function that installs a spy on an existing object's method name. Used within a Spec to create a spy.
|
Function that installs a spy on an existing object's method name. Used within a Spec to create a spy.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -707,7 +711,7 @@ spyOn(foo, 'not'); // actual foo.not will not be called, execution stops</pre>
|
|||||||
<dl class="detailList">
|
<dl class="detailList">
|
||||||
<dt class="heading">See:</dt>
|
<dt class="heading">See:</dt>
|
||||||
|
|
||||||
<dd>jasmine.createSpy</dd>
|
<dd><a href="../symbols/jasmine.html#.createSpy">jasmine.createSpy</a></dd>
|
||||||
|
|
||||||
</dl>
|
</dl>
|
||||||
|
|
||||||
@@ -725,7 +729,7 @@ spyOn(foo, 'not'); // actual foo.not will not be called, execution stops</pre>
|
|||||||
Waits for a timeout before moving to the next runs()-defined block.
|
Waits for a timeout before moving to the next runs()-defined block.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -764,7 +768,7 @@ spyOn(foo, 'not'); // actual foo.not will not be called, execution stops</pre>
|
|||||||
Waits for the latchFunction to return true before proceeding to the next runs()-defined block.
|
Waits for the latchFunction to return true before proceeding to the next runs()-defined block.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -815,7 +819,7 @@ spyOn(foo, 'not'); // actual foo.not will not be called, execution stops</pre>
|
|||||||
Disables a suite of specifications. Used to disable some suites in a file, or files, temporarily during development.
|
Disables a suite of specifications. Used to disable some suites in a file, or files, temporarily during development.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -862,7 +866,7 @@ spyOn(foo, 'not'); // actual foo.not will not be called, execution stops</pre>
|
|||||||
A convenience method that allows existing specs to be disabled temporarily during development.
|
A convenience method that allows existing specs to be disabled temporarily during development.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -908,7 +912,7 @@ A convenience method that allows existing specs to be disabled temporarily durin
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:18 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:21 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||||||
<meta name="generator" content="JsDoc Toolkit" />
|
<meta name="generator" content="JsDoc Toolkit" />
|
||||||
|
|
||||||
<title>JsDoc Reference - jasmine.QueuedFunction</title>
|
<title>JsDoc Reference - jasmine.Block</title>
|
||||||
|
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
/* default.css */
|
/* default.css */
|
||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -224,7 +228,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== class title ============================ -->
|
<!-- ============================== class title ============================ -->
|
||||||
<h1 class="classTitle">
|
<h1 class="classTitle">
|
||||||
|
|
||||||
Class jasmine.QueuedFunction
|
Class jasmine.Block
|
||||||
</h1>
|
</h1>
|
||||||
|
|
||||||
<!-- ============================== class summary ========================== -->
|
<!-- ============================== class summary ========================== -->
|
||||||
@@ -234,13 +238,13 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_Block.js.html">Block.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<!-- ============================== constructor summary ==================== -->
|
<!-- ============================== constructor summary ==================== -->
|
||||||
|
|
||||||
<table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class jasmine.QueuedFunction.">
|
<table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class jasmine.Block.">
|
||||||
<caption>Class Summary</caption>
|
<caption>Class Summary</caption>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -253,9 +257,9 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.QueuedFunction.html#constructor">jasmine.QueuedFunction</a></b>(env, func, timeout, latchFunction, spec)
|
<b><a href="../symbols/jasmine.Block.html">jasmine.Block</a></b>(env, func, spec)
|
||||||
</div>
|
</div>
|
||||||
<div class="description">QueuedFunction is how ActionCollections' actions are implemented</div>
|
<div class="description">Blocks are functions with executable code that make up a spec.</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
@@ -267,6 +271,33 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== methods summary ======================== -->
|
<!-- ============================== methods summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.Block.">
|
||||||
|
<caption>Method Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Method Attributes</th>
|
||||||
|
<th scope="col">Method Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Block.html#execute">execute</a></b>(onComplete)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== events summary ======================== -->
|
<!-- ============================== events summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
@@ -278,11 +309,11 @@ ul.inheritsList
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b>jasmine.QueuedFunction</b>(env, func, timeout, latchFunction, spec)
|
<b>jasmine.Block</b>(env, func, spec)
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="description">
|
<div class="description">
|
||||||
QueuedFunction is how ActionCollections' actions are implemented
|
Blocks are functions with executable code that make up a spec.
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -305,18 +336,6 @@ ul.inheritsList
|
|||||||
</dt>
|
</dt>
|
||||||
<dd></dd>
|
<dd></dd>
|
||||||
|
|
||||||
<dt>
|
|
||||||
<span class="light fixedFont">{Number}</span> <b>timeout</b>
|
|
||||||
|
|
||||||
</dt>
|
|
||||||
<dd></dd>
|
|
||||||
|
|
||||||
<dt>
|
|
||||||
<span class="light fixedFont">{Function}</span> <b>latchFunction</b>
|
|
||||||
|
|
||||||
</dt>
|
|
||||||
<dd></dd>
|
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<span class="light fixedFont">{<a href="../symbols/jasmine.Spec.html">jasmine.Spec</a>}</span> <b>spec</b>
|
<span class="light fixedFont">{<a href="../symbols/jasmine.Spec.html">jasmine.Spec</a>}</span> <b>spec</b>
|
||||||
|
|
||||||
@@ -340,6 +359,47 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== method details ========================= -->
|
<!-- ============================== method details ========================= -->
|
||||||
|
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Method Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a name="execute"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>execute</b>(onComplete)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>onComplete</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== event details ========================= -->
|
<!-- ============================== event details ========================= -->
|
||||||
|
|
||||||
@@ -351,7 +411,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@@ -5,7 +5,7 @@
|
|||||||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||||||
<meta name="generator" content="JsDoc Toolkit" />
|
<meta name="generator" content="JsDoc Toolkit" />
|
||||||
|
|
||||||
<title>JsDoc Reference - jasmine.ActionCollection</title>
|
<title>JsDoc Reference - jasmine.Clock</title>
|
||||||
|
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
/* default.css */
|
/* default.css */
|
||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -224,7 +228,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== class title ============================ -->
|
<!-- ============================== class title ============================ -->
|
||||||
<h1 class="classTitle">
|
<h1 class="classTitle">
|
||||||
|
|
||||||
Class jasmine.ActionCollection
|
Namespace jasmine.Clock
|
||||||
</h1>
|
</h1>
|
||||||
|
|
||||||
<!-- ============================== class summary ========================== -->
|
<!-- ============================== class summary ========================== -->
|
||||||
@@ -234,14 +238,14 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_mock-timeout.js.html">mock-timeout.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<!-- ============================== constructor summary ==================== -->
|
<!-- ============================== constructor summary ==================== -->
|
||||||
|
|
||||||
<table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class jasmine.ActionCollection.">
|
<table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class jasmine.Clock.">
|
||||||
<caption>Class Summary</caption>
|
<caption>Namespace Summary</caption>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="col">Constructor Attributes</th>
|
<th scope="col">Constructor Attributes</th>
|
||||||
@@ -253,11 +257,9 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.ActionCollection.html#constructor">jasmine.ActionCollection</a></b>(env)
|
<b><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></b>
|
||||||
</div>
|
</div>
|
||||||
<div class="description">base for Runner & Suite: allows for a queue of functions to get executed, allowing for
|
<div class="description"></div>
|
||||||
any one action to complete, including asynchronous calls, before going to the next
|
|
||||||
action.</div>
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
@@ -271,7 +273,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.ActionCollection.">
|
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.Clock.">
|
||||||
<caption>Method Summary</caption>
|
<caption>Method Summary</caption>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -282,38 +284,74 @@ ul.inheritsList
|
|||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="attributes"> </td>
|
<td class="attributes"><static> </td>
|
||||||
<td class="nameDescription">
|
<td class="nameDescription">
|
||||||
<div class="fixedFont"><b><a href="../symbols/jasmine.ActionCollection.html#execute">execute</a></b>()
|
<div class="fixedFont">jasmine.Clock.<b><a href="../symbols/jasmine.Clock.html#.assertInstalled">assertInstalled</a></b>()
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Starts executing the queue of functions/actions.</div>
|
<div class="description"></div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="attributes"> </td>
|
<td class="attributes"><static> </td>
|
||||||
<td class="nameDescription">
|
<td class="nameDescription">
|
||||||
<div class="fixedFont"><b><a href="../symbols/jasmine.ActionCollection.html#finish">finish</a></b>()
|
<div class="fixedFont">jasmine.Clock.<b><a href="../symbols/jasmine.Clock.html#.installMock">installMock</a></b>()
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Marks the collection as done & calls the finish callback, if there is one</div>
|
<div class="description"></div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="attributes"> </td>
|
<td class="attributes"><static> </td>
|
||||||
<td class="nameDescription">
|
<td class="nameDescription">
|
||||||
<div class="fixedFont"><b><a href="../symbols/jasmine.ActionCollection.html#getCurrentAction">getCurrentAction</a></b>()
|
<div class="fixedFont">jasmine.Clock.<b><a href="../symbols/jasmine.Clock.html#.reset">reset</a></b>()
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Gets the current action.</div>
|
<div class="description"></div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="attributes"> </td>
|
<td class="attributes"><static> </td>
|
||||||
<td class="nameDescription">
|
<td class="nameDescription">
|
||||||
<div class="fixedFont"><b><a href="../symbols/jasmine.ActionCollection.html#next">next</a></b>()
|
<div class="fixedFont">jasmine.Clock.<b><a href="../symbols/jasmine.Clock.html#.runFunctionsWithinRange">runFunctionsWithinRange</a></b>(oldMillis, nowMillis)
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Executes the next queued function/action.</div>
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.Clock.<b><a href="../symbols/jasmine.Clock.html#.scheduleFunction">scheduleFunction</a></b>(timeoutKey, funcToCall, millis, recurring)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.Clock.<b><a href="../symbols/jasmine.Clock.html#.tick">tick</a></b>(millis)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.Clock.<b><a href="../symbols/jasmine.Clock.html#.uninstallMock">uninstallMock</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.Clock.<b><a href="../symbols/jasmine.Clock.html#.useMock">useMock</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
@@ -330,17 +368,15 @@ ul.inheritsList
|
|||||||
|
|
||||||
<div class="details"><a name="constructor"> </a>
|
<div class="details"><a name="constructor"> </a>
|
||||||
<div class="sectionTitle">
|
<div class="sectionTitle">
|
||||||
Class Detail
|
Namespace Detail
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b>jasmine.ActionCollection</b>(env)
|
<b>jasmine.Clock</b>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="description">
|
<div class="description">
|
||||||
base for Runner & Suite: allows for a queue of functions to get executed, allowing for
|
|
||||||
any one action to complete, including asynchronous calls, before going to the next
|
|
||||||
action.
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -348,17 +384,6 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<dl class="detailList">
|
|
||||||
<dt class="heading">Parameters:</dt>
|
|
||||||
|
|
||||||
<dt>
|
|
||||||
<span class="light fixedFont">{<a href="../symbols/jasmine.Env.html">jasmine.Env</a>}</span> <b>env</b>
|
|
||||||
|
|
||||||
</dt>
|
|
||||||
<dd></dd>
|
|
||||||
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -378,15 +403,15 @@ ul.inheritsList
|
|||||||
Method Detail
|
Method Detail
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<a name="execute"> </a>
|
<a name=".assertInstalled"> </a>
|
||||||
<div class="fixedFont">
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
<b>execute</b>()
|
<span class="light">jasmine.Clock.</span><b>assertInstalled</b>()
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="description">
|
<div class="description">
|
||||||
Starts executing the queue of functions/actions.
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -403,15 +428,15 @@ ul.inheritsList
|
|||||||
|
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<a name="finish"> </a>
|
<a name=".installMock"> </a>
|
||||||
<div class="fixedFont">
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
<b>finish</b>()
|
<span class="light">jasmine.Clock.</span><b>installMock</b>()
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="description">
|
<div class="description">
|
||||||
Marks the collection as done & calls the finish callback, if there is one
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -428,15 +453,15 @@ ul.inheritsList
|
|||||||
|
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<a name="getCurrentAction"> </a>
|
<a name=".reset"> </a>
|
||||||
<div class="fixedFont">
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
<b>getCurrentAction</b>()
|
<span class="light">jasmine.Clock.</span><b>reset</b>()
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="description">
|
<div class="description">
|
||||||
Gets the current action.
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -453,15 +478,172 @@ ul.inheritsList
|
|||||||
|
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<a name="next"> </a>
|
<a name=".runFunctionsWithinRange"> </a>
|
||||||
<div class="fixedFont">
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
<b>next</b>()
|
<span class="light">jasmine.Clock.</span><b>runFunctionsWithinRange</b>(oldMillis, nowMillis)
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="description">
|
<div class="description">
|
||||||
Executes the next queued function/action. If there are no more in the queue, calls #finish.
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>oldMillis</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>nowMillis</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".scheduleFunction"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.Clock.</span><b>scheduleFunction</b>(timeoutKey, funcToCall, millis, recurring)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>timeoutKey</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>funcToCall</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>millis</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>recurring</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".tick"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.Clock.</span><b>tick</b>(millis)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>millis</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".uninstallMock"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.Clock.</span><b>uninstallMock</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".useMock"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.Clock.</span><b>useMock</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -490,7 +672,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:18 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_Env.js.html">Env.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.Env.html#constructor">jasmine.Env</a></b>()
|
<b><a href="../symbols/jasmine.Env.html">jasmine.Env</a></b>()
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Environment for Jasmine</div>
|
<div class="description">Environment for Jasmine</div>
|
||||||
</td>
|
</td>
|
||||||
@@ -279,6 +283,15 @@ ul.inheritsList
|
|||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#addEqualityTester">addEqualityTester</a></b>(equalityTester)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription">
|
<td class="nameDescription">
|
||||||
@@ -288,6 +301,150 @@ ul.inheritsList
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#afterEach">afterEach</a></b>(afterEachFunction)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#beforeEach">beforeEach</a></b>(beforeEachFunction)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#compareObjects_">compareObjects_</a></b>(a, b, mismatchKeys, mismatchValues)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#contains_">contains_</a></b>(haystack, needle)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#currentRunner">currentRunner</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#describe">describe</a></b>(description, specDefinitions)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#equals_">equals_</a></b>(a, b, mismatchKeys, mismatchValues)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#execute">execute</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#it">it</a></b>(description, func)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#matchersClass">matchersClass</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#nextSpecId">nextSpecId</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#nextSuiteId">nextSuiteId</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#specFilter">specFilter</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#version">version</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#xdescribe">xdescribe</a></b>(desc, specDefinitions)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Env.html#xit">xit</a></b>(desc, func)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
@@ -336,6 +493,42 @@ ul.inheritsList
|
|||||||
Method Detail
|
Method Detail
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<a name="addEqualityTester"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>addEqualityTester</b>(equalityTester)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>equalityTester</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
<a name="addReporter"> </a>
|
<a name="addReporter"> </a>
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
|
|
||||||
@@ -370,6 +563,592 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="afterEach"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>afterEach</b>(afterEachFunction)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>afterEachFunction</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="beforeEach"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>beforeEach</b>(beforeEachFunction)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>beforeEachFunction</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="compareObjects_"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>compareObjects_</b>(a, b, mismatchKeys, mismatchValues)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>a</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>b</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>mismatchKeys</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>mismatchValues</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="contains_"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>contains_</b>(haystack, needle)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>haystack</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>needle</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="currentRunner"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>currentRunner</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="describe"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>describe</b>(description, specDefinitions)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>description</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>specDefinitions</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="equals_"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>equals_</b>(a, b, mismatchKeys, mismatchValues)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>a</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>b</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>mismatchKeys</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>mismatchValues</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="execute"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>execute</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="it"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>it</b>(description, func)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>description</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>func</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="matchersClass"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>matchersClass</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="nextSpecId"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>nextSpecId</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Returns:</dt>
|
||||||
|
|
||||||
|
<dd>a sequential integer starting at 0</dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="nextSuiteId"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>nextSuiteId</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Returns:</dt>
|
||||||
|
|
||||||
|
<dd>a sequential integer starting at 0</dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="specFilter"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>specFilter</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="version"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>version</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Returns:</dt>
|
||||||
|
|
||||||
|
<dd>an object containing jasmine version build info, if set.</dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="xdescribe"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>xdescribe</b>(desc, specDefinitions)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>desc</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>specDefinitions</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="xit"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>xit</b>(desc, func)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>desc</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>func</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -384,7 +1163,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -0,0 +1,822 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||||
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||||||
|
<meta name="generator" content="JsDoc Toolkit" />
|
||||||
|
|
||||||
|
<title>JsDoc Reference - jasmine.JsApiReporter</title>
|
||||||
|
|
||||||
|
<style type="text/css">
|
||||||
|
/* default.css */
|
||||||
|
body
|
||||||
|
{
|
||||||
|
font: 12px "Lucida Grande", Tahoma, Arial, Helvetica, sans-serif;
|
||||||
|
width: 800px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header
|
||||||
|
{
|
||||||
|
clear: both;
|
||||||
|
background-color: #ccc;
|
||||||
|
padding: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1
|
||||||
|
{
|
||||||
|
font-size: 150%;
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 0;
|
||||||
|
margin: 1em 0 0 .3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr
|
||||||
|
{
|
||||||
|
border: none 0;
|
||||||
|
border-top: 1px solid #7F8FB1;
|
||||||
|
height: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre.code
|
||||||
|
{
|
||||||
|
display: block;
|
||||||
|
padding: 8px;
|
||||||
|
border: 1px dashed #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
#index
|
||||||
|
{
|
||||||
|
margin-top: 24px;
|
||||||
|
float: left;
|
||||||
|
width: 160px;
|
||||||
|
position: absolute;
|
||||||
|
left: 8px;
|
||||||
|
background-color: #F3F3F3;
|
||||||
|
padding: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#content
|
||||||
|
{
|
||||||
|
margin-left: 190px;
|
||||||
|
width: 600px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.classList
|
||||||
|
{
|
||||||
|
list-style-type: none;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0 0 0 8px;
|
||||||
|
font-family: arial, sans-serif;
|
||||||
|
font-size: 1em;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.classList li
|
||||||
|
{
|
||||||
|
padding: 0;
|
||||||
|
margin: 0 0 8px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.summaryTable { width: 100%; }
|
||||||
|
|
||||||
|
h1.classTitle
|
||||||
|
{
|
||||||
|
font-size:170%;
|
||||||
|
line-height:130%;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 { font-size: 110%; }
|
||||||
|
caption, div.sectionTitle
|
||||||
|
{
|
||||||
|
background-color: #7F8FB1;
|
||||||
|
color: #fff;
|
||||||
|
font-size:130%;
|
||||||
|
text-align: left;
|
||||||
|
padding: 2px 6px 2px 6px;
|
||||||
|
border: 1px #7F8FB1 solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sectionTitle { margin-bottom: 8px; }
|
||||||
|
.summaryTable thead { display: none; }
|
||||||
|
|
||||||
|
.summaryTable td
|
||||||
|
{
|
||||||
|
vertical-align: top;
|
||||||
|
padding: 4px;
|
||||||
|
border-bottom: 1px #7F8FB1 solid;
|
||||||
|
border-right: 1px #7F8FB1 solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*col#summaryAttributes {}*/
|
||||||
|
.summaryTable td.attributes
|
||||||
|
{
|
||||||
|
border-left: 1px #7F8FB1 solid;
|
||||||
|
width: 140px;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
td.attributes, .fixedFont
|
||||||
|
{
|
||||||
|
line-height: 15px;
|
||||||
|
color: #002EBE;
|
||||||
|
font-family: "Courier New",Courier,monospace;
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.summaryTable td.nameDescription
|
||||||
|
{
|
||||||
|
text-align: left;
|
||||||
|
font-size: 13px;
|
||||||
|
line-height: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.summaryTable td.nameDescription, .description
|
||||||
|
{
|
||||||
|
line-height: 15px;
|
||||||
|
padding: 4px;
|
||||||
|
padding-left: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.summaryTable { margin-bottom: 8px; }
|
||||||
|
|
||||||
|
ul.inheritsList
|
||||||
|
{
|
||||||
|
list-style: square;
|
||||||
|
margin-left: 20px;
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.detailList {
|
||||||
|
margin-left: 20px;
|
||||||
|
line-height: 15px;
|
||||||
|
}
|
||||||
|
.detailList dt { margin-left: 20px; }
|
||||||
|
|
||||||
|
.detailList .heading
|
||||||
|
{
|
||||||
|
font-weight: bold;
|
||||||
|
padding-bottom: 6px;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.light, td.attributes, .light a:link, .light a:visited
|
||||||
|
{
|
||||||
|
color: #777;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fineprint
|
||||||
|
{
|
||||||
|
text-align: right;
|
||||||
|
font-size: 10px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<!-- ============================== header ================================= -->
|
||||||
|
<!-- begin static/header.html -->
|
||||||
|
<div id="header">
|
||||||
|
</div>
|
||||||
|
<!-- end static/header.html -->
|
||||||
|
|
||||||
|
<!-- ============================== classes index ============================ -->
|
||||||
|
<div id="index">
|
||||||
|
<!-- begin publish.classesIndex -->
|
||||||
|
<div align="center"><a href="../index.html">Class Index</a>
|
||||||
|
| <a href="../files.html">File Index</a></div>
|
||||||
|
<hr />
|
||||||
|
<h2>Classes</h2>
|
||||||
|
<ul class="classList">
|
||||||
|
|
||||||
|
<li><i><a href="../symbols/_global_.html">_global_</a></i></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Spec.html">jasmine.Spec</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Spy.html">jasmine.Spy</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Suite.html">jasmine.Suite</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.util.html">jasmine.util</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<hr />
|
||||||
|
<!-- end publish.classesIndex -->
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="content">
|
||||||
|
<!-- ============================== class title ============================ -->
|
||||||
|
<h1 class="classTitle">
|
||||||
|
|
||||||
|
Class jasmine.JsApiReporter
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<!-- ============================== class summary ========================== -->
|
||||||
|
<p class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_JsApiReporter.js.html">JsApiReporter.js</a>.
|
||||||
|
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<!-- ============================== constructor summary ==================== -->
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class jasmine.JsApiReporter.">
|
||||||
|
<caption>Class Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Constructor Attributes</th>
|
||||||
|
<th scope="col">Constructor Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription" >
|
||||||
|
<div class="fixedFont">
|
||||||
|
<b><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description">JavaScript API reporter.</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ============================== properties summary ===================== -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ============================== methods summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.JsApiReporter.">
|
||||||
|
<caption>Method Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Method Attributes</th>
|
||||||
|
<th scope="col">Method Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#log">log</a></b>(str)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#reportRunnerResults">reportRunnerResults</a></b>(runner)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#reportRunnerStarting">reportRunnerStarting</a></b>(runner)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#reportSpecResults">reportSpecResults</a></b>(spec)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#reportSuiteResults">reportSuiteResults</a></b>(suite)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#results">results</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#resultsForSpec">resultsForSpec</a></b>(specId)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#resultsForSpecs">resultsForSpecs</a></b>(specIds)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#suites">suites</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#summarize_">summarize_</a></b>(suiteOrSpec)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.JsApiReporter.html#summarizeResult_">summarizeResult_</a></b>(result)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ============================== events summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ============================== constructor details ==================== -->
|
||||||
|
|
||||||
|
<div class="details"><a name="constructor"> </a>
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Class Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="fixedFont">
|
||||||
|
<b>jasmine.JsApiReporter</b>()
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="description">
|
||||||
|
JavaScript API reporter.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ============================== field details ========================== -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ============================== method details ========================= -->
|
||||||
|
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Method Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a name="log"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>log</b>(str)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>str</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="reportRunnerResults"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>reportRunnerResults</b>(runner)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>runner</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="reportRunnerStarting"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>reportRunnerStarting</b>(runner)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>runner</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="reportSpecResults"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>reportSpecResults</b>(spec)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>spec</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="reportSuiteResults"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>reportSuiteResults</b>(suite)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>suite</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="results"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>results</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="resultsForSpec"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>resultsForSpec</b>(specId)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>specId</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="resultsForSpecs"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>resultsForSpecs</b>(specIds)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>specIds</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="suites"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>suites</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="summarize_"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>summarize_</b>(suiteOrSpec)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>suiteOrSpec</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="summarizeResult_"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>summarizeResult_</b>(result)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>result</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ============================== event details ========================= -->
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ============================== footer ================================= -->
|
||||||
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_MultiReporter.js.html">MultiReporter.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.MultiReporter.html#constructor">jasmine.MultiReporter</a></b>()
|
<b><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></b>()
|
||||||
</div>
|
</div>
|
||||||
<div class="description"></div>
|
<div class="description"></div>
|
||||||
</td>
|
</td>
|
||||||
@@ -267,6 +271,33 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== methods summary ======================== -->
|
<!-- ============================== methods summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.MultiReporter.">
|
||||||
|
<caption>Method Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Method Attributes</th>
|
||||||
|
<th scope="col">Method Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.MultiReporter.html#addReporter">addReporter</a></b>(reporter)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== events summary ======================== -->
|
<!-- ============================== events summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
@@ -305,6 +336,47 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== method details ========================= -->
|
<!-- ============================== method details ========================= -->
|
||||||
|
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Method Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a name="addReporter"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>addReporter</b>(reporter)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>reporter</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== event details ========================= -->
|
<!-- ============================== event details ========================= -->
|
||||||
|
|
||||||
@@ -316,7 +388,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_NestedResults.js.html">NestedResults.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.NestedResults.html#constructor">jasmine.NestedResults</a></b>()
|
<b><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></b>()
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Holds results for a set of Jasmine spec.</div>
|
<div class="description">Holds results for a set of Jasmine spec.</div>
|
||||||
</td>
|
</td>
|
||||||
@@ -543,7 +547,7 @@ ul.inheritsList
|
|||||||
<dt class="heading">Parameters:</dt>
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<span class="light fixedFont">{jasmine.ExpectationResult|<a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a>}</span> <b>result</b>
|
<span class="light fixedFont">{<a href="../symbols/jasmine.html#.ExpectationResult">jasmine.ExpectationResult</a>|<a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a>}</span> <b>result</b>
|
||||||
|
|
||||||
</dt>
|
</dt>
|
||||||
<dd></dd>
|
<dd></dd>
|
||||||
@@ -700,7 +704,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_Reporter.js.html">Reporter.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.Reporter.html#constructor">jasmine.Reporter</a></b>()
|
<b><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></b>()
|
||||||
</div>
|
</div>
|
||||||
<div class="description">No-op base class for Jasmine reporters.</div>
|
<div class="description">No-op base class for Jasmine reporters.</div>
|
||||||
</td>
|
</td>
|
||||||
@@ -267,6 +271,69 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== methods summary ======================== -->
|
<!-- ============================== methods summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.Reporter.">
|
||||||
|
<caption>Method Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Method Attributes</th>
|
||||||
|
<th scope="col">Method Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Reporter.html#log">log</a></b>(str)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Reporter.html#reportRunnerResults">reportRunnerResults</a></b>(runner)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Reporter.html#reportRunnerStarting">reportRunnerStarting</a></b>(runner)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Reporter.html#reportSpecResults">reportSpecResults</a></b>(spec)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Reporter.html#reportSuiteResults">reportSuiteResults</a></b>(suite)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== events summary ======================== -->
|
<!-- ============================== events summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
@@ -305,6 +372,191 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== method details ========================= -->
|
<!-- ============================== method details ========================= -->
|
||||||
|
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Method Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a name="log"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>log</b>(str)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>str</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="reportRunnerResults"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>reportRunnerResults</b>(runner)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>runner</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="reportRunnerStarting"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>reportRunnerStarting</b>(runner)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>runner</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="reportSpecResults"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>reportSpecResults</b>(spec)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>spec</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="reportSuiteResults"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>reportSuiteResults</b>(suite)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>suite</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== event details ========================= -->
|
<!-- ============================== event details ========================= -->
|
||||||
|
|
||||||
@@ -316,7 +568,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_Runner.js.html">Runner.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.Runner.html#constructor">jasmine.Runner</a></b>(env)
|
<b><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></b>(env)
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Runner</div>
|
<div class="description">Runner</div>
|
||||||
</td>
|
</td>
|
||||||
@@ -267,6 +271,105 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== methods summary ======================== -->
|
<!-- ============================== methods summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.Runner.">
|
||||||
|
<caption>Method Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Method Attributes</th>
|
||||||
|
<th scope="col">Method Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Runner.html#add">add</a></b>(block)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Runner.html#addSuite">addSuite</a></b>(suite)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Runner.html#afterEach">afterEach</a></b>(afterEachFunction)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Runner.html#beforeEach">beforeEach</a></b>(beforeEachFunction)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Runner.html#execute">execute</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Runner.html#finishCallback">finishCallback</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Runner.html#results">results</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Runner.html#specs">specs</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Runner.html#suites">suites</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== events summary ======================== -->
|
<!-- ============================== events summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
@@ -316,6 +419,280 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== method details ========================= -->
|
<!-- ============================== method details ========================= -->
|
||||||
|
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Method Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a name="add"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>add</b>(block)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>block</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="addSuite"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>addSuite</b>(suite)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>suite</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="afterEach"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>afterEach</b>(afterEachFunction)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>afterEachFunction</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="beforeEach"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>beforeEach</b>(beforeEachFunction)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>beforeEachFunction</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="execute"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>execute</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="finishCallback"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>finishCallback</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="results"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>results</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="specs"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>specs</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="suites"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>suites</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== event details ========================= -->
|
<!-- ============================== event details ========================= -->
|
||||||
|
|
||||||
@@ -327,7 +704,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_Spec.js.html">Spec.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.Spec.html#constructor">jasmine.Spec</a></b>(env, suite, description)
|
<b><a href="../symbols/jasmine.Spec.html">jasmine.Spec</a></b>(env, suite, description)
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Internal representation of a Jasmine specification, or test.</div>
|
<div class="description">Internal representation of a Jasmine specification, or test.</div>
|
||||||
</td>
|
</td>
|
||||||
@@ -267,6 +271,213 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== methods summary ======================== -->
|
<!-- ============================== methods summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.Spec.">
|
||||||
|
<caption>Method Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Method Attributes</th>
|
||||||
|
<th scope="col">Method Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#addBeforesAndAftersToQueue">addBeforesAndAftersToQueue</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#addMatcherResult">addMatcherResult</a></b>(result)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#addMatchers">addMatchers</a></b>(matchersPrototype)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#addToQueue">addToQueue</a></b>(block)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#after">after</a></b>(doAfter, test)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#execute">execute</a></b>(onComplete)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#expect">expect</a></b>(actual)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#explodes">explodes</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#fail">fail</a></b>(e)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#finish">finish</a></b>(onComplete)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#finishCallback">finishCallback</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#getFullName">getFullName</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#getMatchersClass_">getMatchersClass_</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#getResults">getResults</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#log">log</a></b>(message)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#removeAllSpies">removeAllSpies</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#results">results</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#runs">runs</a></b>(func)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#spyOn">spyOn</a></b>(obj, methodName, ignoreMethodDoesntExist)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#waits">waits</a></b>(timeout)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spec.html#waitsFor">waitsFor</a></b>(timeout, latchFunction, timeoutMessage)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== events summary ======================== -->
|
<!-- ============================== events summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
@@ -328,6 +539,709 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== method details ========================= -->
|
<!-- ============================== method details ========================= -->
|
||||||
|
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Method Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a name="addBeforesAndAftersToQueue"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>addBeforesAndAftersToQueue</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="addMatcherResult"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>addMatcherResult</b>(result)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>result</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="addMatchers"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>addMatchers</b>(matchersPrototype)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>matchersPrototype</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="addToQueue"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>addToQueue</b>(block)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>block</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="after"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>after</b>(doAfter, test)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>doAfter</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>test</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="execute"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>execute</b>(onComplete)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>onComplete</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="expect"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>expect</b>(actual)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>actual</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="explodes"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>explodes</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="fail"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>fail</b>(e)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>e</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="finish"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>finish</b>(onComplete)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>onComplete</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="finishCallback"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>finishCallback</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="getFullName"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>getFullName</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="getMatchersClass_"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>getMatchersClass_</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="getResults"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>getResults</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="log"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>log</b>(message)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>message</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="removeAllSpies"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>removeAllSpies</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="results"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>results</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="runs"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>runs</b>(func)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>func</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="spyOn"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>spyOn</b>(obj, methodName, ignoreMethodDoesntExist)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>obj</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>methodName</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>ignoreMethodDoesntExist</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="waits"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>waits</b>(timeout)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>timeout</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="waitsFor"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>waitsFor</b>(timeout, latchFunction, timeoutMessage)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>timeout</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>latchFunction</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>timeoutMessage</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== event details ========================= -->
|
<!-- ============================== event details ========================= -->
|
||||||
|
|
||||||
@@ -339,7 +1253,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.Spy.html#constructor">jasmine.Spy</a></b>(name)
|
<b><a href="../symbols/jasmine.Spy.html">jasmine.Spy</a></b>(name)
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Jasmine Spies are test doubles that can act as stubs, spies, fakes or when used in an expecation, mocks.</div>
|
<div class="description">Jasmine Spies are test doubles that can act as stubs, spies, fakes or when used in an expecation, mocks.</div>
|
||||||
</td>
|
</td>
|
||||||
@@ -378,7 +382,7 @@ ul.inheritsList
|
|||||||
<td class="nameDescription">
|
<td class="nameDescription">
|
||||||
<div class="fixedFont"><b><a href="../symbols/jasmine.Spy.html#plan">plan</a></b>()
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Spy.html#plan">plan</a></b>()
|
||||||
</div>
|
</div>
|
||||||
<div class="description">The acutal function this spy stubs.</div>
|
<div class="description">The actual function this spy stubs.</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
@@ -779,7 +783,7 @@ spyOn(foo, 'bar').andThrow('baz');</pre>
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="description">
|
<div class="description">
|
||||||
The acutal function this spy stubs.
|
The actual function this spy stubs.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -845,7 +849,7 @@ expect(foo.bar.callCount).toEqual(0);</pre>
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_Suite.js.html">Suite.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.Suite.html#constructor">jasmine.Suite</a></b>(env, description, specDefinitions, parentSuite)
|
<b><a href="../symbols/jasmine.Suite.html">jasmine.Suite</a></b>(env, description, specDefinitions, parentSuite)
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Internal representation of a Jasmine suite.</div>
|
<div class="description">Internal representation of a Jasmine suite.</div>
|
||||||
</td>
|
</td>
|
||||||
@@ -267,6 +271,96 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== methods summary ======================== -->
|
<!-- ============================== methods summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.Suite.">
|
||||||
|
<caption>Method Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Method Attributes</th>
|
||||||
|
<th scope="col">Method Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Suite.html#add">add</a></b>(block)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Suite.html#afterEach">afterEach</a></b>(afterEachFunction)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Suite.html#beforeEach">beforeEach</a></b>(beforeEachFunction)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Suite.html#execute">execute</a></b>(onComplete)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Suite.html#finish">finish</a></b>(onComplete)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Suite.html#getFullName">getFullName</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Suite.html#results">results</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont"><b><a href="../symbols/jasmine.Suite.html#specs">specs</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== events summary ======================== -->
|
<!-- ============================== events summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
@@ -334,6 +428,266 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== method details ========================= -->
|
<!-- ============================== method details ========================= -->
|
||||||
|
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Method Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a name="add"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>add</b>(block)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>block</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="afterEach"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>afterEach</b>(afterEachFunction)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>afterEachFunction</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="beforeEach"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>beforeEach</b>(beforeEachFunction)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>beforeEachFunction</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="execute"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>execute</b>(onComplete)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>onComplete</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="finish"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>finish</b>(onComplete)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>onComplete</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="getFullName"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>getFullName</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="results"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>results</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name="specs"> </a>
|
||||||
|
<div class="fixedFont">
|
||||||
|
|
||||||
|
|
||||||
|
<b>specs</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== event details ========================= -->
|
<!-- ============================== event details ========================= -->
|
||||||
|
|
||||||
@@ -345,7 +699,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+667
-6
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_base.js.html">base.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.html#constructor">jasmine</a></b>
|
<b><a href="../symbols/jasmine.html">jasmine</a></b>
|
||||||
</div>
|
</div>
|
||||||
<div class="description">Top level namespace for Jasmine, a lightweight JavaScript BDD/spec/testing framework.</div>
|
<div class="description">Top level namespace for Jasmine, a lightweight JavaScript BDD/spec/testing framework.</div>
|
||||||
</td>
|
</td>
|
||||||
@@ -266,6 +270,50 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the fields documented in the class jasmine.">
|
||||||
|
<caption>Field Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Field Attributes</th>
|
||||||
|
<th scope="col">Field Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">
|
||||||
|
jasmine.<b><a href="../symbols/jasmine.html#.DEFAULT_UPDATE_INTERVAL">DEFAULT_UPDATE_INTERVAL</a></b>
|
||||||
|
</div>
|
||||||
|
<div class="description">Default interval for event loop yields.</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">
|
||||||
|
jasmine.<b><a href="../symbols/jasmine.html#.details">details</a></b>
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">
|
||||||
|
jasmine.<b><a href="../symbols/jasmine.html#.Reporters">Reporters</a></b>
|
||||||
|
</div>
|
||||||
|
<div class="description">JasmineReporters.reporter
|
||||||
|
Base object that will get called whenever a Spec, Suite, or Runner is done.</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -293,6 +341,15 @@ ul.inheritsList
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.createSpy">createSpy</a></b>(name)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="attributes"><static> </td>
|
<td class="attributes"><static> </td>
|
||||||
<td class="nameDescription">
|
<td class="nameDescription">
|
||||||
@@ -302,6 +359,24 @@ ul.inheritsList
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.ExpectationResult">ExpectationResult</a></b>(params)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.FakeTimer">FakeTimer</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="attributes"><static> </td>
|
<td class="attributes"><static> </td>
|
||||||
<td class="nameDescription">
|
<td class="nameDescription">
|
||||||
@@ -330,6 +405,33 @@ Jasmine environment.</div>
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.isSpy">isSpy</a></b>(putativeSpy)
|
||||||
|
</div>
|
||||||
|
<div class="description">Determines whether an object is a spy.</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.log">log</a></b>(message)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.MessageResult">MessageResult</a></b>(text)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="attributes"><static> </td>
|
<td class="attributes"><static> </td>
|
||||||
<td class="nameDescription">
|
<td class="nameDescription">
|
||||||
@@ -348,6 +450,51 @@ Jasmine environment.</div>
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.Queue">Queue</a></b>(env)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.StringPrettyPrinter">StringPrettyPrinter</a></b>()
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.TrivialReporter">TrivialReporter</a></b>(doc)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.WaitsBlock">WaitsBlock</a></b>(env, timeout, spec)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.<b><a href="../symbols/jasmine.html#.WaitsForBlock">WaitsForBlock</a></b>(env, timeout, latchFunction, message, spec)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
@@ -389,6 +536,82 @@ Jasmine environment.</div>
|
|||||||
|
|
||||||
<!-- ============================== field details ========================== -->
|
<!-- ============================== field details ========================== -->
|
||||||
|
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Field Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a name=".DEFAULT_UPDATE_INTERVAL"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>DEFAULT_UPDATE_INTERVAL</b>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
Default interval for event loop yields. Small values here may result in slow test running. Zero means no updates until all tests have completed.
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".details"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>details</b>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".Reporters"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>Reporters</b>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
JasmineReporters.reporter
|
||||||
|
Base object that will get called whenever a Spec, Suite, or Runner is done. It is up to
|
||||||
|
descendants of this object to do something with the results (see json_reporter.js)
|
||||||
|
|
||||||
|
<br />
|
||||||
|
<i>Defined in: </i> <a href="../symbols/src/src_Reporters.js.html">Reporters.js</a>.
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== method details ========================= -->
|
<!-- ============================== method details ========================= -->
|
||||||
|
|
||||||
@@ -442,6 +665,42 @@ expect(mySpy).wasCalledWith(jasmine.any(Function));</pre>
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".createSpy"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>createSpy</b>(name)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>name</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<a name=".createSpyObj"> </a>
|
<a name=".createSpyObj"> </a>
|
||||||
@@ -485,6 +744,70 @@ large in one call.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".ExpectationResult"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>ExpectationResult</b>(params)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>params</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".FakeTimer"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>FakeTimer</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
<br />
|
||||||
|
<i>Defined in: </i> <a href="../symbols/src/src_mock-timeout.js.html">mock-timeout.js</a>.
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<a name=".getEnv"> </a>
|
<a name=".getEnv"> </a>
|
||||||
@@ -596,6 +919,121 @@ Jasmine environment.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".isSpy"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
<span class="light">{Boolean}</span>
|
||||||
|
<span class="light">jasmine.</span><b>isSpy</b>(putativeSpy)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
Determines whether an object is a spy.
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<span class="light fixedFont">{<a href="../symbols/jasmine.Spy.html">jasmine.Spy</a>|Object}</span> <b>putativeSpy</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Returns:</dt>
|
||||||
|
|
||||||
|
<dd><span class="light fixedFont">{Boolean}</span> </dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".log"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>log</b>(message)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>message</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".MessageResult"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>MessageResult</b>(text)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>text</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<a name=".pp"> </a>
|
<a name=".pp"> </a>
|
||||||
@@ -651,6 +1089,9 @@ Jasmine environment.
|
|||||||
<div class="description">
|
<div class="description">
|
||||||
Base class for pretty printing for expectation results.
|
Base class for pretty printing for expectation results.
|
||||||
|
|
||||||
|
<br />
|
||||||
|
<i>Defined in: </i> <a href="../symbols/src/src_PrettyPrinter.js.html">PrettyPrinter.js</a>.
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -664,6 +1105,226 @@ Jasmine environment.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".Queue"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>Queue</b>(env)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
<br />
|
||||||
|
<i>Defined in: </i> <a href="../symbols/src/src_Queue.js.html">Queue.js</a>.
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>env</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".StringPrettyPrinter"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>StringPrettyPrinter</b>()
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
<br />
|
||||||
|
<i>Defined in: </i> <a href="../symbols/src/src_PrettyPrinter.js.html">PrettyPrinter.js</a>.
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".TrivialReporter"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>TrivialReporter</b>(doc)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
<br />
|
||||||
|
<i>Defined in: </i> <a href="../symbols/src/lib_TrivialReporter.js.html">TrivialReporter.js</a>.
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>doc</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".WaitsBlock"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>WaitsBlock</b>(env, timeout, spec)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
<br />
|
||||||
|
<i>Defined in: </i> <a href="../symbols/src/src_WaitsBlock.js.html">WaitsBlock.js</a>.
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>env</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>timeout</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>spec</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".WaitsForBlock"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.</span><b>WaitsForBlock</b>(env, timeout, latchFunction, message, spec)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
<br />
|
||||||
|
<i>Defined in: </i> <a href="../symbols/src/src_WaitsForBlock.js.html">WaitsForBlock.js</a>.
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>env</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>timeout</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>latchFunction</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>message</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>spec</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -678,7 +1339,7 @@ Jasmine environment.
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:18 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:21 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -193,16 +193,20 @@ ul.inheritsList
|
|||||||
|
|
||||||
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
<li><a href="../symbols/jasmine.html">jasmine</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.ActionCollection.html">jasmine.ActionCollection</a></li>
|
<li><a href="../symbols/jasmine.Block.html">jasmine.Block</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Clock.html">jasmine.Clock</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
<li><a href="../symbols/jasmine.Env.html">jasmine.Env</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.JsApiReporter.html">jasmine.JsApiReporter</a></li>
|
||||||
|
|
||||||
|
<li><a href="../symbols/jasmine.Matchers.html">jasmine.Matchers</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
<li><a href="../symbols/jasmine.MultiReporter.html">jasmine.MultiReporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
<li><a href="../symbols/jasmine.NestedResults.html">jasmine.NestedResults</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.QueuedFunction.html">jasmine.QueuedFunction</a></li>
|
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
<li><a href="../symbols/jasmine.Reporter.html">jasmine.Reporter</a></li>
|
||||||
|
|
||||||
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
<li><a href="../symbols/jasmine.Runner.html">jasmine.Runner</a></li>
|
||||||
@@ -234,7 +238,7 @@ ul.inheritsList
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br /><i>Defined in: </i> <a href="../symbols/src/lib_jasmine.js.html">jasmine.js</a>.
|
<br /><i>Defined in: </i> <a href="../symbols/src/src_util.js.html">util.js</a>.
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -253,7 +257,7 @@ ul.inheritsList
|
|||||||
<td class="attributes"> </td>
|
<td class="attributes"> </td>
|
||||||
<td class="nameDescription" >
|
<td class="nameDescription" >
|
||||||
<div class="fixedFont">
|
<div class="fixedFont">
|
||||||
<b><a href="../symbols/jasmine.util.html#constructor">jasmine.util</a></b>
|
<b><a href="../symbols/jasmine.util.html">jasmine.util</a></b>
|
||||||
</div>
|
</div>
|
||||||
<div class="description"></div>
|
<div class="description"></div>
|
||||||
</td>
|
</td>
|
||||||
@@ -267,6 +271,60 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== methods summary ======================== -->
|
<!-- ============================== methods summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class jasmine.util.">
|
||||||
|
<caption>Method Summary</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Method Attributes</th>
|
||||||
|
<th scope="col">Method Name and Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.util.<b><a href="../symbols/jasmine.util.html#.argsToArray">argsToArray</a></b>(args)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.util.<b><a href="../symbols/jasmine.util.html#.extend">extend</a></b>(destination, source)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.util.<b><a href="../symbols/jasmine.util.html#.formatException">formatException</a></b>(e)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="attributes"><static> </td>
|
||||||
|
<td class="nameDescription">
|
||||||
|
<div class="fixedFont">jasmine.util.<b><a href="../symbols/jasmine.util.html#.htmlEscape">htmlEscape</a></b>(str)
|
||||||
|
</div>
|
||||||
|
<div class="description"></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== events summary ======================== -->
|
<!-- ============================== events summary ======================== -->
|
||||||
|
|
||||||
|
|
||||||
@@ -305,6 +363,161 @@ ul.inheritsList
|
|||||||
|
|
||||||
<!-- ============================== method details ========================= -->
|
<!-- ============================== method details ========================= -->
|
||||||
|
|
||||||
|
<div class="sectionTitle">
|
||||||
|
Method Detail
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a name=".argsToArray"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.util.</span><b>argsToArray</b>(args)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>args</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".extend"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.util.</span><b>extend</b>(destination, source)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>destination</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>source</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".formatException"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.util.</span><b>formatException</b>(e)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>e</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<a name=".htmlEscape"> </a>
|
||||||
|
<div class="fixedFont"><static>
|
||||||
|
|
||||||
|
|
||||||
|
<span class="light">jasmine.util.</span><b>htmlEscape</b>(str)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="description">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<dl class="detailList">
|
||||||
|
<dt class="heading">Parameters:</dt>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<b>str</b>
|
||||||
|
|
||||||
|
</dt>
|
||||||
|
<dd></dd>
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ============================== event details ========================= -->
|
<!-- ============================== event details ========================= -->
|
||||||
|
|
||||||
@@ -316,7 +529,7 @@ ul.inheritsList
|
|||||||
<!-- ============================== footer ================================= -->
|
<!-- ============================== footer ================================= -->
|
||||||
<div class="fineprint" style="clear:both">
|
<div class="fineprint" style="clear:both">
|
||||||
|
|
||||||
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.0 on Thu Jul 09 2009 21:42:19 GMT-0700 (PDT)
|
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.1.0 on Sat Jan 23 2010 13:48:22 GMT-0800 (PST)
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -0,0 +1,124 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="NAME">jasmine.TrivialReporter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">doc</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 2</span> </span><span class="WHIT"> </span><span class="NAME">this.document</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">doc</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">document</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 3</span> </span><span class="WHIT"> </span><span class="NAME">this.suiteDivs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 4</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span>
|
||||||
|
<span class='line'> 6</span> </span><span class="NAME">jasmine.TrivialReporter.prototype.createDom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">type</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">childrenVarArgs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">document.createElement</span><span class="PUNC">(</span><span class="NAME">type</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span>
|
||||||
|
<span class='line'> 9</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">arguments.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">child</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span>
|
||||||
|
<span class='line'> 12</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">child</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="WHIT"> </span><span class="NAME">el.appendChild</span><span class="PUNC">(</span><span class="NAME">document.createTextNode</span><span class="PUNC">(</span><span class="NAME">child</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">child</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">el.appendChild</span><span class="PUNC">(</span><span class="NAME">child</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span>
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">[</span><span class="NAME">attr</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">[</span><span class="NAME">attr</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span>
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span>
|
||||||
|
<span class='line'> 26</span> </span><span class="NAME">jasmine.TrivialReporter.prototype.reportRunnerStarting</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">runner</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">suites</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">runner.suites</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span>
|
||||||
|
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="NAME">this.runnerDiv</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'div'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'runner running'</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span> </span><span class="WHIT"> </span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'a'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'run_spec'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">href</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'?'</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"run all"</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span> </span><span class="WHIT"> </span><span class="NAME">this.runnerMessageSpan</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'span'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Running..."</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="NAME">this.document.body.appendChild</span><span class="PUNC">(</span><span class="NAME">this.runnerDiv</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span>
|
||||||
|
<span class='line'> 34</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">suites.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suites</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">suiteDiv</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'div'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'suite'</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'a'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'run_spec'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">href</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'?spec='</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">encodeURIComponent</span><span class="PUNC">(</span><span class="NAME">suite.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"run"</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'a'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'description'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">href</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'?spec='</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">encodeURIComponent</span><span class="PUNC">(</span><span class="NAME">suite.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">suite.description</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="NAME">this.suiteDivs</span><span class="PUNC">[</span><span class="NAME">suite.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suiteDiv</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parentDiv</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.document.body</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">suite.parentSuite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span> </span><span class="WHIT"> </span><span class="NAME">parentDiv</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.suiteDivs</span><span class="PUNC">[</span><span class="NAME">suite.parentSuite.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="WHIT"> </span><span class="NAME">parentDiv.appendChild</span><span class="PUNC">(</span><span class="NAME">suiteDiv</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span>
|
||||||
|
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="NAME">this.startedAt</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Date</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 49</span>
|
||||||
|
<span class='line'> 50</span> </span><span class="NAME">jasmine.TrivialReporter.prototype.reportRunnerResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">runner</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">runner.results</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">results.failedCount</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">"runner failed"</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"runner passed"</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="WHIT"> </span><span class="NAME">this.runnerDiv.setAttribute</span><span class="PUNC">(</span><span class="STRN">"class"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="COMM">//do it twice for IE</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span> </span><span class="WHIT"> </span><span class="NAME">this.runnerDiv.setAttribute</span><span class="PUNC">(</span><span class="STRN">"className"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">specs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">runner.specs</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">specCount</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">specs.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.specFilter</span><span class="PUNC">(</span><span class="NAME">specs</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="NAME">specCount</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">specCount</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" spec"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">specCount</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">""</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"s"</span><span class="WHIT"> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">", "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">results.failedCount</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" failure"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">results.failedCount</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">""</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"s"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">" in "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Date</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getTime</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this.startedAt.getTime</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NUMB">1000</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"s"</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span> </span><span class="WHIT"> </span><span class="NAME">this.runnerMessageSpan.replaceChild</span><span class="PUNC">(</span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'a'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'description'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">href</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'?'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.runnerMessageSpan.firstChild</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span>
|
||||||
|
<span class='line'> 68</span> </span><span class="NAME">jasmine.TrivialReporter.prototype.reportSuiteResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suite.results</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 70</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">status</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">results.passed</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">'passed'</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'failed'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 71</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">results.totalCount</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="COMM">// todo: change this to check results.skipped</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span> </span><span class="WHIT"> </span><span class="NAME">status</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'skipped'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 73</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 74</span> </span><span class="WHIT"> </span><span class="NAME">this.suiteDivs</span><span class="PUNC">[</span><span class="NAME">suite.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">className</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">" "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">status</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 75</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 76</span>
|
||||||
|
<span class='line'> 77</span> </span><span class="NAME">jasmine.TrivialReporter.prototype.reportSpecResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">spec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 78</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">spec.results</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 79</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">status</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">results.passed</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">'passed'</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'failed'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 80</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">results.skipped</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 81</span> </span><span class="WHIT"> </span><span class="NAME">status</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'skipped'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 82</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 83</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">specDiv</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'div'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'spec '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">status</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 84</span> </span><span class="WHIT"> </span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'a'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'run_spec'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">href</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'?spec='</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">encodeURIComponent</span><span class="PUNC">(</span><span class="NAME">spec.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"run"</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 85</span> </span><span class="WHIT"> </span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'a'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'description'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">href</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'?spec='</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">encodeURIComponent</span><span class="PUNC">(</span><span class="NAME">spec.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">spec.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 86</span>
|
||||||
|
<span class='line'> 87</span>
|
||||||
|
<span class='line'> 88</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">resultItems</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">results.getItems</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 89</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">resultItems.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 90</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">resultItems</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 91</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">result.passed</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">result.passed</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 92</span> </span><span class="WHIT"> </span><span class="NAME">specDiv.appendChild</span><span class="PUNC">(</span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'div'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'resultMessage fail'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">result.message</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 93</span> </span><span class="WHIT"> </span><span class="NAME">specDiv.appendChild</span><span class="PUNC">(</span><span class="NAME">this.createDom</span><span class="PUNC">(</span><span class="STRN">'div'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">className</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'stackTrace'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">result.trace.stack</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 94</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 95</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 96</span> </span><span class="WHIT"> </span><span class="NAME">this.suiteDivs</span><span class="PUNC">[</span><span class="NAME">spec.suite.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">appendChild</span><span class="PUNC">(</span><span class="NAME">specDiv</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 97</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 98</span>
|
||||||
|
<span class='line'> 99</span> </span><span class="NAME">jasmine.TrivialReporter.prototype.log</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>100</span> </span><span class="WHIT"> </span><span class="NAME">console.log.apply</span><span class="PUNC">(</span><span class="NAME">console</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>101</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>102</span>
|
||||||
|
<span class='line'>103</span> </span><span class="NAME">jasmine.TrivialReporter.prototype.getLocation</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>104</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.document.location</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>105</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>106</span>
|
||||||
|
<span class='line'>107</span> </span><span class="NAME">jasmine.TrivialReporter.prototype.specFilter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">spec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>108</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">paramMap</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>109</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">params</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getLocation</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">search.substring</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">split</span><span class="PUNC">(</span><span class="STRN">'&'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>110</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">params.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>111</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">p</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">params</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">split</span><span class="PUNC">(</span><span class="STRN">'='</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>112</span> </span><span class="WHIT"> </span><span class="NAME">paramMap</span><span class="PUNC">[</span><span class="NAME">decodeURIComponent</span><span class="PUNC">(</span><span class="NAME">p</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">decodeURIComponent</span><span class="PUNC">(</span><span class="NAME">p</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>113</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>114</span>
|
||||||
|
<span class='line'>115</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">paramMap</span><span class="PUNC">[</span><span class="STRN">"spec"</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>116</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">spec.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">indexOf</span><span class="PUNC">(</span><span class="NAME">paramMap</span><span class="PUNC">[</span><span class="STRN">"spec"</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>117</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,29 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * Blocks are functions with executable code that make up a spec.
|
||||||
|
<span class='line'> 3</span> *
|
||||||
|
<span class='line'> 4</span> * @constructor
|
||||||
|
<span class='line'> 5</span> * @param {jasmine.Env} env
|
||||||
|
<span class='line'> 6</span> * @param {Function} func
|
||||||
|
<span class='line'> 7</span> * @param {jasmine.Spec} spec
|
||||||
|
<span class='line'> 8</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 9</span> </span><span class="NAME">jasmine.Block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="NAME">this.env</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">env</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="WHIT"> </span><span class="NAME">this.func</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span> </span><span class="WHIT"> </span><span class="NAME">this.spec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span>
|
||||||
|
<span class='line'> 15</span> </span><span class="NAME">jasmine.Block.prototype.execute</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="NAME">this.func.apply</span><span class="PUNC">(</span><span class="NAME">this.spec</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="NAME">this.spec.fail</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="NAME">onComplete</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|
||||||
@@ -0,0 +1,240 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * Environment for Jasmine
|
||||||
|
<span class='line'> 3</span> *
|
||||||
|
<span class='line'> 4</span> * @constructor
|
||||||
|
<span class='line'> 5</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span> </span><span class="NAME">jasmine.Env</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="WHIT"> </span><span class="NAME">this.currentSpec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span> </span><span class="WHIT"> </span><span class="NAME">this.currentSuite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 9</span> </span><span class="WHIT"> </span><span class="NAME">this.currentRunner_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Runner</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span>
|
||||||
|
<span class='line'> 11</span> </span><span class="WHIT"> </span><span class="NAME">this.reporter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.MultiReporter</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span>
|
||||||
|
<span class='line'> 13</span> </span><span class="WHIT"> </span><span class="NAME">this.updateInterval</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.DEFAULT_UPDATE_INTERVAL</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="NAME">this.lastUpdate</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="NAME">this.specFilter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span>
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="NAME">this.nextSpecId_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="NAME">this.nextSuiteId_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="NAME">this.equalityTesters_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span>
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="COMM">// wrap matchers</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="NAME">this.matchersClass</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.util.inherit</span><span class="PUNC">(</span><span class="NAME">this.matchersClass</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span>
|
||||||
|
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.wrapInto_</span><span class="PUNC">(</span><span class="NAME">jasmine.Matchers.prototype</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.matchersClass</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span>
|
||||||
|
<span class='line'> 32</span>
|
||||||
|
<span class='line'> 33</span> </span><span class="NAME">jasmine.Env.prototype.setTimeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.setTimeout</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="NAME">jasmine.Env.prototype.clearTimeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.clearTimeout</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="NAME">jasmine.Env.prototype.setInterval</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.setInterval</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="NAME">jasmine.Env.prototype.clearInterval</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.clearInterval</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span>
|
||||||
|
<span class='line'> 38</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 39</span> * @returns an object containing jasmine version build info, if set.
|
||||||
|
<span class='line'> 40</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span> </span><span class="NAME">jasmine.Env.prototype.version</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.version_</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.version_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'Version not set'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span>
|
||||||
|
<span class='line'> 49</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 50</span> * @returns a sequential integer starting at 0
|
||||||
|
<span class='line'> 51</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="NAME">jasmine.Env.prototype.nextSpecId</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.nextSpecId_</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span>
|
||||||
|
<span class='line'> 56</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 57</span> * @returns a sequential integer starting at 0
|
||||||
|
<span class='line'> 58</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="NAME">jasmine.Env.prototype.nextSuiteId</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.nextSuiteId_</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span>
|
||||||
|
<span class='line'> 63</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 64</span> * Register a reporter to receive status updates from Jasmine.
|
||||||
|
<span class='line'> 65</span> * @param {jasmine.Reporter} reporter An object which will receive status updates.
|
||||||
|
<span class='line'> 66</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span> </span><span class="NAME">jasmine.Env.prototype.addReporter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">reporter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="WHIT"> </span><span class="NAME">this.reporter.addReporter</span><span class="PUNC">(</span><span class="NAME">reporter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 70</span>
|
||||||
|
<span class='line'> 71</span> </span><span class="NAME">jasmine.Env.prototype.execute</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span> </span><span class="WHIT"> </span><span class="NAME">this.currentRunner_.execute</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 73</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 74</span>
|
||||||
|
<span class='line'> 75</span> </span><span class="NAME">jasmine.Env.prototype.describe</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">description</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">specDefinitions</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 76</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Suite</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">description</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">specDefinitions</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.currentSuite</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 77</span>
|
||||||
|
<span class='line'> 78</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parentSuite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.currentSuite</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 79</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">parentSuite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 80</span> </span><span class="WHIT"> </span><span class="NAME">parentSuite.add</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 81</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 82</span> </span><span class="WHIT"> </span><span class="NAME">this.currentRunner_.add</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 83</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 84</span>
|
||||||
|
<span class='line'> 85</span> </span><span class="WHIT"> </span><span class="NAME">this.currentSuite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 86</span>
|
||||||
|
<span class='line'> 87</span> </span><span class="WHIT"> </span><span class="NAME">specDefinitions.call</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 88</span>
|
||||||
|
<span class='line'> 89</span> </span><span class="WHIT"> </span><span class="NAME">this.currentSuite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parentSuite</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 90</span>
|
||||||
|
<span class='line'> 91</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 92</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 93</span>
|
||||||
|
<span class='line'> 94</span> </span><span class="NAME">jasmine.Env.prototype.beforeEach</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">beforeEachFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 95</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.currentSuite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 96</span> </span><span class="WHIT"> </span><span class="NAME">this.currentSuite.beforeEach</span><span class="PUNC">(</span><span class="NAME">beforeEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 97</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 98</span> </span><span class="WHIT"> </span><span class="NAME">this.currentRunner_.beforeEach</span><span class="PUNC">(</span><span class="NAME">beforeEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 99</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>100</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>101</span>
|
||||||
|
<span class='line'>102</span> </span><span class="NAME">jasmine.Env.prototype.currentRunner</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>103</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.currentRunner_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>104</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>105</span>
|
||||||
|
<span class='line'>106</span> </span><span class="NAME">jasmine.Env.prototype.afterEach</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">afterEachFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>107</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.currentSuite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>108</span> </span><span class="WHIT"> </span><span class="NAME">this.currentSuite.afterEach</span><span class="PUNC">(</span><span class="NAME">afterEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>109</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>110</span> </span><span class="WHIT"> </span><span class="NAME">this.currentRunner_.afterEach</span><span class="PUNC">(</span><span class="NAME">afterEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>111</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>112</span>
|
||||||
|
<span class='line'>113</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>114</span>
|
||||||
|
<span class='line'>115</span> </span><span class="NAME">jasmine.Env.prototype.xdescribe</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">desc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">specDefinitions</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>116</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>117</span> </span><span class="WHIT"> </span><span class="NAME">execute</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>118</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>119</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>120</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>121</span>
|
||||||
|
<span class='line'>122</span> </span><span class="NAME">jasmine.Env.prototype.it</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">description</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>123</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Spec</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.currentSuite</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">description</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>124</span> </span><span class="WHIT"> </span><span class="NAME">this.currentSuite.add</span><span class="PUNC">(</span><span class="NAME">spec</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>125</span> </span><span class="WHIT"> </span><span class="NAME">this.currentSpec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>126</span>
|
||||||
|
<span class='line'>127</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">func</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>128</span> </span><span class="WHIT"> </span><span class="NAME">spec.runs</span><span class="PUNC">(</span><span class="NAME">func</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>129</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>130</span>
|
||||||
|
<span class='line'>131</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>132</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>133</span>
|
||||||
|
<span class='line'>134</span> </span><span class="NAME">jasmine.Env.prototype.xit</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">desc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>135</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>136</span> </span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.nextSpecId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>137</span> </span><span class="WHIT"> </span><span class="NAME">runs</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>138</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>139</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>140</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>141</span>
|
||||||
|
<span class='line'>142</span> </span><span class="NAME">jasmine.Env.prototype.compareObjects_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchKeys</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchValues</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>143</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">a.__Jasmine_been_here_before__</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">b</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">b.__Jasmine_been_here_before__</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">a</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>144</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>145</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>146</span>
|
||||||
|
<span class='line'>147</span> </span><span class="WHIT"> </span><span class="NAME">a.__Jasmine_been_here_before__</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>148</span> </span><span class="WHIT"> </span><span class="NAME">b.__Jasmine_been_here_before__</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">a</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>149</span>
|
||||||
|
<span class='line'>150</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">hasKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">obj</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">keyName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>151</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">[</span><span class="NAME">keyName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>152</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>153</span>
|
||||||
|
<span class='line'>154</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">property</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>155</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">hasKey</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">property</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">hasKey</span><span class="PUNC">(</span><span class="NAME">b</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">property</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>156</span> </span><span class="WHIT"> </span><span class="NAME">mismatchKeys.push</span><span class="PUNC">(</span><span class="STRN">"expected has key '"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">property</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"', but missing from actual."</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>157</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>158</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>159</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">property</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">a</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>160</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">hasKey</span><span class="PUNC">(</span><span class="NAME">b</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">property</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">hasKey</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">property</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>161</span> </span><span class="WHIT"> </span><span class="NAME">mismatchKeys.push</span><span class="PUNC">(</span><span class="STRN">"expected missing key '"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">property</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"', but present in actual."</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>162</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>163</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>164</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">property</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>165</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">property</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'__Jasmine_been_here_before__'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">continue</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>166</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.equals_</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchKeys</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchValues</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>167</span> </span><span class="WHIT"> </span><span class="NAME">mismatchValues.push</span><span class="PUNC">(</span><span class="STRN">"'"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">property</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"' was '"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">b</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">jasmine.util.htmlEscape</span><span class="PUNC">(</span><span class="NAME">b</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">toString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"' in expected, but was '"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">jasmine.util.htmlEscape</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">toString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">a</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"' in actual."</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>168</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>169</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>170</span>
|
||||||
|
<span class='line'>171</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.isArray_</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">jasmine.isArray_</span><span class="PUNC">(</span><span class="NAME">b</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">a.length</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">b.length</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>172</span> </span><span class="WHIT"> </span><span class="NAME">mismatchValues.push</span><span class="PUNC">(</span><span class="STRN">"arrays were not the same length"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>173</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>174</span>
|
||||||
|
<span class='line'>175</span> </span><span class="WHIT"> </span><span class="KEYW">delete</span><span class="WHIT"> </span><span class="NAME">a.__Jasmine_been_here_before__</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>176</span> </span><span class="WHIT"> </span><span class="KEYW">delete</span><span class="WHIT"> </span><span class="NAME">b.__Jasmine_been_here_before__</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>177</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">mismatchKeys.length</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">mismatchValues.length</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>178</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>179</span>
|
||||||
|
<span class='line'>180</span> </span><span class="NAME">jasmine.Env.prototype.equals_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchKeys</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchValues</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>181</span> </span><span class="WHIT"> </span><span class="NAME">mismatchKeys</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">mismatchKeys</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>182</span> </span><span class="WHIT"> </span><span class="NAME">mismatchValues</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">mismatchValues</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>183</span>
|
||||||
|
<span class='line'>184</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">a</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>185</span>
|
||||||
|
<span class='line'>186</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">a</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">a</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">b</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">b</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>187</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">a</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">b</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>188</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>189</span>
|
||||||
|
<span class='line'>190</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.isDomNode</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">jasmine.isDomNode</span><span class="PUNC">(</span><span class="NAME">b</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>191</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">a</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>192</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>193</span>
|
||||||
|
<span class='line'>194</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">a</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">Date</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">b</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">Date</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>195</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">a.getTime</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">b.getTime</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>196</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>197</span>
|
||||||
|
<span class='line'>198</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">a</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.Any</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>199</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">a.matches</span><span class="PUNC">(</span><span class="NAME">b</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>200</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>201</span>
|
||||||
|
<span class='line'>202</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">b</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.Any</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>203</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">b.matches</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>204</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>205</span>
|
||||||
|
<span class='line'>206</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">a</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">"object"</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">b</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">"object"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>207</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.compareObjects_</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchKeys</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchValues</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>208</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>209</span>
|
||||||
|
<span class='line'>210</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.equalityTesters_.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>211</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">equalityTester</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.equalityTesters_</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>212</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">equalityTester</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchKeys</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">mismatchValues</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>213</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>214</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>215</span>
|
||||||
|
<span class='line'>216</span> </span><span class="WHIT"> </span><span class="COMM">//Straight check</span><span class="WHIT">
|
||||||
|
<span class='line'>217</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">a</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>218</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>219</span>
|
||||||
|
<span class='line'>220</span> </span><span class="NAME">jasmine.Env.prototype.contains_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">haystack</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">needle</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>221</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.isArray_</span><span class="PUNC">(</span><span class="NAME">haystack</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>222</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">haystack.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>223</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.equals_</span><span class="PUNC">(</span><span class="NAME">haystack</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">needle</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>224</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>225</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>226</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>227</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">haystack.indexOf</span><span class="PUNC">(</span><span class="NAME">needle</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>228</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>229</span>
|
||||||
|
<span class='line'>230</span> </span><span class="NAME">jasmine.Env.prototype.addEqualityTester</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">equalityTester</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>231</span> </span><span class="WHIT"> </span><span class="NAME">this.equalityTesters_.push</span><span class="PUNC">(</span><span class="NAME">equalityTester</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>232</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>233</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,111 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/** JavaScript API reporter.
|
||||||
|
<span class='line'> 2</span> *
|
||||||
|
<span class='line'> 3</span> * @constructor
|
||||||
|
<span class='line'> 4</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span> </span><span class="NAME">jasmine.JsApiReporter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span> </span><span class="WHIT"> </span><span class="NAME">this.started</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="WHIT"> </span><span class="NAME">this.finished</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span> </span><span class="WHIT"> </span><span class="NAME">this.suites_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 9</span> </span><span class="WHIT"> </span><span class="NAME">this.results_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span>
|
||||||
|
<span class='line'> 12</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.reportRunnerStarting</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">runner</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="WHIT"> </span><span class="NAME">this.started</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">suites</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">runner.suites</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">suites.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suites</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="NAME">this.suites_.push</span><span class="PUNC">(</span><span class="NAME">this.summarize_</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span>
|
||||||
|
<span class='line'> 21</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.suites</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.suites_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span>
|
||||||
|
<span class='line'> 25</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.summarize_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">suiteOrSpec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">isSuite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suiteOrSpec</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">jasmine.Suite</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">summary</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">suiteOrSpec.id</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">suiteOrSpec.description</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span> </span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">isSuite</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">'suite'</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'spec'</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span> </span><span class="WHIT"> </span><span class="NAME">children</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="WHIT">
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">isSuite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">specs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suiteOrSpec.specs</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">specs.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="NAME">summary.children.push</span><span class="PUNC">(</span><span class="NAME">this.summarize_</span><span class="PUNC">(</span><span class="NAME">specs</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">summary</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span>
|
||||||
|
<span class='line'> 42</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.results_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span>
|
||||||
|
<span class='line'> 46</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.resultsForSpec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">specId</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.results_</span><span class="PUNC">[</span><span class="NAME">specId</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 49</span>
|
||||||
|
<span class='line'> 50</span> </span><span class="COMM">//noinspection JSUnusedLocalSymbols</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.reportRunnerResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">runner</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="NAME">this.finished</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span>
|
||||||
|
<span class='line'> 55</span> </span><span class="COMM">//noinspection JSUnusedLocalSymbols</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.reportSuiteResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span>
|
||||||
|
<span class='line'> 59</span> </span><span class="COMM">//noinspection JSUnusedLocalSymbols</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.reportSpecResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">spec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="NAME">this.results_</span><span class="PUNC">[</span><span class="NAME">spec.id</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="NAME">messages</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">spec.results</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getItems</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">spec.results</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">failedCount</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">"failed"</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"passed"</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span>
|
||||||
|
<span class='line'> 67</span> </span><span class="COMM">//noinspection JSUnusedLocalSymbols</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.log</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 70</span>
|
||||||
|
<span class='line'> 71</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.resultsForSpecs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">specIds</span><span class="PUNC">)</span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 73</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">specIds.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 74</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">specId</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">specIds</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 75</span> </span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">[</span><span class="NAME">specId</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.summarizeResult_</span><span class="PUNC">(</span><span class="NAME">this.results_</span><span class="PUNC">[</span><span class="NAME">specId</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 76</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 77</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 78</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 79</span>
|
||||||
|
<span class='line'> 80</span> </span><span class="NAME">jasmine.JsApiReporter.prototype.summarizeResult_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 81</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">summaryMessages</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 82</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">messagesLength</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">result.messages.length</span><span class="WHIT">
|
||||||
|
<span class='line'> 83</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">messageIndex</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">messageIndex</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">messagesLength</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">messageIndex</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 84</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">resultMessage</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">result.messages</span><span class="PUNC">[</span><span class="NAME">messageIndex</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 85</span> </span><span class="WHIT"> </span><span class="NAME">summaryMessages.push</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 86</span> </span><span class="WHIT"> </span><span class="NAME">text</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">resultMessage.text</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 87</span> </span><span class="WHIT"> </span><span class="NAME">passed</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">resultMessage.passed</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">resultMessage.passed</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 88</span> </span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">resultMessage.type</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 89</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">resultMessage.message</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 90</span> </span><span class="WHIT"> </span><span class="NAME">trace</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 91</span> </span><span class="WHIT"> </span><span class="NAME">stack</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">resultMessage.passed</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">resultMessage.passed</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">resultMessage.trace.stack</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="WHIT">
|
||||||
|
<span class='line'> 92</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 93</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 94</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 95</span>
|
||||||
|
<span class='line'> 96</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">summaryResult</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 97</span> </span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">result.result</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 98</span> </span><span class="WHIT"> </span><span class="NAME">messages</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">summaryMessages</span><span class="WHIT">
|
||||||
|
<span class='line'> 99</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>100</span>
|
||||||
|
<span class='line'>101</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">summaryResult</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>102</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>103</span>
|
||||||
|
<span class='line'>104</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,328 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * @constructor
|
||||||
|
<span class='line'> 3</span> * @param {jasmine.Env} env
|
||||||
|
<span class='line'> 4</span> * @param actual
|
||||||
|
<span class='line'> 5</span> * @param {jasmine.Spec} spec
|
||||||
|
<span class='line'> 6</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="NAME">jasmine.Matchers</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">actual</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span> </span><span class="WHIT"> </span><span class="NAME">this.env</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">env</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 9</span> </span><span class="WHIT"> </span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">actual</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="NAME">this.spec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="WHIT"> </span><span class="NAME">this.reportWasCalled_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span>
|
||||||
|
<span class='line'> 14</span> </span><span class="NAME">jasmine.Matchers.pp</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.util.htmlEscape</span><span class="PUNC">(</span><span class="NAME">jasmine.pp</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span>
|
||||||
|
<span class='line'> 18</span> </span><span class="COMM">/** @deprecated */</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="NAME">jasmine.Matchers.prototype.report</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">failing_message</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">details</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="COMM">// todo first: report deprecation warning [xw]</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="COMM">// todo later: throw new Error("As of jasmine 0.xx, custom matchers must be implemented differently -- please see jasmine docs");</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="WHIT"> </span><span class="NAME">this.reportWasCalled_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">expectationResult</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.ExpectationResult</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="NAME">passed</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">failing_message</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="NAME">details</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">details</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="WHIT"> </span><span class="NAME">this.spec.addMatcherResult</span><span class="PUNC">(</span><span class="NAME">expectationResult</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span>
|
||||||
|
<span class='line'> 32</span> </span><span class="NAME">jasmine.Matchers.wrapInto_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">prototype</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">matchersClass</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">prototype</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">methodName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'report'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">continue</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">orig</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">prototype</span><span class="PUNC">[</span><span class="NAME">methodName</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="NAME">matchersClass.prototype</span><span class="PUNC">[</span><span class="NAME">methodName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.matcherFn_</span><span class="PUNC">(</span><span class="NAME">methodName</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">orig</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span>
|
||||||
|
<span class='line'> 40</span> </span><span class="NAME">jasmine.Matchers.matcherFn_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">matcherName</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">matcherFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">matcherArgs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.util.argsToArray</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">matcherFunction.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.reportWasCalled_</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">result</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.message</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 49</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.message.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 50</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">englishyPredicate</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">matcherName.replace</span><span class="PUNC">(</span><span class="REGX">/[A-Z]/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">s</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">' '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">s.toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"Expected "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.pp</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">englishyPredicate</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">matcherArgs.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">matcherArgs.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">","</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">" "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.pp</span><span class="PUNC">(</span><span class="NAME">matcherArgs</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"."</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">expectationResult</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.ExpectationResult</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="WHIT"> </span><span class="NAME">matcherName</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">matcherName</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="NAME">passed</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span> </span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">matcherArgs.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">matcherArgs</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">matcherArgs</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span> </span><span class="WHIT"> </span><span class="NAME">actual</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.actual</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span> </span><span class="WHIT"> </span><span class="NAME">this.spec.addMatcherResult</span><span class="PUNC">(</span><span class="NAME">expectationResult</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 70</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 71</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 73</span>
|
||||||
|
<span class='line'> 74</span>
|
||||||
|
<span class='line'> 75</span>
|
||||||
|
<span class='line'> 76</span>
|
||||||
|
<span class='line'> 77</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 78</span> * toBe: compares the actual to the expected using ===
|
||||||
|
<span class='line'> 79</span> * @param expected
|
||||||
|
<span class='line'> 80</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 81</span> </span><span class="NAME">jasmine.Matchers.prototype.toBe</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 82</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 83</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 84</span>
|
||||||
|
<span class='line'> 85</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 86</span> * toNotBe: compares the actual to the expected using !==
|
||||||
|
<span class='line'> 87</span> * @param expected
|
||||||
|
<span class='line'> 88</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 89</span> </span><span class="NAME">jasmine.Matchers.prototype.toNotBe</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 90</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 91</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 92</span>
|
||||||
|
<span class='line'> 93</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 94</span> * toEqual: compares the actual to the expected using common sense equality. Handles Objects, Arrays, etc.
|
||||||
|
<span class='line'> 95</span> *
|
||||||
|
<span class='line'> 96</span> * @param expected
|
||||||
|
<span class='line'> 97</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 98</span> </span><span class="NAME">jasmine.Matchers.prototype.toEqual</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 99</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.env.equals_</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>100</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>101</span>
|
||||||
|
<span class='line'>102</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>103</span> * toNotEqual: compares the actual to the expected using the ! of jasmine.Matchers.toEqual
|
||||||
|
<span class='line'>104</span> * @param expected
|
||||||
|
<span class='line'>105</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>106</span> </span><span class="NAME">jasmine.Matchers.prototype.toNotEqual</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>107</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.env.equals_</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>108</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>109</span>
|
||||||
|
<span class='line'>110</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>111</span> * Matcher that compares the actual to the expected using a regular expression. Constructs a RegExp, so takes
|
||||||
|
<span class='line'>112</span> * a pattern or a String.
|
||||||
|
<span class='line'>113</span> *
|
||||||
|
<span class='line'>114</span> * @param expected
|
||||||
|
<span class='line'>115</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>116</span> </span><span class="NAME">jasmine.Matchers.prototype.toMatch</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>117</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">RegExp</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">test</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>118</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>119</span>
|
||||||
|
<span class='line'>120</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>121</span> * Matcher that compares the actual to the expected using the boolean inverse of jasmine.Matchers.toMatch
|
||||||
|
<span class='line'>122</span> * @param expected
|
||||||
|
<span class='line'>123</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>124</span> </span><span class="NAME">jasmine.Matchers.prototype.toNotMatch</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>125</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">RegExp</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">test</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>126</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>127</span>
|
||||||
|
<span class='line'>128</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>129</span> * Matcher that compares the actual to jasmine.undefined.
|
||||||
|
<span class='line'>130</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>131</span> </span><span class="NAME">jasmine.Matchers.prototype.toBeDefined</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>132</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>133</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>134</span>
|
||||||
|
<span class='line'>135</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>136</span> * Matcher that compares the actual to jasmine.undefined.
|
||||||
|
<span class='line'>137</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>138</span> </span><span class="NAME">jasmine.Matchers.prototype.toBeUndefined</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>139</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>140</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>141</span>
|
||||||
|
<span class='line'>142</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>143</span> * Matcher that compares the actual to null.
|
||||||
|
<span class='line'>144</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>145</span> </span><span class="NAME">jasmine.Matchers.prototype.toBeNull</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>146</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>147</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>148</span>
|
||||||
|
<span class='line'>149</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>150</span> * Matcher that boolean not-nots the actual.
|
||||||
|
<span class='line'>151</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>152</span> </span><span class="NAME">jasmine.Matchers.prototype.toBeTruthy</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>153</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">!</span><span class="NAME">this.actual</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>154</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>155</span>
|
||||||
|
<span class='line'>156</span>
|
||||||
|
<span class='line'>157</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>158</span> * Matcher that boolean nots the actual.
|
||||||
|
<span class='line'>159</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>160</span> </span><span class="NAME">jasmine.Matchers.prototype.toBeFalsy</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>161</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.actual</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>162</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>163</span>
|
||||||
|
<span class='line'>164</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>165</span> * Matcher that checks to see if the actual, a Jasmine spy, was called.
|
||||||
|
<span class='line'>166</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>167</span> </span><span class="NAME">jasmine.Matchers.prototype.wasCalled</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>168</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">arguments.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>169</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'wasCalled does not take arguments, use wasCalledWith'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>170</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>171</span>
|
||||||
|
<span class='line'>172</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">jasmine.isSpy</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>173</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'Expected a spy, but got '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.pp</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'.'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>174</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>175</span>
|
||||||
|
<span class='line'>176</span> </span><span class="WHIT"> </span><span class="NAME">this.message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>177</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Expected spy "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.actual.identity</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" to have been called."</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>178</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>179</span>
|
||||||
|
<span class='line'>180</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.actual.wasCalled</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>181</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>182</span>
|
||||||
|
<span class='line'>183</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>184</span> * Matcher that checks to see if the actual, a Jasmine spy, was not called.
|
||||||
|
<span class='line'>185</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>186</span> </span><span class="NAME">jasmine.Matchers.prototype.wasNotCalled</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>187</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">arguments.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>188</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'wasNotCalled does not take arguments'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>189</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>190</span>
|
||||||
|
<span class='line'>191</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">jasmine.isSpy</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>192</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'Expected a spy, but got '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.pp</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'.'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>193</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>194</span>
|
||||||
|
<span class='line'>195</span> </span><span class="WHIT"> </span><span class="NAME">this.message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>196</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Expected spy "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.actual.identity</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" to not have been called."</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>197</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>198</span>
|
||||||
|
<span class='line'>199</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.actual.wasCalled</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>200</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>201</span>
|
||||||
|
<span class='line'>202</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>203</span> * Matcher that checks to see if the actual, a Jasmine spy, was called with a set of parameters.
|
||||||
|
<span class='line'>204</span> *
|
||||||
|
<span class='line'>205</span> * @example
|
||||||
|
<span class='line'>206</span> *
|
||||||
|
<span class='line'>207</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>208</span> </span><span class="NAME">jasmine.Matchers.prototype.wasCalledWith</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>209</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">jasmine.isSpy</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>210</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'Expected a spy, but got '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.pp</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'.'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>211</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>212</span>
|
||||||
|
<span class='line'>213</span> </span><span class="WHIT"> </span><span class="NAME">this.message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>214</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.actual.callCount</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>215</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Expected spy to have been called with "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.pp</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" but it was never called."</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>216</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>217</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Expected spy to have been called with "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.pp</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" but was called with "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.pp</span><span class="PUNC">(</span><span class="NAME">this.actual.argsForCall</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>218</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>219</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>220</span>
|
||||||
|
<span class='line'>221</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.env.contains_</span><span class="PUNC">(</span><span class="NAME">this.actual.argsForCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">jasmine.util.argsToArray</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>222</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>223</span>
|
||||||
|
<span class='line'>224</span> </span><span class="NAME">jasmine.Matchers.prototype.wasNotCalledWith</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>225</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">jasmine.isSpy</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>226</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'Expected a spy, but got '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.pp</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'.'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>227</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>228</span>
|
||||||
|
<span class='line'>229</span> </span><span class="WHIT"> </span><span class="NAME">this.message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>230</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Expected spy not to have been called with "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">jasmine.pp</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" but it was"</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>231</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>232</span>
|
||||||
|
<span class='line'>233</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.env.contains_</span><span class="PUNC">(</span><span class="NAME">this.actual.argsForCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">jasmine.util.argsToArray</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>234</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>235</span>
|
||||||
|
<span class='line'>236</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>237</span> * Matcher that checks that the expected item is an element in the actual Array.
|
||||||
|
<span class='line'>238</span> *
|
||||||
|
<span class='line'>239</span> * @param {Object} expected
|
||||||
|
<span class='line'>240</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>241</span> </span><span class="NAME">jasmine.Matchers.prototype.toContain</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>242</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.env.contains_</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>243</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>244</span>
|
||||||
|
<span class='line'>245</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>246</span> * Matcher that checks that the expected item is NOT an element in the actual Array.
|
||||||
|
<span class='line'>247</span> *
|
||||||
|
<span class='line'>248</span> * @param {Object} expected
|
||||||
|
<span class='line'>249</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>250</span> </span><span class="NAME">jasmine.Matchers.prototype.toNotContain</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>251</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.env.contains_</span><span class="PUNC">(</span><span class="NAME">this.actual</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>252</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>253</span>
|
||||||
|
<span class='line'>254</span> </span><span class="NAME">jasmine.Matchers.prototype.toBeLessThan</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>255</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>256</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>257</span>
|
||||||
|
<span class='line'>258</span> </span><span class="NAME">jasmine.Matchers.prototype.toBeGreaterThan</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>259</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>260</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>261</span>
|
||||||
|
<span class='line'>262</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>263</span> * Matcher that checks that the expected exception was thrown by the actual.
|
||||||
|
<span class='line'>264</span> *
|
||||||
|
<span class='line'>265</span> * @param {String} expected
|
||||||
|
<span class='line'>266</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>267</span> </span><span class="NAME">jasmine.Matchers.prototype.toThrow</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expected</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>268</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>269</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">exception</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>270</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">'function'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>271</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'Actual is not a function'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>272</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>273</span> </span><span class="WHIT"> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>274</span> </span><span class="WHIT"> </span><span class="NAME">this.actual</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>275</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>276</span> </span><span class="WHIT"> </span><span class="NAME">exception</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">e</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>277</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>278</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">exception</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>279</span> </span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">expected</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.env.equals_</span><span class="PUNC">(</span><span class="NAME">exception.message</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">exception</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">expected.message</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>280</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>281</span>
|
||||||
|
<span class='line'>282</span> </span><span class="WHIT"> </span><span class="NAME">this.message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>283</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">exception</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">expected</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.env.equals_</span><span class="PUNC">(</span><span class="NAME">exception.message</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">exception</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">expected.message</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>284</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">"Expected function to throw"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">expected.message</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">expected</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">", but it threw"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exception.message</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">exception</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">join</span><span class="PUNC">(</span><span class="STRN">' '</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>285</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>286</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Expected function to throw an exception."</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>287</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>288</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>289</span>
|
||||||
|
<span class='line'>290</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>291</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>292</span>
|
||||||
|
<span class='line'>293</span> </span><span class="NAME">jasmine.Matchers.Any</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expectedClass</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>294</span> </span><span class="WHIT"> </span><span class="NAME">this.expectedClass</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">expectedClass</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>295</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>296</span>
|
||||||
|
<span class='line'>297</span> </span><span class="NAME">jasmine.Matchers.Any.prototype.matches</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">other</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>298</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.expectedClass</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">String</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>299</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">other</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">other</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">String</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>300</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>301</span>
|
||||||
|
<span class='line'>302</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.expectedClass</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">Number</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>303</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">other</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'number'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">other</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">Number</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>304</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>305</span>
|
||||||
|
<span class='line'>306</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.expectedClass</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">Function</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>307</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">other</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'function'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">other</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">Function</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>308</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>309</span>
|
||||||
|
<span class='line'>310</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.expectedClass</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">Object</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>311</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">other</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'object'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>312</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>313</span>
|
||||||
|
<span class='line'>314</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">other</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">this.expectedClass</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>315</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>316</span>
|
||||||
|
<span class='line'>317</span> </span><span class="NAME">jasmine.Matchers.Any.prototype.toString</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>318</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">'<jasmine.any('</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.expectedClass</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">')>'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>319</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>320</span>
|
||||||
|
<span class='line'>321</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * @constructor
|
||||||
|
<span class='line'> 3</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 4</span> </span><span class="NAME">jasmine.MultiReporter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span> </span><span class="WHIT"> </span><span class="NAME">this.subReporters_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="NAME">jasmine.util.inherit</span><span class="PUNC">(</span><span class="NAME">jasmine.MultiReporter</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">jasmine.Reporter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span>
|
||||||
|
<span class='line'> 9</span> </span><span class="NAME">jasmine.MultiReporter.prototype.addReporter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">reporter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="NAME">this.subReporters_.push</span><span class="PUNC">(</span><span class="NAME">reporter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span>
|
||||||
|
<span class='line'> 13</span> </span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">functionNames</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">"reportRunnerStarting"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"reportRunnerResults"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"reportSuiteResults"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"reportSpecResults"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"log"</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">functionNames.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">functionName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">functionNames</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.MultiReporter.prototype</span><span class="PUNC">[</span><span class="NAME">functionName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">functionName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">j</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">j</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.subReporters_.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">j</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">subReporter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.subReporters_</span><span class="PUNC">[</span><span class="NAME">j</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">subReporter</span><span class="PUNC">[</span><span class="NAME">functionName</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="WHIT"> </span><span class="NAME">subReporter</span><span class="PUNC">[</span><span class="NAME">functionName</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">apply</span><span class="PUNC">(</span><span class="NAME">subReporter</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">(</span><span class="NAME">functionName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,88 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * Holds results for a set of Jasmine spec. Allows for the results array to hold another jasmine.NestedResults
|
||||||
|
<span class='line'> 3</span> *
|
||||||
|
<span class='line'> 4</span> * @constructor
|
||||||
|
<span class='line'> 5</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span> </span><span class="NAME">jasmine.NestedResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 8</span> * The total count of results
|
||||||
|
<span class='line'> 9</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="NAME">this.totalCount</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 12</span> * Number of passed results
|
||||||
|
<span class='line'> 13</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="NAME">this.passedCount</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 16</span> * Number of failed results
|
||||||
|
<span class='line'> 17</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="NAME">this.failedCount</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 20</span> * Was this suite/spec skipped?
|
||||||
|
<span class='line'> 21</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="WHIT"> </span><span class="NAME">this.skipped</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 24</span> * @ignore
|
||||||
|
<span class='line'> 25</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="NAME">this.items_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span>
|
||||||
|
<span class='line'> 29</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 30</span> * Roll up the result counts.
|
||||||
|
<span class='line'> 31</span> *
|
||||||
|
<span class='line'> 32</span> * @param result
|
||||||
|
<span class='line'> 33</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="NAME">jasmine.NestedResults.prototype.rollupCounts</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="NAME">this.totalCount</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">result.totalCount</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="NAME">this.passedCount</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">result.passedCount</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="NAME">this.failedCount</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">result.failedCount</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span>
|
||||||
|
<span class='line'> 40</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 41</span> * Tracks a result's message.
|
||||||
|
<span class='line'> 42</span> * @param message
|
||||||
|
<span class='line'> 43</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="NAME">jasmine.NestedResults.prototype.log</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">message</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="NAME">this.items_.push</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.MessageResult</span><span class="PUNC">(</span><span class="NAME">message</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span>
|
||||||
|
<span class='line'> 48</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 49</span> * Getter for the results: message & results.
|
||||||
|
<span class='line'> 50</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span> </span><span class="NAME">jasmine.NestedResults.prototype.getItems</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.items_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span>
|
||||||
|
<span class='line'> 55</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 56</span> * Adds a result, tracking counts (total, passed, & failed)
|
||||||
|
<span class='line'> 57</span> * @param {jasmine.ExpectationResult|jasmine.NestedResults} result
|
||||||
|
<span class='line'> 58</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="NAME">jasmine.NestedResults.prototype.addResult</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">result.type</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">'MessageResult'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">result.items_</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="NAME">this.rollupCounts</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="NAME">this.totalCount</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">result.passed</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span> </span><span class="WHIT"> </span><span class="NAME">this.passedCount</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="WHIT"> </span><span class="NAME">this.failedCount</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 70</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 71</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span> </span><span class="WHIT"> </span><span class="NAME">this.items_.push</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 73</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 74</span>
|
||||||
|
<span class='line'> 75</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 76</span> * @returns {Boolean} True if <b>everything</b> below passed
|
||||||
|
<span class='line'> 77</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 78</span> </span><span class="NAME">jasmine.NestedResults.prototype.passed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 79</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.passedCount</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">this.totalCount</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 80</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 81</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,130 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * Base class for pretty printing for expectation results.
|
||||||
|
<span class='line'> 3</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 4</span> </span><span class="NAME">jasmine.PrettyPrinter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span> </span><span class="WHIT"> </span><span class="NAME">this.ppNestLevel_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span>
|
||||||
|
<span class='line'> 8</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 9</span> * Formats a value in a nice, human-readable string.
|
||||||
|
<span class='line'> 10</span> *
|
||||||
|
<span class='line'> 11</span> * @param value
|
||||||
|
<span class='line'> 12</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="NAME">jasmine.PrettyPrinter.prototype.format</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.ppNestLevel_</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">40</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'jasmine.PrettyPrinter: format() nested too deeply!'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span>
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="NAME">this.ppNestLevel_</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="STRN">'undefined'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="STRN">'null'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">value.navigator</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">value.frames</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">value.setTimeout</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="STRN">'<window>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">value</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.Any</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="NAME">value.toString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="NAME">this.emitString</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.isSpy</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="STRN">"spy on "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">value.identity</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">value</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">RegExp</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="NAME">value.toString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'function'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="STRN">'Function'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">value.nodeType</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'number'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="STRN">'HTMLNode'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">value</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">Date</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="STRN">'Date('</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">')'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">value.__Jasmine_been_here_before__</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="STRN">'<circular reference: '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.isArray_</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">'Array'</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'Object'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.isArray_</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'object'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span> </span><span class="WHIT"> </span><span class="NAME">value.__Jasmine_been_here_before__</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.isArray_</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="NAME">this.emitArray</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="NAME">this.emitObject</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 49</span> </span><span class="WHIT"> </span><span class="KEYW">delete</span><span class="WHIT"> </span><span class="NAME">value.__Jasmine_been_here_before__</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 50</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span> </span><span class="WHIT"> </span><span class="NAME">this.emitScalar</span><span class="PUNC">(</span><span class="NAME">value.toString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">finally</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="NAME">this.ppNestLevel_</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span>
|
||||||
|
<span class='line'> 58</span> </span><span class="NAME">jasmine.PrettyPrinter.prototype.iterateObject</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">obj</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">fn</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">property</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">property</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'__Jasmine_been_here_before__'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">continue</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="NAME">fn</span><span class="PUNC">(</span><span class="NAME">property</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">obj.__lookupGetter__</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">obj.__lookupGetter__</span><span class="PUNC">(</span><span class="NAME">property</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span>
|
||||||
|
<span class='line'> 65</span> </span><span class="NAME">jasmine.PrettyPrinter.prototype.emitArray</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.unimplementedMethod_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span> </span><span class="NAME">jasmine.PrettyPrinter.prototype.emitObject</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.unimplementedMethod_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span> </span><span class="NAME">jasmine.PrettyPrinter.prototype.emitScalar</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.unimplementedMethod_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="NAME">jasmine.PrettyPrinter.prototype.emitString</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.unimplementedMethod_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span>
|
||||||
|
<span class='line'> 70</span> </span><span class="NAME">jasmine.StringPrettyPrinter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 71</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.PrettyPrinter.call</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span>
|
||||||
|
<span class='line'> 73</span> </span><span class="WHIT"> </span><span class="NAME">this.string</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">''</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 74</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 75</span> </span><span class="NAME">jasmine.util.inherit</span><span class="PUNC">(</span><span class="NAME">jasmine.StringPrettyPrinter</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">jasmine.PrettyPrinter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 76</span>
|
||||||
|
<span class='line'> 77</span> </span><span class="NAME">jasmine.StringPrettyPrinter.prototype.emitScalar</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 78</span> </span><span class="WHIT"> </span><span class="NAME">this.append</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 79</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 80</span>
|
||||||
|
<span class='line'> 81</span> </span><span class="NAME">jasmine.StringPrettyPrinter.prototype.emitString</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 82</span> </span><span class="WHIT"> </span><span class="NAME">this.append</span><span class="PUNC">(</span><span class="STRN">"'"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"'"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 83</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 84</span>
|
||||||
|
<span class='line'> 85</span> </span><span class="NAME">jasmine.StringPrettyPrinter.prototype.emitArray</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">array</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 86</span> </span><span class="WHIT"> </span><span class="NAME">this.append</span><span class="PUNC">(</span><span class="STRN">'[ '</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 87</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">array.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 88</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 89</span> </span><span class="WHIT"> </span><span class="NAME">this.append</span><span class="PUNC">(</span><span class="STRN">', '</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 90</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 91</span> </span><span class="WHIT"> </span><span class="NAME">this.format</span><span class="PUNC">(</span><span class="NAME">array</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 92</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 93</span> </span><span class="WHIT"> </span><span class="NAME">this.append</span><span class="PUNC">(</span><span class="STRN">' ]'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 94</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 95</span>
|
||||||
|
<span class='line'> 96</span> </span><span class="NAME">jasmine.StringPrettyPrinter.prototype.emitObject</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">obj</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 97</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">self</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 98</span> </span><span class="WHIT"> </span><span class="NAME">this.append</span><span class="PUNC">(</span><span class="STRN">'{ '</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 99</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">first</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>100</span>
|
||||||
|
<span class='line'>101</span> </span><span class="WHIT"> </span><span class="NAME">this.iterateObject</span><span class="PUNC">(</span><span class="NAME">obj</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">property</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">isGetter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>102</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">first</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>103</span> </span><span class="WHIT"> </span><span class="NAME">first</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>104</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>105</span> </span><span class="WHIT"> </span><span class="NAME">self.append</span><span class="PUNC">(</span><span class="STRN">', '</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>106</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>107</span>
|
||||||
|
<span class='line'>108</span> </span><span class="WHIT"> </span><span class="NAME">self.append</span><span class="PUNC">(</span><span class="NAME">property</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>109</span> </span><span class="WHIT"> </span><span class="NAME">self.append</span><span class="PUNC">(</span><span class="STRN">' : '</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>110</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">isGetter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>111</span> </span><span class="WHIT"> </span><span class="NAME">self.append</span><span class="PUNC">(</span><span class="STRN">'<getter>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>112</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>113</span> </span><span class="WHIT"> </span><span class="NAME">self.format</span><span class="PUNC">(</span><span class="NAME">obj</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>114</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>115</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>116</span>
|
||||||
|
<span class='line'>117</span> </span><span class="WHIT"> </span><span class="NAME">this.append</span><span class="PUNC">(</span><span class="STRN">' }'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>118</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>119</span>
|
||||||
|
<span class='line'>120</span> </span><span class="NAME">jasmine.StringPrettyPrinter.prototype.append</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>121</span> </span><span class="WHIT"> </span><span class="NAME">this.string</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>122</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>123</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,102 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="NAME">jasmine.Queue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 2</span> </span><span class="WHIT"> </span><span class="NAME">this.env</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">env</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 3</span> </span><span class="WHIT"> </span><span class="NAME">this.blocks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 4</span> </span><span class="WHIT"> </span><span class="NAME">this.running</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span> </span><span class="WHIT"> </span><span class="NAME">this.index</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span> </span><span class="WHIT"> </span><span class="NAME">this.offset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span>
|
||||||
|
<span class='line'> 9</span> </span><span class="NAME">jasmine.Queue.prototype.addBefore</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="NAME">this.blocks.unshift</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span>
|
||||||
|
<span class='line'> 13</span> </span><span class="NAME">jasmine.Queue.prototype.add</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="NAME">this.blocks.push</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span>
|
||||||
|
<span class='line'> 17</span> </span><span class="NAME">jasmine.Queue.prototype.insertNext</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="NAME">this.blocks.splice</span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">this.index</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.offset</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="NAME">this.offset</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span>
|
||||||
|
<span class='line'> 22</span> </span><span class="NAME">jasmine.Queue.prototype.start</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="NAME">this.running</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="NAME">this.onComplete</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">onComplete</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="NAME">this.next_</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span>
|
||||||
|
<span class='line'> 28</span> </span><span class="NAME">jasmine.Queue.prototype.isRunning</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.running</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span>
|
||||||
|
<span class='line'> 32</span> </span><span class="NAME">jasmine.Queue.LOOP_DONT_RECURSE</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span>
|
||||||
|
<span class='line'> 34</span> </span><span class="NAME">jasmine.Queue.prototype.next_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">self</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">goAgain</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span>
|
||||||
|
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">goAgain</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="NAME">goAgain</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span> </span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">self.index</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">self.blocks.length</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">calledSynchronously</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">completedSynchronously</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span>
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">onComplete</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.Queue.LOOP_DONT_RECURSE</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">calledSynchronously</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="NAME">completedSynchronously</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 49</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 50</span>
|
||||||
|
<span class='line'> 51</span> </span><span class="WHIT"> </span><span class="NAME">self.offset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="NAME">self.index</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span>
|
||||||
|
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">now</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Date</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getTime</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">self.env.updateInterval</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">now</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">self.env.lastUpdate</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">self.env.updateInterval</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span> </span><span class="WHIT"> </span><span class="NAME">self.env.lastUpdate</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">now</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span> </span><span class="WHIT"> </span><span class="NAME">self.env.setTimeout</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span> </span><span class="WHIT"> </span><span class="NAME">self.next_</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.Queue.LOOP_DONT_RECURSE</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">completedSynchronously</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="NAME">goAgain</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="NAME">self.next_</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="WHIT"> </span><span class="NAME">self.blocks</span><span class="PUNC">[</span><span class="NAME">self.index</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">execute</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span>
|
||||||
|
<span class='line'> 70</span> </span><span class="WHIT"> </span><span class="NAME">calledSynchronously</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 71</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">completedSynchronously</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span> </span><span class="WHIT"> </span><span class="NAME">onComplete</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 73</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 74</span> </span><span class="WHIT">
|
||||||
|
<span class='line'> 75</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 76</span> </span><span class="WHIT"> </span><span class="NAME">self.running</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 77</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">self.onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 78</span> </span><span class="WHIT"> </span><span class="NAME">self.onComplete</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 79</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 80</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 81</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 82</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 83</span>
|
||||||
|
<span class='line'> 84</span> </span><span class="NAME">jasmine.Queue.prototype.results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 85</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.NestedResults</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 86</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.blocks.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 87</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.blocks</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">results</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 88</span> </span><span class="WHIT"> </span><span class="NAME">results.addResult</span><span class="PUNC">(</span><span class="NAME">this.blocks</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">results</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 89</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 90</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 91</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 92</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 93</span>
|
||||||
|
<span class='line'> 94</span>
|
||||||
|
<span class='line'> 95</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/** No-op base class for Jasmine reporters.
|
||||||
|
<span class='line'> 2</span> *
|
||||||
|
<span class='line'> 3</span> * @constructor
|
||||||
|
<span class='line'> 4</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span> </span><span class="NAME">jasmine.Reporter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span>
|
||||||
|
<span class='line'> 8</span> </span><span class="COMM">//noinspection JSUnusedLocalSymbols</span><span class="WHIT">
|
||||||
|
<span class='line'> 9</span> </span><span class="NAME">jasmine.Reporter.prototype.reportRunnerStarting</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">runner</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span>
|
||||||
|
<span class='line'> 12</span> </span><span class="COMM">//noinspection JSUnusedLocalSymbols</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="NAME">jasmine.Reporter.prototype.reportRunnerResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">runner</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span>
|
||||||
|
<span class='line'> 16</span> </span><span class="COMM">//noinspection JSUnusedLocalSymbols</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="NAME">jasmine.Reporter.prototype.reportSuiteResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span>
|
||||||
|
<span class='line'> 20</span> </span><span class="COMM">//noinspection JSUnusedLocalSymbols</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="NAME">jasmine.Reporter.prototype.reportSpecResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">spec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span>
|
||||||
|
<span class='line'> 24</span> </span><span class="COMM">//noinspection JSUnusedLocalSymbols</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="NAME">jasmine.Reporter.prototype.log</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span>
|
||||||
|
<span class='line'> 28</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/** JasmineReporters.reporter
|
||||||
|
<span class='line'> 2</span> * Base object that will get called whenever a Spec, Suite, or Runner is done. It is up to
|
||||||
|
<span class='line'> 3</span> * descendants of this object to do something with the results (see json_reporter.js)
|
||||||
|
<span class='line'> 4</span> *
|
||||||
|
<span class='line'> 5</span> * @deprecated
|
||||||
|
<span class='line'> 6</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="NAME">jasmine.Reporters</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span>
|
||||||
|
<span class='line'> 9</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 10</span> * @deprecated
|
||||||
|
<span class='line'> 11</span> * @param callbacks
|
||||||
|
<span class='line'> 12</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="NAME">jasmine.Reporters.reporter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">callbacks</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 15</span> * @deprecated
|
||||||
|
<span class='line'> 16</span> * @param callbacks
|
||||||
|
<span class='line'> 17</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">that</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="NAME">callbacks</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">callbacks</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span>
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="NAME">doCallback</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">callback</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">callback</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="NAME">callback</span><span class="PUNC">(</span><span class="NAME">results</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span>
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="NAME">reportRunnerResults</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">runner</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="WHIT"> </span><span class="NAME">that.doCallback</span><span class="PUNC">(</span><span class="NAME">that.callbacks.runnerCallback</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">runner</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span> </span><span class="WHIT"> </span><span class="NAME">reportSuiteResults</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span> </span><span class="WHIT"> </span><span class="NAME">that.doCallback</span><span class="PUNC">(</span><span class="NAME">that.callbacks.suiteCallback</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span> </span><span class="WHIT"> </span><span class="NAME">reportSpecResults</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">spec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="WHIT"> </span><span class="NAME">that.doCallback</span><span class="PUNC">(</span><span class="NAME">that.callbacks.specCallback</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="NAME">log</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">console</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">console.log</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">console.log</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span>
|
||||||
|
<span class='line'> 41</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">that</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span>
|
||||||
|
<span class='line'> 44</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * Runner
|
||||||
|
<span class='line'> 3</span> *
|
||||||
|
<span class='line'> 4</span> * @constructor
|
||||||
|
<span class='line'> 5</span> * @param {jasmine.Env} env
|
||||||
|
<span class='line'> 6</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="NAME">jasmine.Runner</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">self</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 9</span> </span><span class="WHIT"> </span><span class="NAME">self.env</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">env</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="NAME">self.queue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Queue</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="WHIT"> </span><span class="NAME">self.before_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span> </span><span class="WHIT"> </span><span class="NAME">self.after_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="WHIT"> </span><span class="NAME">self.suites_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span>
|
||||||
|
<span class='line'> 16</span> </span><span class="NAME">jasmine.Runner.prototype.execute</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">self</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">self.env.reporter.reportRunnerStarting</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="NAME">self.env.reporter.reportRunnerStarting</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="NAME">self.queue.start</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="WHIT"> </span><span class="NAME">self.finishCallback</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span>
|
||||||
|
<span class='line'> 26</span> </span><span class="NAME">jasmine.Runner.prototype.beforeEach</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">beforeEachFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="NAME">beforeEachFunction.typeName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'beforeEach'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="WHIT"> </span><span class="NAME">this.before_.push</span><span class="PUNC">(</span><span class="NAME">beforeEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span>
|
||||||
|
<span class='line'> 31</span> </span><span class="NAME">jasmine.Runner.prototype.afterEach</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">afterEachFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="NAME">afterEachFunction.typeName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'afterEach'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span> </span><span class="WHIT"> </span><span class="NAME">this.after_.push</span><span class="PUNC">(</span><span class="NAME">afterEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span>
|
||||||
|
<span class='line'> 36</span>
|
||||||
|
<span class='line'> 37</span> </span><span class="NAME">jasmine.Runner.prototype.finishCallback</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="NAME">this.env.reporter.reportRunnerResults</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span>
|
||||||
|
<span class='line'> 41</span> </span><span class="NAME">jasmine.Runner.prototype.addSuite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span> </span><span class="WHIT"> </span><span class="NAME">this.suites_.push</span><span class="PUNC">(</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span>
|
||||||
|
<span class='line'> 45</span> </span><span class="NAME">jasmine.Runner.prototype.add</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">block</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">jasmine.Suite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="NAME">this.addSuite</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 49</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.add</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 50</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span>
|
||||||
|
<span class='line'> 52</span> </span><span class="NAME">jasmine.Runner.prototype.specs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">suites</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.suites</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">specs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">suites.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span> </span><span class="WHIT"> </span><span class="NAME">specs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">specs.concat</span><span class="PUNC">(</span><span class="NAME">suites</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">specs</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">specs</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span>
|
||||||
|
<span class='line'> 61</span>
|
||||||
|
<span class='line'> 62</span> </span><span class="NAME">jasmine.Runner.prototype.suites</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.suites_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span>
|
||||||
|
<span class='line'> 66</span> </span><span class="NAME">jasmine.Runner.prototype.results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.queue.results</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|
||||||
@@ -0,0 +1,211 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * Internal representation of a Jasmine specification, or test.
|
||||||
|
<span class='line'> 3</span> *
|
||||||
|
<span class='line'> 4</span> * @constructor
|
||||||
|
<span class='line'> 5</span> * @param {jasmine.Env} env
|
||||||
|
<span class='line'> 6</span> * @param {jasmine.Suite} suite
|
||||||
|
<span class='line'> 7</span> * @param {String} description
|
||||||
|
<span class='line'> 8</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 9</span> </span><span class="NAME">jasmine.Spec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">description</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">env</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'jasmine.Env() required'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">suite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">'jasmine.Suite() required'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="NAME">spec.id</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">env.nextSpecId</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">env.nextSpecId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="NAME">spec.env</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">env</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="NAME">spec.suite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="NAME">spec.description</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">description</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="NAME">spec.queue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Queue</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span>
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="NAME">spec.afterCallbacks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="NAME">spec.spies_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span>
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="NAME">spec.results_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.NestedResults</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="NAME">spec.results_.description</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">description</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="WHIT"> </span><span class="NAME">spec.matchersClass</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span>
|
||||||
|
<span class='line'> 31</span> </span><span class="NAME">jasmine.Spec.prototype.getFullName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.suite.getFullName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.description</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'.'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span>
|
||||||
|
<span class='line'> 35</span>
|
||||||
|
<span class='line'> 36</span> </span><span class="NAME">jasmine.Spec.prototype.results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.results_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span>
|
||||||
|
<span class='line'> 40</span> </span><span class="NAME">jasmine.Spec.prototype.log</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">message</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.results_.log</span><span class="PUNC">(</span><span class="NAME">message</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span>
|
||||||
|
<span class='line'> 44</span> </span><span class="COMM">/** @deprecated */</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="NAME">jasmine.Spec.prototype.getResults</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.results_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span>
|
||||||
|
<span class='line'> 49</span> </span><span class="NAME">jasmine.Spec.prototype.runs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">func</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 50</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Block</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span> </span><span class="WHIT"> </span><span class="NAME">this.addToQueue</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span>
|
||||||
|
<span class='line'> 55</span> </span><span class="NAME">jasmine.Spec.prototype.addToQueue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.queue.isRunning</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.insertNext</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.add</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span>
|
||||||
|
<span class='line'> 63</span> </span><span class="NAME">jasmine.Spec.prototype.addMatcherResult</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="NAME">this.results_.addResult</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span>
|
||||||
|
<span class='line'> 67</span> </span><span class="NAME">jasmine.Spec.prototype.expect</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">actual</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.getMatchersClass_</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">actual</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 70</span>
|
||||||
|
<span class='line'> 71</span> </span><span class="NAME">jasmine.Spec.prototype.waits</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeout</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">waitsFunc</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.WaitsBlock</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">timeout</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 73</span> </span><span class="WHIT"> </span><span class="NAME">this.addToQueue</span><span class="PUNC">(</span><span class="NAME">waitsFunc</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 74</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 75</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 76</span>
|
||||||
|
<span class='line'> 77</span> </span><span class="NAME">jasmine.Spec.prototype.waitsFor</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeout</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">latchFunction</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">timeoutMessage</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 78</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">waitsForFunc</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.WaitsForBlock</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">timeout</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">latchFunction</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">timeoutMessage</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 79</span> </span><span class="WHIT"> </span><span class="NAME">this.addToQueue</span><span class="PUNC">(</span><span class="NAME">waitsForFunc</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 80</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 81</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 82</span>
|
||||||
|
<span class='line'> 83</span> </span><span class="NAME">jasmine.Spec.prototype.fail</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 84</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">expectationResult</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.ExpectationResult</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 85</span> </span><span class="WHIT"> </span><span class="NAME">passed</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 86</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">e</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">jasmine.util.formatException</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'Exception'</span><span class="WHIT">
|
||||||
|
<span class='line'> 87</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 88</span> </span><span class="WHIT"> </span><span class="NAME">this.results_.addResult</span><span class="PUNC">(</span><span class="NAME">expectationResult</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 89</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 90</span>
|
||||||
|
<span class='line'> 91</span> </span><span class="NAME">jasmine.Spec.prototype.getMatchersClass_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 92</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.matchersClass</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.env.matchersClass</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 93</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 94</span>
|
||||||
|
<span class='line'> 95</span> </span><span class="NAME">jasmine.Spec.prototype.addMatchers</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">matchersPrototype</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 96</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parent</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getMatchersClass_</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 97</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">newMatchersClass</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 98</span> </span><span class="WHIT"> </span><span class="NAME">parent.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 99</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>100</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.util.inherit</span><span class="PUNC">(</span><span class="NAME">newMatchersClass</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parent</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>101</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.wrapInto_</span><span class="PUNC">(</span><span class="NAME">matchersPrototype</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">newMatchersClass</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>102</span> </span><span class="WHIT"> </span><span class="NAME">this.matchersClass</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">newMatchersClass</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>103</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>104</span>
|
||||||
|
<span class='line'>105</span> </span><span class="NAME">jasmine.Spec.prototype.finishCallback</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>106</span> </span><span class="WHIT"> </span><span class="NAME">this.env.reporter.reportSpecResults</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>107</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>108</span>
|
||||||
|
<span class='line'>109</span> </span><span class="NAME">jasmine.Spec.prototype.finish</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>110</span> </span><span class="WHIT"> </span><span class="NAME">this.removeAllSpies</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>111</span> </span><span class="WHIT"> </span><span class="NAME">this.finishCallback</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>112</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>113</span> </span><span class="WHIT"> </span><span class="NAME">onComplete</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>114</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>115</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>116</span>
|
||||||
|
<span class='line'>117</span> </span><span class="NAME">jasmine.Spec.prototype.after</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">doAfter</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">test</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>118</span>
|
||||||
|
<span class='line'>119</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.queue.isRunning</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>120</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.add</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Block</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">doAfter</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>121</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>122</span> </span><span class="WHIT"> </span><span class="NAME">this.afterCallbacks.unshift</span><span class="PUNC">(</span><span class="NAME">doAfter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>123</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>124</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>125</span>
|
||||||
|
<span class='line'>126</span> </span><span class="NAME">jasmine.Spec.prototype.execute</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>127</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>128</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">spec.env.specFilter</span><span class="PUNC">(</span><span class="NAME">spec</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>129</span> </span><span class="WHIT"> </span><span class="NAME">spec.results_.skipped</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>130</span> </span><span class="WHIT"> </span><span class="NAME">spec.finish</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>131</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>132</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>133</span> </span><span class="WHIT"> </span><span class="NAME">this.env.reporter.log</span><span class="PUNC">(</span><span class="STRN">'>> Jasmine Running '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.suite.description</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.description</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'...'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>134</span>
|
||||||
|
<span class='line'>135</span> </span><span class="WHIT"> </span><span class="NAME">spec.env.currentSpec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>136</span>
|
||||||
|
<span class='line'>137</span> </span><span class="WHIT"> </span><span class="NAME">spec.addBeforesAndAftersToQueue</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>138</span>
|
||||||
|
<span class='line'>139</span> </span><span class="WHIT"> </span><span class="NAME">spec.queue.start</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>140</span> </span><span class="WHIT"> </span><span class="NAME">spec.finish</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>141</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>142</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>143</span>
|
||||||
|
<span class='line'>144</span> </span><span class="NAME">jasmine.Spec.prototype.addBeforesAndAftersToQueue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>145</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">runner</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.env.currentRunner</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>146</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.suite</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suite.parentSuite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>147</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">suite.before_.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>148</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.addBefore</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Block</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">suite.before_</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>149</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>150</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>151</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">runner.before_.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>152</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.addBefore</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Block</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">runner.before_</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>153</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>154</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.afterCallbacks.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>155</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.add</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Block</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.afterCallbacks</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>156</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>157</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">suite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.suite</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">suite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">suite.parentSuite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>158</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">suite.after_.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>159</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.add</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Block</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">suite.after_</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>160</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>161</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>162</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">runner.after_.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>163</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.add</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Block</span><span class="PUNC">(</span><span class="NAME">this.env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">runner.after_</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>164</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>165</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>166</span>
|
||||||
|
<span class='line'>167</span> </span><span class="NAME">jasmine.Spec.prototype.explodes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>168</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">'explodes function should not have been called'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>169</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>170</span>
|
||||||
|
<span class='line'>171</span> </span><span class="NAME">jasmine.Spec.prototype.spyOn</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">obj</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">ignoreMethodDoesntExist</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>172</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">obj</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>173</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"spyOn could not find an object to spy upon for "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"()"</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>174</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>175</span>
|
||||||
|
<span class='line'>176</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">ignoreMethodDoesntExist</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">[</span><span class="NAME">methodName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>177</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'() method does not exist'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>178</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>179</span>
|
||||||
|
<span class='line'>180</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">ignoreMethodDoesntExist</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">[</span><span class="NAME">methodName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">[</span><span class="NAME">methodName</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">isSpy</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>181</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="NAME">methodName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' has already been spied upon'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>182</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>183</span>
|
||||||
|
<span class='line'>184</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spyObj</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.createSpy</span><span class="PUNC">(</span><span class="NAME">methodName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>185</span>
|
||||||
|
<span class='line'>186</span> </span><span class="WHIT"> </span><span class="NAME">this.spies_.push</span><span class="PUNC">(</span><span class="NAME">spyObj</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>187</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.baseObj</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>188</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.methodName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>189</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.originalValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">[</span><span class="NAME">methodName</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>190</span>
|
||||||
|
<span class='line'>191</span> </span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">[</span><span class="NAME">methodName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">spyObj</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>192</span>
|
||||||
|
<span class='line'>193</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">spyObj</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>194</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>195</span>
|
||||||
|
<span class='line'>196</span> </span><span class="NAME">jasmine.Spec.prototype.removeAllSpies</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>197</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.spies_.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>198</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spy</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.spies_</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>199</span> </span><span class="WHIT"> </span><span class="NAME">spy.baseObj</span><span class="PUNC">[</span><span class="NAME">spy.methodName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">spy.originalValue</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>200</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>201</span> </span><span class="WHIT"> </span><span class="NAME">this.spies_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>202</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>203</span>
|
||||||
|
<span class='line'>204</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,77 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * Internal representation of a Jasmine suite.
|
||||||
|
<span class='line'> 3</span> *
|
||||||
|
<span class='line'> 4</span> * @constructor
|
||||||
|
<span class='line'> 5</span> * @param {jasmine.Env} env
|
||||||
|
<span class='line'> 6</span> * @param {String} description
|
||||||
|
<span class='line'> 7</span> * @param {Function} specDefinitions
|
||||||
|
<span class='line'> 8</span> * @param {jasmine.Suite} parentSuite
|
||||||
|
<span class='line'> 9</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="NAME">jasmine.Suite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">description</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">specDefinitions</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parentSuite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">self</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span> </span><span class="WHIT"> </span><span class="NAME">self.id</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">env.nextSuiteId</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">env.nextSuiteId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="WHIT"> </span><span class="NAME">self.description</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">description</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="NAME">self.queue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Queue</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="NAME">self.parentSuite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parentSuite</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="NAME">self.env</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">env</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="NAME">self.before_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="NAME">self.after_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="NAME">self.specs_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span>
|
||||||
|
<span class='line'> 22</span> </span><span class="NAME">jasmine.Suite.prototype.getFullName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fullName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.description</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parentSuite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.parentSuite</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">parentSuite</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">parentSuite</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parentSuite.parentSuite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="NAME">fullName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parentSuite.description</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">fullName</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">fullName</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span>
|
||||||
|
<span class='line'> 30</span> </span><span class="NAME">jasmine.Suite.prototype.finish</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span> </span><span class="WHIT"> </span><span class="NAME">this.env.reporter.reportSuiteResults</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="NAME">this.finished</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'function'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="WHIT"> </span><span class="NAME">onComplete</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span>
|
||||||
|
<span class='line'> 38</span> </span><span class="NAME">jasmine.Suite.prototype.beforeEach</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">beforeEachFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="NAME">beforeEachFunction.typeName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'beforeEach'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span> </span><span class="WHIT"> </span><span class="NAME">this.before_.push</span><span class="PUNC">(</span><span class="NAME">beforeEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span>
|
||||||
|
<span class='line'> 43</span> </span><span class="NAME">jasmine.Suite.prototype.afterEach</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">afterEachFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="WHIT"> </span><span class="NAME">afterEachFunction.typeName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'afterEach'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="NAME">this.after_.push</span><span class="PUNC">(</span><span class="NAME">afterEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span>
|
||||||
|
<span class='line'> 48</span> </span><span class="NAME">jasmine.Suite.prototype.results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 49</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.queue.results</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 50</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span>
|
||||||
|
<span class='line'> 52</span> </span><span class="NAME">jasmine.Suite.prototype.add</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">block</span><span class="WHIT"> </span><span class="KEYW">instanceof</span><span class="WHIT"> </span><span class="NAME">jasmine.Suite</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="NAME">this.env.currentRunner</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">addSuite</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span> </span><span class="WHIT"> </span><span class="NAME">this.specs_.push</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.add</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span>
|
||||||
|
<span class='line'> 61</span> </span><span class="NAME">jasmine.Suite.prototype.specs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.specs_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span>
|
||||||
|
<span class='line'> 65</span> </span><span class="NAME">jasmine.Suite.prototype.execute</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">self</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span> </span><span class="WHIT"> </span><span class="NAME">this.queue.start</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="WHIT"> </span><span class="NAME">self.finish</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 70</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="NAME">jasmine.WaitsBlock</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">timeout</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 2</span> </span><span class="WHIT"> </span><span class="NAME">this.timeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">timeout</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 3</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Block.call</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 4</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span>
|
||||||
|
<span class='line'> 6</span> </span><span class="NAME">jasmine.util.inherit</span><span class="PUNC">(</span><span class="NAME">jasmine.WaitsBlock</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">jasmine.Block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span>
|
||||||
|
<span class='line'> 8</span> </span><span class="NAME">jasmine.WaitsBlock.prototype.execute</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 9</span> </span><span class="WHIT"> </span><span class="NAME">this.env.reporter.log</span><span class="PUNC">(</span><span class="STRN">'>> Jasmine waiting for '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.timeout</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' ms...'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="NAME">this.env.setTimeout</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="WHIT"> </span><span class="NAME">onComplete</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.timeout</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="NAME">jasmine.WaitsForBlock</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">timeout</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">latchFunction</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 2</span> </span><span class="WHIT"> </span><span class="NAME">this.timeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">timeout</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 3</span> </span><span class="WHIT"> </span><span class="NAME">this.latchFunction</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">latchFunction</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 4</span> </span><span class="WHIT"> </span><span class="NAME">this.message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span> </span><span class="WHIT"> </span><span class="NAME">this.totalTimeSpentWaitingForLatch</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Block.call</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">env</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span>
|
||||||
|
<span class='line'> 9</span> </span><span class="NAME">jasmine.util.inherit</span><span class="PUNC">(</span><span class="NAME">jasmine.WaitsForBlock</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">jasmine.Block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span>
|
||||||
|
<span class='line'> 11</span> </span><span class="NAME">jasmine.WaitsForBlock.TIMEOUT_INCREMENT</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">100</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span>
|
||||||
|
<span class='line'> 13</span> </span><span class="NAME">jasmine.WaitsForBlock.prototype.execute</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">self</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="NAME">self.env.reporter.log</span><span class="PUNC">(</span><span class="STRN">'>> Jasmine waiting for '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">self.message</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="STRN">'something to happen'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">latchFunctionResult</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="NAME">latchFunctionResult</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">self.latchFunction.apply</span><span class="PUNC">(</span><span class="NAME">self.spec</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="NAME">self.spec.fail</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="NAME">onComplete</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span>
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">latchFunctionResult</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="NAME">onComplete</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">self.totalTimeSpentWaitingForLatch</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NAME">self.timeout</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'timed out after '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">self.timeout</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' msec waiting for '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">self.message</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="STRN">'something to happen'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="NAME">self.spec.fail</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span> </span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'timeout'</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT">
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span> </span><span class="WHIT"> </span><span class="NAME">self.spec._next</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="NAME">self.totalTimeSpentWaitingForLatch</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.WaitsForBlock.TIMEOUT_INCREMENT</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="NAME">self.env.setTimeout</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">self.execute</span><span class="PUNC">(</span><span class="NAME">onComplete</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">jasmine.WaitsForBlock.TIMEOUT_INCREMENT</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|
||||||
@@ -0,0 +1,555 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * Top level namespace for Jasmine, a lightweight JavaScript BDD/spec/testing framework.
|
||||||
|
<span class='line'> 3</span> *
|
||||||
|
<span class='line'> 4</span> * @namespace
|
||||||
|
<span class='line'> 5</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">jasmine</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 7</span>
|
||||||
|
<span class='line'> 8</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 9</span> * @private
|
||||||
|
<span class='line'> 10</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="NAME">jasmine.unimplementedMethod_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">"unimplemented method"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span>
|
||||||
|
<span class='line'> 15</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 16</span> * Use <code>jasmine.undefined</code> instead of <code>undefined</code>, since <code>undefined</code is just
|
||||||
|
<span class='line'> 17</span> * a plain old variable and may be redefined by somebody else.
|
||||||
|
<span class='line'> 18</span> *
|
||||||
|
<span class='line'> 19</span> * @private
|
||||||
|
<span class='line'> 20</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="NAME">jasmine.undefined</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.___undefined___</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span>
|
||||||
|
<span class='line'> 23</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 24</span> * Default interval for event loop yields. Small values here may result in slow test running. Zero means no updates until all tests have completed.
|
||||||
|
<span class='line'> 25</span> *
|
||||||
|
<span class='line'> 26</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="NAME">jasmine.DEFAULT_UPDATE_INTERVAL</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">250</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span>
|
||||||
|
<span class='line'> 29</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 30</span> * Allows for bound functions to be compared. Internal use only.
|
||||||
|
<span class='line'> 31</span> *
|
||||||
|
<span class='line'> 32</span> * @ignore
|
||||||
|
<span class='line'> 33</span> * @private
|
||||||
|
<span class='line'> 34</span> * @param base {Object} bound 'this' for the function
|
||||||
|
<span class='line'> 35</span> * @param name {Function} function to find
|
||||||
|
<span class='line'> 36</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="NAME">jasmine.bindOriginal_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">base</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">original</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">base</span><span class="PUNC">[</span><span class="NAME">name</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">original.apply</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">original.apply</span><span class="PUNC">(</span><span class="NAME">base</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 43</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="WHIT"> </span><span class="COMM">// IE support</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">window</span><span class="PUNC">[</span><span class="NAME">name</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span>
|
||||||
|
<span class='line'> 49</span> </span><span class="NAME">jasmine.setTimeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.bindOriginal_</span><span class="PUNC">(</span><span class="NAME">window</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'setTimeout'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 50</span> </span><span class="NAME">jasmine.clearTimeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.bindOriginal_</span><span class="PUNC">(</span><span class="NAME">window</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'clearTimeout'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span> </span><span class="NAME">jasmine.setInterval</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.bindOriginal_</span><span class="PUNC">(</span><span class="NAME">window</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'setInterval'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="NAME">jasmine.clearInterval</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.bindOriginal_</span><span class="PUNC">(</span><span class="NAME">window</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'clearInterval'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span>
|
||||||
|
<span class='line'> 54</span> </span><span class="NAME">jasmine.MessageResult</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">text</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span> </span><span class="WHIT"> </span><span class="NAME">this.type</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'MessageResult'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span> </span><span class="WHIT"> </span><span class="NAME">this.text</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">text</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span> </span><span class="WHIT"> </span><span class="NAME">this.trace</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="COMM">// todo: test better</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span>
|
||||||
|
<span class='line'> 60</span> </span><span class="NAME">jasmine.ExpectationResult</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">params</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="NAME">this.type</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'ExpectationResult'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="NAME">this.matcherName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">params.matcherName</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="WHIT"> </span><span class="NAME">this.passed_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">params.passed</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="NAME">this.expected</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">params.expected</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span> </span><span class="WHIT"> </span><span class="NAME">this.actual</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">params.actual</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span>
|
||||||
|
<span class='line'> 67</span> </span><span class="WHIT"> </span><span class="COMM">/** @deprecated */</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="WHIT"> </span><span class="NAME">this.details</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">params.details</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span> </span><span class="WHIT">
|
||||||
|
<span class='line'> 70</span> </span><span class="NAME">this.message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.passed_</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">'Passed.'</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">params.message</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 71</span> </span><span class="WHIT"> </span><span class="NAME">this.trace</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.passed_</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">''</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="NAME">this.message</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 73</span>
|
||||||
|
<span class='line'> 74</span> </span><span class="NAME">jasmine.ExpectationResult.prototype.passed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 75</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.passed_</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 76</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 77</span>
|
||||||
|
<span class='line'> 78</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 79</span> * Getter for the Jasmine environment. Ensures one gets created
|
||||||
|
<span class='line'> 80</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 81</span> </span><span class="NAME">jasmine.getEnv</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 82</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.currentEnv_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.currentEnv_</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Env</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 83</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 84</span>
|
||||||
|
<span class='line'> 85</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 86</span> * @ignore
|
||||||
|
<span class='line'> 87</span> * @private
|
||||||
|
<span class='line'> 88</span> * @param value
|
||||||
|
<span class='line'> 89</span> * @returns {Boolean}
|
||||||
|
<span class='line'> 90</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 91</span> </span><span class="NAME">jasmine.isArray_</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 92</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||||
|
<span class='line'> 93</span> </span><span class="WHIT"> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'object'</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||||
|
<span class='line'> 94</span> </span><span class="WHIT"> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">value.length</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'number'</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||||
|
<span class='line'> 95</span> </span><span class="WHIT"> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">value.splice</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'function'</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||||
|
<span class='line'> 96</span> </span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">(</span><span class="NAME">value.propertyIsEnumerable</span><span class="PUNC">(</span><span class="STRN">'length'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 97</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 98</span>
|
||||||
|
<span class='line'> 99</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>100</span> * Pretty printer for expecations. Takes any object and turns it into a human-readable string.
|
||||||
|
<span class='line'>101</span> *
|
||||||
|
<span class='line'>102</span> * @param value {Object} an object to be outputted
|
||||||
|
<span class='line'>103</span> * @returns {String}
|
||||||
|
<span class='line'>104</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>105</span> </span><span class="NAME">jasmine.pp</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>106</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">stringPrettyPrinter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.StringPrettyPrinter</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>107</span> </span><span class="WHIT"> </span><span class="NAME">stringPrettyPrinter.format</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>108</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">stringPrettyPrinter.string</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>109</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>110</span>
|
||||||
|
<span class='line'>111</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>112</span> * Returns true if the object is a DOM Node.
|
||||||
|
<span class='line'>113</span> *
|
||||||
|
<span class='line'>114</span> * @param {Object} obj object to check
|
||||||
|
<span class='line'>115</span> * @returns {Boolean}
|
||||||
|
<span class='line'>116</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>117</span> </span><span class="NAME">jasmine.isDomNode</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">obj</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>118</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">[</span><span class="STRN">'nodeType'</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>119</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>120</span>
|
||||||
|
<span class='line'>121</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>122</span> * Returns a matchable 'generic' object of the class type. For use in expecations of type when values don't matter.
|
||||||
|
<span class='line'>123</span> *
|
||||||
|
<span class='line'>124</span> * @example
|
||||||
|
<span class='line'>125</span> * // don't care about which function is passed in, as long as it's a function
|
||||||
|
<span class='line'>126</span> * expect(mySpy).wasCalledWith(jasmine.any(Function));
|
||||||
|
<span class='line'>127</span> *
|
||||||
|
<span class='line'>128</span> * @param {Class} clazz
|
||||||
|
<span class='line'>129</span> * @returns matchable object of the type clazz
|
||||||
|
<span class='line'>130</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>131</span> </span><span class="NAME">jasmine.any</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">clazz</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>132</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Matchers.Any</span><span class="PUNC">(</span><span class="NAME">clazz</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>133</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>134</span>
|
||||||
|
<span class='line'>135</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>136</span> * Jasmine Spies are test doubles that can act as stubs, spies, fakes or when used in an expecation, mocks.
|
||||||
|
<span class='line'>137</span> *
|
||||||
|
<span class='line'>138</span> * Spies should be created in test setup, before expectations. They can then be checked, using the standard Jasmine
|
||||||
|
<span class='line'>139</span> * expectation syntax. Spies can be checked if they were called or not and what the calling params were.
|
||||||
|
<span class='line'>140</span> *
|
||||||
|
<span class='line'>141</span> * A Spy has the following mehtod: wasCalled, callCount, mostRecentCall, and argsForCall (see docs)
|
||||||
|
<span class='line'>142</span> * Spies are torn down at the end of every spec.
|
||||||
|
<span class='line'>143</span> *
|
||||||
|
<span class='line'>144</span> * Note: Do <b>not</b> call new jasmine.Spy() directly - a spy must be created using spyOn, jasmine.createSpy or jasmine.createSpyObj.
|
||||||
|
<span class='line'>145</span> *
|
||||||
|
<span class='line'>146</span> * @example
|
||||||
|
<span class='line'>147</span> * // a stub
|
||||||
|
<span class='line'>148</span> * var myStub = jasmine.createSpy('myStub'); // can be used anywhere
|
||||||
|
<span class='line'>149</span> *
|
||||||
|
<span class='line'>150</span> * // spy example
|
||||||
|
<span class='line'>151</span> * var foo = {
|
||||||
|
<span class='line'>152</span> * not: function(bool) { return !bool; }
|
||||||
|
<span class='line'>153</span> * }
|
||||||
|
<span class='line'>154</span> *
|
||||||
|
<span class='line'>155</span> * // actual foo.not will not be called, execution stops
|
||||||
|
<span class='line'>156</span> * spyOn(foo, 'not');
|
||||||
|
<span class='line'>157</span>
|
||||||
|
<span class='line'>158</span> // foo.not spied upon, execution will continue to implementation
|
||||||
|
<span class='line'>159</span> * spyOn(foo, 'not').andCallThrough();
|
||||||
|
<span class='line'>160</span> *
|
||||||
|
<span class='line'>161</span> * // fake example
|
||||||
|
<span class='line'>162</span> * var foo = {
|
||||||
|
<span class='line'>163</span> * not: function(bool) { return !bool; }
|
||||||
|
<span class='line'>164</span> * }
|
||||||
|
<span class='line'>165</span> *
|
||||||
|
<span class='line'>166</span> * // foo.not(val) will return val
|
||||||
|
<span class='line'>167</span> * spyOn(foo, 'not').andCallFake(function(value) {return value;});
|
||||||
|
<span class='line'>168</span> *
|
||||||
|
<span class='line'>169</span> * // mock example
|
||||||
|
<span class='line'>170</span> * foo.not(7 == 7);
|
||||||
|
<span class='line'>171</span> * expect(foo.not).wasCalled();
|
||||||
|
<span class='line'>172</span> * expect(foo.not).wasCalledWith(true);
|
||||||
|
<span class='line'>173</span> *
|
||||||
|
<span class='line'>174</span> * @constructor
|
||||||
|
<span class='line'>175</span> * @see spyOn, jasmine.createSpy, jasmine.createSpyObj
|
||||||
|
<span class='line'>176</span> * @param {String} name
|
||||||
|
<span class='line'>177</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>178</span> </span><span class="NAME">jasmine.Spy</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">name</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>179</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'>180</span> * The name of the spy, if provided.
|
||||||
|
<span class='line'>181</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>182</span> </span><span class="WHIT"> </span><span class="NAME">this.identity</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">name</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="STRN">'unknown'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>183</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'>184</span> * Is this Object a spy?
|
||||||
|
<span class='line'>185</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>186</span> </span><span class="WHIT"> </span><span class="NAME">this.isSpy</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>187</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'>188</span> * The actual function this spy stubs.
|
||||||
|
<span class='line'>189</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>190</span> </span><span class="WHIT"> </span><span class="NAME">this.plan</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>191</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>192</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'>193</span> * Tracking of the most recent call to the spy.
|
||||||
|
<span class='line'>194</span> * @example
|
||||||
|
<span class='line'>195</span> * var mySpy = jasmine.createSpy('foo');
|
||||||
|
<span class='line'>196</span> * mySpy(1, 2);
|
||||||
|
<span class='line'>197</span> * mySpy.mostRecentCall.args = [1, 2];
|
||||||
|
<span class='line'>198</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>199</span> </span><span class="WHIT"> </span><span class="NAME">this.mostRecentCall</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>200</span>
|
||||||
|
<span class='line'>201</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'>202</span> * Holds arguments for each call to the spy, indexed by call count
|
||||||
|
<span class='line'>203</span> * @example
|
||||||
|
<span class='line'>204</span> * var mySpy = jasmine.createSpy('foo');
|
||||||
|
<span class='line'>205</span> * mySpy(1, 2);
|
||||||
|
<span class='line'>206</span> * mySpy(7, 8);
|
||||||
|
<span class='line'>207</span> * mySpy.mostRecentCall.args = [7, 8];
|
||||||
|
<span class='line'>208</span> * mySpy.argsForCall[0] = [1, 2];
|
||||||
|
<span class='line'>209</span> * mySpy.argsForCall[1] = [7, 8];
|
||||||
|
<span class='line'>210</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>211</span> </span><span class="WHIT"> </span><span class="NAME">this.argsForCall</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>212</span> </span><span class="WHIT"> </span><span class="NAME">this.calls</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>213</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>214</span>
|
||||||
|
<span class='line'>215</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>216</span> * Tells a spy to call through to the actual implemenatation.
|
||||||
|
<span class='line'>217</span> *
|
||||||
|
<span class='line'>218</span> * @example
|
||||||
|
<span class='line'>219</span> * var foo = {
|
||||||
|
<span class='line'>220</span> * bar: function() { // do some stuff }
|
||||||
|
<span class='line'>221</span> * }
|
||||||
|
<span class='line'>222</span> *
|
||||||
|
<span class='line'>223</span> * // defining a spy on an existing property: foo.bar
|
||||||
|
<span class='line'>224</span> * spyOn(foo, 'bar').andCallThrough();
|
||||||
|
<span class='line'>225</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>226</span> </span><span class="NAME">jasmine.Spy.prototype.andCallThrough</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>227</span> </span><span class="WHIT"> </span><span class="NAME">this.plan</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.originalValue</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>228</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>229</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>230</span>
|
||||||
|
<span class='line'>231</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>232</span> * For setting the return value of a spy.
|
||||||
|
<span class='line'>233</span> *
|
||||||
|
<span class='line'>234</span> * @example
|
||||||
|
<span class='line'>235</span> * // defining a spy from scratch: foo() returns 'baz'
|
||||||
|
<span class='line'>236</span> * var foo = jasmine.createSpy('spy on foo').andReturn('baz');
|
||||||
|
<span class='line'>237</span> *
|
||||||
|
<span class='line'>238</span> * // defining a spy on an existing property: foo.bar() returns 'baz'
|
||||||
|
<span class='line'>239</span> * spyOn(foo, 'bar').andReturn('baz');
|
||||||
|
<span class='line'>240</span> *
|
||||||
|
<span class='line'>241</span> * @param {Object} value
|
||||||
|
<span class='line'>242</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>243</span> </span><span class="NAME">jasmine.Spy.prototype.andReturn</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>244</span> </span><span class="WHIT"> </span><span class="NAME">this.plan</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>245</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>246</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>247</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>248</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>249</span>
|
||||||
|
<span class='line'>250</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>251</span> * For throwing an exception when a spy is called.
|
||||||
|
<span class='line'>252</span> *
|
||||||
|
<span class='line'>253</span> * @example
|
||||||
|
<span class='line'>254</span> * // defining a spy from scratch: foo() throws an exception w/ message 'ouch'
|
||||||
|
<span class='line'>255</span> * var foo = jasmine.createSpy('spy on foo').andThrow('baz');
|
||||||
|
<span class='line'>256</span> *
|
||||||
|
<span class='line'>257</span> * // defining a spy on an existing property: foo.bar() throws an exception w/ message 'ouch'
|
||||||
|
<span class='line'>258</span> * spyOn(foo, 'bar').andThrow('baz');
|
||||||
|
<span class='line'>259</span> *
|
||||||
|
<span class='line'>260</span> * @param {String} exceptionMsg
|
||||||
|
<span class='line'>261</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>262</span> </span><span class="NAME">jasmine.Spy.prototype.andThrow</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">exceptionMsg</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>263</span> </span><span class="WHIT"> </span><span class="NAME">this.plan</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>264</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="NAME">exceptionMsg</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>265</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>266</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>267</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>268</span>
|
||||||
|
<span class='line'>269</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>270</span> * Calls an alternate implementation when a spy is called.
|
||||||
|
<span class='line'>271</span> *
|
||||||
|
<span class='line'>272</span> * @example
|
||||||
|
<span class='line'>273</span> * var baz = function() {
|
||||||
|
<span class='line'>274</span> * // do some stuff, return something
|
||||||
|
<span class='line'>275</span> * }
|
||||||
|
<span class='line'>276</span> * // defining a spy from scratch: foo() calls the function baz
|
||||||
|
<span class='line'>277</span> * var foo = jasmine.createSpy('spy on foo').andCall(baz);
|
||||||
|
<span class='line'>278</span> *
|
||||||
|
<span class='line'>279</span> * // defining a spy on an existing property: foo.bar() calls an anonymnous function
|
||||||
|
<span class='line'>280</span> * spyOn(foo, 'bar').andCall(function() { return 'baz';} );
|
||||||
|
<span class='line'>281</span> *
|
||||||
|
<span class='line'>282</span> * @param {Function} fakeFunc
|
||||||
|
<span class='line'>283</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>284</span> </span><span class="NAME">jasmine.Spy.prototype.andCallFake</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">fakeFunc</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>285</span> </span><span class="WHIT"> </span><span class="NAME">this.plan</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">fakeFunc</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>286</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>287</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>288</span>
|
||||||
|
<span class='line'>289</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>290</span> * Resets all of a spy's the tracking variables so that it can be used again.
|
||||||
|
<span class='line'>291</span> *
|
||||||
|
<span class='line'>292</span> * @example
|
||||||
|
<span class='line'>293</span> * spyOn(foo, 'bar');
|
||||||
|
<span class='line'>294</span> *
|
||||||
|
<span class='line'>295</span> * foo.bar();
|
||||||
|
<span class='line'>296</span> *
|
||||||
|
<span class='line'>297</span> * expect(foo.bar.callCount).toEqual(1);
|
||||||
|
<span class='line'>298</span> *
|
||||||
|
<span class='line'>299</span> * foo.bar.reset();
|
||||||
|
<span class='line'>300</span> *
|
||||||
|
<span class='line'>301</span> * expect(foo.bar.callCount).toEqual(0);
|
||||||
|
<span class='line'>302</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>303</span> </span><span class="NAME">jasmine.Spy.prototype.reset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>304</span> </span><span class="WHIT"> </span><span class="NAME">this.wasCalled</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>305</span> </span><span class="WHIT"> </span><span class="NAME">this.callCount</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>306</span> </span><span class="WHIT"> </span><span class="NAME">this.argsForCall</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>307</span> </span><span class="WHIT"> </span><span class="NAME">this.calls</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>308</span> </span><span class="WHIT"> </span><span class="NAME">this.mostRecentCall</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>309</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>310</span>
|
||||||
|
<span class='line'>311</span> </span><span class="NAME">jasmine.createSpy</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">name</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>312</span>
|
||||||
|
<span class='line'>313</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spyObj</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>314</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.wasCalled</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>315</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.callCount</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>316</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">args</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.util.argsToArray</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>317</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.mostRecentCall.object</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>318</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.mostRecentCall.args</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>319</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.argsForCall.push</span><span class="PUNC">(</span><span class="NAME">args</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>320</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.calls.push</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="NAME">object</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">args</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">args</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>321</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">spyObj.plan.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>322</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>323</span>
|
||||||
|
<span class='line'>324</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spy</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.Spy</span><span class="PUNC">(</span><span class="NAME">name</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>325</span>
|
||||||
|
<span class='line'>326</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">prop</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">spy</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>327</span> </span><span class="WHIT"> </span><span class="NAME">spyObj</span><span class="PUNC">[</span><span class="NAME">prop</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">spy</span><span class="PUNC">[</span><span class="NAME">prop</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>328</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>329</span>
|
||||||
|
<span class='line'>330</span> </span><span class="WHIT"> </span><span class="NAME">spyObj.reset</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>331</span>
|
||||||
|
<span class='line'>332</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">spyObj</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>333</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>334</span>
|
||||||
|
<span class='line'>335</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>336</span> * Determines whether an object is a spy.
|
||||||
|
<span class='line'>337</span> *
|
||||||
|
<span class='line'>338</span> * @param {jasmine.Spy|Object} putativeSpy
|
||||||
|
<span class='line'>339</span> * @returns {Boolean}
|
||||||
|
<span class='line'>340</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>341</span> </span><span class="NAME">jasmine.isSpy</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">putativeSpy</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>342</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">putativeSpy</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">putativeSpy.isSpy</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>343</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>344</span>
|
||||||
|
<span class='line'>345</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>346</span> * Creates a more complicated spy: an Object that has every property a function that is a spy. Used for stubbing something
|
||||||
|
<span class='line'>347</span> * large in one call.
|
||||||
|
<span class='line'>348</span> *
|
||||||
|
<span class='line'>349</span> * @param {String} baseName name of spy class
|
||||||
|
<span class='line'>350</span> * @param {Array} methodNames array of names of methods to make spies
|
||||||
|
<span class='line'>351</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>352</span> </span><span class="NAME">jasmine.createSpyObj</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">baseName</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">methodNames</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>353</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>354</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">methodNames.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>355</span> </span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">[</span><span class="NAME">methodNames</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.createSpy</span><span class="PUNC">(</span><span class="NAME">baseName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'.'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">methodNames</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>356</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>357</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">obj</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>358</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>359</span>
|
||||||
|
<span class='line'>360</span> </span><span class="NAME">jasmine.log</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">message</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>361</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">currentSpec.log</span><span class="PUNC">(</span><span class="NAME">message</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>362</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>363</span>
|
||||||
|
<span class='line'>364</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>365</span> * Function that installs a spy on an existing object's method name. Used within a Spec to create a spy.
|
||||||
|
<span class='line'>366</span> *
|
||||||
|
<span class='line'>367</span> * @example
|
||||||
|
<span class='line'>368</span> * // spy example
|
||||||
|
<span class='line'>369</span> * var foo = {
|
||||||
|
<span class='line'>370</span> * not: function(bool) { return !bool; }
|
||||||
|
<span class='line'>371</span> * }
|
||||||
|
<span class='line'>372</span> * spyOn(foo, 'not'); // actual foo.not will not be called, execution stops
|
||||||
|
<span class='line'>373</span> *
|
||||||
|
<span class='line'>374</span> * @see jasmine.createSpy
|
||||||
|
<span class='line'>375</span> * @param obj
|
||||||
|
<span class='line'>376</span> * @param methodName
|
||||||
|
<span class='line'>377</span> * @returns a Jasmine spy that can be chained with all spy methods
|
||||||
|
<span class='line'>378</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>379</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spyOn</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">obj</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>380</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">currentSpec.spyOn</span><span class="PUNC">(</span><span class="NAME">obj</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>381</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>382</span>
|
||||||
|
<span class='line'>383</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>384</span> * Creates a Jasmine spec that will be added to the current suite.
|
||||||
|
<span class='line'>385</span> *
|
||||||
|
<span class='line'>386</span> * // TODO: pending tests
|
||||||
|
<span class='line'>387</span> *
|
||||||
|
<span class='line'>388</span> * @example
|
||||||
|
<span class='line'>389</span> * it('should be true', function() {
|
||||||
|
<span class='line'>390</span> * expect(true).toEqual(true);
|
||||||
|
<span class='line'>391</span> * });
|
||||||
|
<span class='line'>392</span> *
|
||||||
|
<span class='line'>393</span> * @param {String} desc description of this specification
|
||||||
|
<span class='line'>394</span> * @param {Function} func defines the preconditions and expectations of the spec
|
||||||
|
<span class='line'>395</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>396</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">it</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">desc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>397</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">it</span><span class="PUNC">(</span><span class="NAME">desc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>398</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>399</span>
|
||||||
|
<span class='line'>400</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>401</span> * Creates a <em>disabled</em> Jasmine spec.
|
||||||
|
<span class='line'>402</span> *
|
||||||
|
<span class='line'>403</span> * A convenience method that allows existing specs to be disabled temporarily during development.
|
||||||
|
<span class='line'>404</span> *
|
||||||
|
<span class='line'>405</span> * @param {String} desc description of this specification
|
||||||
|
<span class='line'>406</span> * @param {Function} func defines the preconditions and expectations of the spec
|
||||||
|
<span class='line'>407</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>408</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">xit</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">desc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>409</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">xit</span><span class="PUNC">(</span><span class="NAME">desc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>410</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>411</span>
|
||||||
|
<span class='line'>412</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>413</span> * Starts a chain for a Jasmine expectation.
|
||||||
|
<span class='line'>414</span> *
|
||||||
|
<span class='line'>415</span> * It is passed an Object that is the actual value and should chain to one of the many
|
||||||
|
<span class='line'>416</span> * jasmine.Matchers functions.
|
||||||
|
<span class='line'>417</span> *
|
||||||
|
<span class='line'>418</span> * @param {Object} actual Actual value to test against and expected value
|
||||||
|
<span class='line'>419</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>420</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">expect</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">actual</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>421</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">currentSpec.expect</span><span class="PUNC">(</span><span class="NAME">actual</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>422</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>423</span>
|
||||||
|
<span class='line'>424</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>425</span> * Defines part of a jasmine spec. Used in cominbination with waits or waitsFor in asynchrnous specs.
|
||||||
|
<span class='line'>426</span> *
|
||||||
|
<span class='line'>427</span> * @param {Function} func Function that defines part of a jasmine spec.
|
||||||
|
<span class='line'>428</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>429</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">runs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">func</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>430</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">currentSpec.runs</span><span class="PUNC">(</span><span class="NAME">func</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>431</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>432</span>
|
||||||
|
<span class='line'>433</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>434</span> * Waits for a timeout before moving to the next runs()-defined block.
|
||||||
|
<span class='line'>435</span> * @param {Number} timeout
|
||||||
|
<span class='line'>436</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>437</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">waits</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeout</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>438</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">currentSpec.waits</span><span class="PUNC">(</span><span class="NAME">timeout</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>439</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>440</span>
|
||||||
|
<span class='line'>441</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>442</span> * Waits for the latchFunction to return true before proceeding to the next runs()-defined block.
|
||||||
|
<span class='line'>443</span> *
|
||||||
|
<span class='line'>444</span> * @param {Number} timeout
|
||||||
|
<span class='line'>445</span> * @param {Function} latchFunction
|
||||||
|
<span class='line'>446</span> * @param {String} message
|
||||||
|
<span class='line'>447</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>448</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">waitsFor</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeout</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">latchFunction</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>449</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">currentSpec.waitsFor</span><span class="PUNC">(</span><span class="NAME">timeout</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">latchFunction</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>450</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>451</span>
|
||||||
|
<span class='line'>452</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>453</span> * A function that is called before each spec in a suite.
|
||||||
|
<span class='line'>454</span> *
|
||||||
|
<span class='line'>455</span> * Used for spec setup, including validating assumptions.
|
||||||
|
<span class='line'>456</span> *
|
||||||
|
<span class='line'>457</span> * @param {Function} beforeEachFunction
|
||||||
|
<span class='line'>458</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>459</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">beforeEach</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">beforeEachFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>460</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">beforeEach</span><span class="PUNC">(</span><span class="NAME">beforeEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>461</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>462</span>
|
||||||
|
<span class='line'>463</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>464</span> * A function that is called after each spec in a suite.
|
||||||
|
<span class='line'>465</span> *
|
||||||
|
<span class='line'>466</span> * Used for restoring any state that is hijacked during spec execution.
|
||||||
|
<span class='line'>467</span> *
|
||||||
|
<span class='line'>468</span> * @param {Function} afterEachFunction
|
||||||
|
<span class='line'>469</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>470</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">afterEach</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">afterEachFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>471</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">afterEach</span><span class="PUNC">(</span><span class="NAME">afterEachFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>472</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>473</span>
|
||||||
|
<span class='line'>474</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>475</span> * Defines a suite of specifications.
|
||||||
|
<span class='line'>476</span> *
|
||||||
|
<span class='line'>477</span> * Stores the description and all defined specs in the Jasmine environment as one suite of specs. Variables declared
|
||||||
|
<span class='line'>478</span> * are accessible by calls to beforeEach, it, and afterEach. Describe blocks can be nested, allowing for specialization
|
||||||
|
<span class='line'>479</span> * of setup in some tests.
|
||||||
|
<span class='line'>480</span> *
|
||||||
|
<span class='line'>481</span> * @example
|
||||||
|
<span class='line'>482</span> * // TODO: a simple suite
|
||||||
|
<span class='line'>483</span> *
|
||||||
|
<span class='line'>484</span> * // TODO: a simple suite with a nested describe block
|
||||||
|
<span class='line'>485</span> *
|
||||||
|
<span class='line'>486</span> * @param {String} description A string, usually the class under test.
|
||||||
|
<span class='line'>487</span> * @param {Function} specDefinitions function that defines several specs.
|
||||||
|
<span class='line'>488</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>489</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">describe</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">description</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">specDefinitions</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>490</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">describe</span><span class="PUNC">(</span><span class="NAME">description</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">specDefinitions</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>491</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>492</span>
|
||||||
|
<span class='line'>493</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>494</span> * Disables a suite of specifications. Used to disable some suites in a file, or files, temporarily during development.
|
||||||
|
<span class='line'>495</span> *
|
||||||
|
<span class='line'>496</span> * @param {String} description A string, usually the class under test.
|
||||||
|
<span class='line'>497</span> * @param {Function} specDefinitions function that defines several specs.
|
||||||
|
<span class='line'>498</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>499</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">xdescribe</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">description</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">specDefinitions</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>500</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">xdescribe</span><span class="PUNC">(</span><span class="NAME">description</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">specDefinitions</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>501</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>502</span>
|
||||||
|
<span class='line'>503</span>
|
||||||
|
<span class='line'>504</span> </span><span class="COMM">// Provide the XMLHttpRequest class for IE 5.x-6.x:</span><span class="WHIT">
|
||||||
|
<span class='line'>505</span> </span><span class="NAME">jasmine.XmlHttpRequest</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">XMLHttpRequest</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>506</span> </span><span class="WHIT"> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>507</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">ActiveXObject</span><span class="PUNC">(</span><span class="STRN">"Msxml2.XMLHTTP.6.0"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>508</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>509</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>510</span> </span><span class="WHIT"> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>511</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">ActiveXObject</span><span class="PUNC">(</span><span class="STRN">"Msxml2.XMLHTTP.3.0"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>512</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>513</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>514</span> </span><span class="WHIT"> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>515</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">ActiveXObject</span><span class="PUNC">(</span><span class="STRN">"Msxml2.XMLHTTP"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>516</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>517</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>518</span> </span><span class="WHIT"> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>519</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">ActiveXObject</span><span class="PUNC">(</span><span class="STRN">"Microsoft.XMLHTTP"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>520</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>521</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>522</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">"This browser does not support XMLHttpRequest."</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>523</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">XMLHttpRequest</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>524</span>
|
||||||
|
<span class='line'>525</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'>526</span> * Adds suite files to an HTML document so that they are executed, thus adding them to the current
|
||||||
|
<span class='line'>527</span> * Jasmine environment.
|
||||||
|
<span class='line'>528</span> *
|
||||||
|
<span class='line'>529</span> * @param {String} url path to the file to include
|
||||||
|
<span class='line'>530</span> * @param {Boolean} opt_global
|
||||||
|
<span class='line'>531</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'>532</span> </span><span class="NAME">jasmine.include</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">url</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">opt_global</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>533</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">opt_global</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>534</span> </span><span class="WHIT"> </span><span class="NAME">document.write</span><span class="PUNC">(</span><span class="STRN">'<script type="text/javascript" src="'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'"></'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'script>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>535</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>536</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">xhr</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>537</span> </span><span class="WHIT"> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>538</span> </span><span class="WHIT"> </span><span class="NAME">xhr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.XmlHttpRequest</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>539</span> </span><span class="WHIT"> </span><span class="NAME">xhr.open</span><span class="PUNC">(</span><span class="STRN">"GET"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>540</span> </span><span class="WHIT"> </span><span class="NAME">xhr.send</span><span class="PUNC">(</span><span class="KEYW">null</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>541</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>542</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">"couldn't fetch "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">": "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>543</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>544</span>
|
||||||
|
<span class='line'>545</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">eval</span><span class="PUNC">(</span><span class="NAME">xhr.responseText</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>546</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>547</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>548</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,185 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">// Mock setTimeout, clearTimeout</span><span class="WHIT">
|
||||||
|
<span class='line'> 2</span> </span><span class="COMM">// Contributed by Pivotal Computer Systems, www.pivotalsf.com</span><span class="WHIT">
|
||||||
|
<span class='line'> 3</span>
|
||||||
|
<span class='line'> 4</span> </span><span class="NAME">jasmine.FakeTimer</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span> </span><span class="WHIT"> </span><span class="NAME">this.reset</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 6</span>
|
||||||
|
<span class='line'> 7</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">self</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 8</span> </span><span class="WHIT"> </span><span class="NAME">self.setTimeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 9</span> </span><span class="WHIT"> </span><span class="NAME">self.timeoutsMade</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 10</span> </span><span class="WHIT"> </span><span class="NAME">self.scheduleFunction</span><span class="PUNC">(</span><span class="NAME">self.timeoutsMade</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 11</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">self.timeoutsMade</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 12</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span>
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="NAME">self.setInterval</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 15</span> </span><span class="WHIT"> </span><span class="NAME">self.timeoutsMade</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="NAME">self.scheduleFunction</span><span class="PUNC">(</span><span class="NAME">self.timeoutsMade</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">self.timeoutsMade</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span>
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="NAME">self.clearTimeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeoutKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="WHIT"> </span><span class="NAME">self.scheduledFunctions</span><span class="PUNC">[</span><span class="NAME">timeoutKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 23</span>
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="NAME">self.clearInterval</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeoutKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="NAME">self.scheduledFunctions</span><span class="PUNC">[</span><span class="NAME">timeoutKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span>
|
||||||
|
<span class='line'> 28</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span>
|
||||||
|
<span class='line'> 30</span> </span><span class="NAME">jasmine.FakeTimer.prototype.reset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span> </span><span class="WHIT"> </span><span class="NAME">this.timeoutsMade</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="NAME">this.scheduledFunctions</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span> </span><span class="WHIT"> </span><span class="NAME">this.nowMillis</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 34</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span>
|
||||||
|
<span class='line'> 36</span> </span><span class="NAME">jasmine.FakeTimer.prototype.tick</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">millis</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">oldMillis</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.nowMillis</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">newMillis</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">oldMillis</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="NAME">this.runFunctionsWithinRange</span><span class="PUNC">(</span><span class="NAME">oldMillis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">newMillis</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span> </span><span class="WHIT"> </span><span class="NAME">this.nowMillis</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">newMillis</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 41</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span>
|
||||||
|
<span class='line'> 43</span> </span><span class="NAME">jasmine.FakeTimer.prototype.runFunctionsWithinRange</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">oldMillis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">nowMillis</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">scheduledFunc</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">funcsToRun</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">timeoutKey</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">this.scheduledFunctions</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="NAME">scheduledFunc</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.scheduledFunctions</span><span class="PUNC">[</span><span class="NAME">timeoutKey</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">scheduledFunc</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||||
|
<span class='line'> 49</span> </span><span class="WHIT"> </span><span class="NAME">scheduledFunc.runAtMillis</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NAME">oldMillis</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||||
|
<span class='line'> 50</span> </span><span class="WHIT"> </span><span class="NAME">scheduledFunc.runAtMillis</span><span class="WHIT"> </span><span class="PUNC"><=</span><span class="WHIT"> </span><span class="NAME">nowMillis</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span> </span><span class="WHIT"> </span><span class="NAME">funcsToRun.push</span><span class="PUNC">(</span><span class="NAME">scheduledFunc</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="NAME">this.scheduledFunctions</span><span class="PUNC">[</span><span class="NAME">timeoutKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span>
|
||||||
|
<span class='line'> 56</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">funcsToRun.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 57</span> </span><span class="WHIT"> </span><span class="NAME">funcsToRun.sort</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">a</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">a.runAtMillis</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">b.runAtMillis</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">funcsToRun.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">++</span><span class="NAME">i</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">funcToRun</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">funcsToRun</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 63</span> </span><span class="WHIT"> </span><span class="NAME">this.nowMillis</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">funcToRun.runAtMillis</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="NAME">funcToRun.funcToCall</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">funcToRun.recurring</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span> </span><span class="WHIT"> </span><span class="NAME">this.scheduleFunction</span><span class="PUNC">(</span><span class="NAME">funcToRun.timeoutKey</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span> </span><span class="WHIT"> </span><span class="NAME">funcToRun.funcToCall</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 68</span> </span><span class="WHIT"> </span><span class="NAME">funcToRun.millis</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 69</span> </span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 70</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 71</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 72</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 73</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 74</span> </span><span class="WHIT"> </span><span class="NAME">this.runFunctionsWithinRange</span><span class="PUNC">(</span><span class="NAME">oldMillis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">nowMillis</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 75</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 76</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 77</span>
|
||||||
|
<span class='line'> 78</span> </span><span class="NAME">jasmine.FakeTimer.prototype.scheduleFunction</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeoutKey</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">recurring</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 79</span> </span><span class="WHIT"> </span><span class="NAME">this.scheduledFunctions</span><span class="PUNC">[</span><span class="NAME">timeoutKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 80</span> </span><span class="WHIT"> </span><span class="NAME">runAtMillis</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.nowMillis</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 81</span> </span><span class="WHIT"> </span><span class="NAME">funcToCall</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 82</span> </span><span class="WHIT"> </span><span class="NAME">recurring</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">recurring</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 83</span> </span><span class="WHIT"> </span><span class="NAME">timeoutKey</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">timeoutKey</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 84</span> </span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="WHIT">
|
||||||
|
<span class='line'> 85</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 86</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 87</span>
|
||||||
|
<span class='line'> 88</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 89</span> * @namespace
|
||||||
|
<span class='line'> 90</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 91</span> </span><span class="NAME">jasmine.Clock</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 92</span> </span><span class="WHIT"> </span><span class="NAME">defaultFakeTimer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">jasmine.FakeTimer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 93</span>
|
||||||
|
<span class='line'> 94</span> </span><span class="WHIT"> </span><span class="NAME">reset</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 95</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.assertInstalled</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 96</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.defaultFakeTimer.reset</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 97</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'> 98</span>
|
||||||
|
<span class='line'> 99</span> </span><span class="WHIT"> </span><span class="NAME">tick</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">millis</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>100</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.assertInstalled</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>101</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.defaultFakeTimer.tick</span><span class="PUNC">(</span><span class="NAME">millis</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>102</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>103</span>
|
||||||
|
<span class='line'>104</span> </span><span class="WHIT"> </span><span class="NAME">runFunctionsWithinRange</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">oldMillis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">nowMillis</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>105</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.defaultFakeTimer.runFunctionsWithinRange</span><span class="PUNC">(</span><span class="NAME">oldMillis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">nowMillis</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>106</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>107</span>
|
||||||
|
<span class='line'>108</span> </span><span class="WHIT"> </span><span class="NAME">scheduleFunction</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeoutKey</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">recurring</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>109</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.defaultFakeTimer.scheduleFunction</span><span class="PUNC">(</span><span class="NAME">timeoutKey</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">recurring</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>110</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>111</span>
|
||||||
|
<span class='line'>112</span> </span><span class="WHIT"> </span><span class="NAME">useMock</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>113</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spec</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.getEnv</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">currentSpec</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>114</span> </span><span class="WHIT"> </span><span class="NAME">spec.after</span><span class="PUNC">(</span><span class="NAME">jasmine.Clock.uninstallMock</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>115</span>
|
||||||
|
<span class='line'>116</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installMock</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>117</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>118</span>
|
||||||
|
<span class='line'>119</span> </span><span class="WHIT"> </span><span class="NAME">installMock</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>120</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.defaultFakeTimer</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>121</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>122</span>
|
||||||
|
<span class='line'>123</span> </span><span class="WHIT"> </span><span class="NAME">uninstallMock</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>124</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.assertInstalled</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>125</span> </span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.real</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>126</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>127</span>
|
||||||
|
<span class='line'>128</span> </span><span class="WHIT"> </span><span class="NAME">real</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>129</span> </span><span class="WHIT"> </span><span class="NAME">setTimeout</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">window.setTimeout</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>130</span> </span><span class="WHIT"> </span><span class="NAME">clearTimeout</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">window.clearTimeout</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>131</span> </span><span class="WHIT"> </span><span class="NAME">setInterval</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">window.setInterval</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>132</span> </span><span class="WHIT"> </span><span class="NAME">clearInterval</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">window.clearInterval</span><span class="WHIT">
|
||||||
|
<span class='line'>133</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>134</span>
|
||||||
|
<span class='line'>135</span> </span><span class="WHIT"> </span><span class="NAME">assertInstalled</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>136</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.Clock.installed</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.defaultFakeTimer</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>137</span> </span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Error</span><span class="PUNC">(</span><span class="STRN">"Mock clock is not installed, use jasmine.Clock.useMock()"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>138</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>139</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||||
|
<span class='line'>140</span>
|
||||||
|
<span class='line'>141</span> </span><span class="WHIT"> </span><span class="NAME">installed</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT">
|
||||||
|
<span class='line'>142</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>143</span> </span><span class="NAME">jasmine.Clock.installed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.real</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>144</span>
|
||||||
|
<span class='line'>145</span> </span><span class="COMM">//else for IE support</span><span class="WHIT">
|
||||||
|
<span class='line'>146</span> </span><span class="NAME">window.setTimeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>147</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.Clock.installed.setTimeout.apply</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>148</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed.setTimeout.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>149</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>150</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed.setTimeout</span><span class="PUNC">(</span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>151</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>152</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>153</span>
|
||||||
|
<span class='line'>154</span> </span><span class="NAME">window.setInterval</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>155</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.Clock.installed.setInterval.apply</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>156</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed.setInterval.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>157</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>158</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed.setInterval</span><span class="PUNC">(</span><span class="NAME">funcToCall</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">millis</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>159</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>160</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>161</span>
|
||||||
|
<span class='line'>162</span> </span><span class="NAME">window.clearTimeout</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeoutKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>163</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.Clock.installed.clearTimeout.apply</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>164</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed.clearTimeout.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>165</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>166</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed.clearTimeout</span><span class="PUNC">(</span><span class="NAME">timeoutKey</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>167</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>168</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>169</span>
|
||||||
|
<span class='line'>170</span> </span><span class="NAME">window.clearInterval</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">timeoutKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>171</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">jasmine.Clock.installed.clearTimeout.apply</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>172</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed.clearInterval.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>173</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'>174</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">jasmine.Clock.installed.clearInterval</span><span class="PUNC">(</span><span class="NAME">timeoutKey</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>175</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'>176</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'>177</span>
|
||||||
|
<span class='line'>178</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
|
||||||
|
.KEYW {color: #933;}
|
||||||
|
.COMM {color: #bbb; font-style: italic;}
|
||||||
|
.NUMB {color: #393;}
|
||||||
|
.STRN {color: #393;}
|
||||||
|
.REGX {color: #339;}
|
||||||
|
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||||
|
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
|
||||||
|
<span class='line'> 2</span> * @namespace
|
||||||
|
<span class='line'> 3</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 4</span> </span><span class="NAME">jasmine.util</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 5</span>
|
||||||
|
<span class='line'> 6</span> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 7</span> * Declare that a child class inherit it's prototype from the parent class.
|
||||||
|
<span class='line'> 8</span> *
|
||||||
|
<span class='line'> 9</span> * @private
|
||||||
|
<span class='line'> 10</span> * @param {Function} childClass
|
||||||
|
<span class='line'> 11</span> * @param {Function} parentClass
|
||||||
|
<span class='line'> 12</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 13</span> </span><span class="NAME">jasmine.util.inherit</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">childClass</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parentClass</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 14</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||||
|
<span class='line'> 15</span> * @private
|
||||||
|
<span class='line'> 16</span> */</span><span class="WHIT">
|
||||||
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">subclass</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 18</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 19</span> </span><span class="WHIT"> </span><span class="NAME">subclass.prototype</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parentClass.prototype</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 20</span> </span><span class="WHIT"> </span><span class="NAME">childClass.prototype</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">subclass</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 21</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 22</span>
|
||||||
|
<span class='line'> 23</span> </span><span class="NAME">jasmine.util.formatException</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">lineNumber</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e.line</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="NAME">lineNumber</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">e.line</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 28</span> </span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e.lineNumber</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="NAME">lineNumber</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">e.lineNumber</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 30</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 31</span>
|
||||||
|
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">file</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 33</span>
|
||||||
|
<span class='line'> 34</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e.sourceURL</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="NAME">file</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">e.sourceURL</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e.fileName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="NAME">file</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">e.fileName</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 40</span>
|
||||||
|
<span class='line'> 41</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e.name</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">e.message</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e.name</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">': '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">e.message</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">e.toString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 42</span>
|
||||||
|
<span class='line'> 43</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">file</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">lineNumber</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 44</span> </span><span class="WHIT"> </span><span class="NAME">message</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">' in '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">file</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' (line '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">lineNumber</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">')'</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||||
|
<span class='line'> 46</span>
|
||||||
|
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">message</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 48</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 49</span>
|
||||||
|
<span class='line'> 50</span> </span><span class="NAME">jasmine.util.htmlEscape</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 51</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">str</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">str</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">str.replace</span><span class="PUNC">(</span><span class="REGX">/&/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'&'</span><span class="PUNC">)</span><span class="WHIT">
|
||||||
|
<span class='line'> 53</span> </span><span class="WHIT"> </span><span class="PUNC">.</span><span class="NAME">replace</span><span class="PUNC">(</span><span class="REGX">/</g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'<'</span><span class="PUNC">)</span><span class="WHIT">
|
||||||
|
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="PUNC">.</span><span class="NAME">replace</span><span class="PUNC">(</span><span class="REGX">/>/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 55</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 56</span>
|
||||||
|
<span class='line'> 57</span> </span><span class="NAME">jasmine.util.argsToArray</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">args</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 58</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">arrayOfArgs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 59</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">args.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">arrayOfArgs.push</span><span class="PUNC">(</span><span class="NAME">args</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">arrayOfArgs</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 61</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 62</span>
|
||||||
|
<span class='line'> 63</span> </span><span class="NAME">jasmine.util.extend</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">destination</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">source</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||||
|
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">property</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">source</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">destination</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">source</span><span class="PUNC">[</span><span class="NAME">property</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 65</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">destination</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 66</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||||
|
<span class='line'> 67</span>
|
||||||
|
<span class='line'> 68</span> </span></pre></body></html>
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||||
|
"http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Jasmine Test Runner</title>
|
||||||
|
</head>
|
||||||
|
<script type="text/javascript" src="../../lib/jasmine-0.10.1.js"></script>
|
||||||
|
<script type="text/javascript" src="../../lib/TrivialReporter.js"></script>
|
||||||
|
<script type="text/javascript" src="../../lib/consolex.js"></script>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../../lib/jasmine.css">
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
jasmine.include('spec/example_suite.js', true);
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
var jasmineEnv = jasmine.getEnv();
|
||||||
|
jasmineEnv.reporter = new jasmine.TrivialReporter();
|
||||||
|
jasmineEnv.execute();
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
require File.expand_path(File.join(File.dirname(__FILE__), "spec/jasmine_helper.rb"))
|
||||||
|
|
||||||
|
namespace :test do
|
||||||
|
desc "Run continuous integration tests"
|
||||||
|
task :ci => :'ci:local'
|
||||||
|
namespace :ci do
|
||||||
|
require "spec"
|
||||||
|
require 'spec/rake/spectask'
|
||||||
|
|
||||||
|
Spec::Rake::SpecTask.new(:local) do |t|
|
||||||
|
t.spec_opts = ["--color", "--format", "specdoc"]
|
||||||
|
t.spec_files = ["spec/jasmine_spec.rb"]
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Run continuous integration tests using Sauce Labs 'Selenium in the Cloud'"
|
||||||
|
task :saucelabs do
|
||||||
|
ENV['SAUCELABS'] = 'true'
|
||||||
|
Rake::Task['test:ci:local'].invoke
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Run specs via server"
|
||||||
|
task :jasmine_server do
|
||||||
|
require File.expand_path(File.join(JasmineHelper.jasmine_root, "contrib/ruby/jasmine_spec_builder"))
|
||||||
|
|
||||||
|
puts "your tests are here:"
|
||||||
|
puts " http://localhost:8888/run.html"
|
||||||
|
|
||||||
|
Jasmine::SimpleServer.start(8888,
|
||||||
|
lambda { JasmineHelper.specs },
|
||||||
|
JasmineHelper.dir_mappings)
|
||||||
|
end
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
describe('ExampleSuite', function () {
|
||||||
|
it('should have a passing test', function() {
|
||||||
|
expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('Nested Describe', function () {
|
||||||
|
it('should also have a passing test', function () {
|
||||||
|
expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
class JasmineHelper
|
||||||
|
def self.jasmine_lib_dir
|
||||||
|
File.expand_path(File.join(jasmine_root, 'lib'))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.jasmine_root
|
||||||
|
File.expand_path(File.join(File.dirname(__FILE__), '..', '..', '..'))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.jasmine
|
||||||
|
['/lib/' + File.basename(Dir.glob("#{JasmineHelper.jasmine_lib_dir}/jasmine*.js").first)] +
|
||||||
|
['/lib/json2.js',
|
||||||
|
'/lib/TrivialReporter.js',
|
||||||
|
'/lib/consolex.js'
|
||||||
|
]
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.jasmine_src_dir
|
||||||
|
File.expand_path(File.join(jasmine_root, 'src'))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.jasmine_spec_dir
|
||||||
|
File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec'))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.raw_spec_files
|
||||||
|
Dir.glob(File.join(jasmine_spec_dir, "**/*[Ss]pec.js"))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.specs
|
||||||
|
raw_spec_files.collect {|f| f.sub(jasmine_spec_dir, "/spec")}
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.dir_mappings
|
||||||
|
{
|
||||||
|
"/src" => jasmine_src_dir,
|
||||||
|
"/spec" => jasmine_spec_dir,
|
||||||
|
"/lib" => jasmine_lib_dir
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
require 'rubygems'
|
||||||
|
require File.expand_path(File.join(File.dirname(__FILE__), "jasmine_helper.rb"))
|
||||||
|
require File.expand_path(File.join(JasmineHelper.jasmine_root, "contrib/ruby/jasmine_spec_builder"))
|
||||||
|
|
||||||
|
jasmine_runner = if ENV['SAUCELABS'] == 'true'
|
||||||
|
require 'sauce_tunnel'
|
||||||
|
require 'selenium_config'
|
||||||
|
Jasmine::SauceLabsRunner.new(JasmineHelper.specs,
|
||||||
|
JasmineHelper.dir_mappings,
|
||||||
|
:saucelabs_config => 'saucelabs',
|
||||||
|
:saucelabs_config_file => File.expand_path(File.join(File.dirname(__FILE__), "saucelabs.yml")))
|
||||||
|
else
|
||||||
|
require "selenium_rc"
|
||||||
|
Jasmine::Runner.new(SeleniumRC::Server.new('localhost').jar_path,
|
||||||
|
JasmineHelper.specs,
|
||||||
|
JasmineHelper.dir_mappings)
|
||||||
|
end
|
||||||
|
|
||||||
|
spec_builder = Jasmine::SpecBuilder.new(JasmineHelper.raw_spec_files, jasmine_runner)
|
||||||
|
|
||||||
|
should_stop = false
|
||||||
|
|
||||||
|
Spec::Runner.configure do |config|
|
||||||
|
config.after(:suite) do
|
||||||
|
spec_builder.stop if should_stop
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
spec_builder.start
|
||||||
|
should_stop = true
|
||||||
|
spec_builder.declare_suites
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
local:
|
||||||
|
application_framework: :selenium
|
||||||
|
#
|
||||||
|
# Possible Sauce Labs configurations as of 2009/11/19
|
||||||
|
# From: http://saucelabs.com/products/docs/sauce-ondemand/browsers
|
||||||
|
# os: "Windows 2003"
|
||||||
|
# browser: "iexplore"
|
||||||
|
# browser-version: "6.", "7.", "8."
|
||||||
|
# browser: "firefox"
|
||||||
|
# browser-version: "2.", "3.0", "3.5"
|
||||||
|
# browser: "safari"
|
||||||
|
# browser-version: "3.", "4."
|
||||||
|
# browser: "opera"
|
||||||
|
# browser-version: "9."
|
||||||
|
# browser: "googlechrome"
|
||||||
|
# browser-version: ""
|
||||||
|
# os: "Linux"
|
||||||
|
# browser: "firefox"
|
||||||
|
# browser-version: "3."
|
||||||
|
saucelabs:
|
||||||
|
application_framework: :external
|
||||||
|
selenium_server_address: "saucelabs.com"
|
||||||
|
selenium_browser_key: '{"username": "--YOUR-SAUCELABS-USERNAME--", "access-key": "--YOUR-SAUCELABS-ACCESS-KEY--", "os": "Linux", "browser": "firefox", "browser-version": "3."}'
|
||||||
|
application_port: "80"
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
---
|
||||||
|
gems:
|
||||||
|
- name: rake
|
||||||
|
version: 0.8.7
|
||||||
|
- name: ragaskar-jsdoc_helper
|
||||||
|
version: 0.0.2.1
|
||||||
|
- name: json
|
||||||
|
version: 1.1.9
|
||||||
|
- name: selenium-rc
|
||||||
|
version: 2.2.0
|
||||||
|
- name: rack
|
||||||
|
version: 1.0.0
|
||||||
|
- name: thin
|
||||||
|
version: 1.2.4
|
||||||
|
- name: eventmachine
|
||||||
|
version: 0.12.8
|
||||||
|
- name: rspec
|
||||||
|
version: 1.2.9
|
||||||
|
- name: selenium-client
|
||||||
|
version: 1.2.18
|
||||||
|
- name: rest-client
|
||||||
|
version: 1.0.3
|
||||||
|
- name: saucelabs-adapter
|
||||||
|
version: 0.3.2
|
||||||
|
install_options: --source=http://gems.pivotallabs.com
|
||||||
+75
-25
@@ -1,4 +1,6 @@
|
|||||||
jasmine.TrivialReporter = function() {
|
jasmine.TrivialReporter = function(doc) {
|
||||||
|
this.document = doc || document;
|
||||||
|
this.suiteDivs = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.TrivialReporter.prototype.createDom = function(type, attrs, childrenVarArgs) {
|
jasmine.TrivialReporter.prototype.createDom = function(type, attrs, childrenVarArgs) {
|
||||||
@@ -10,58 +12,106 @@ jasmine.TrivialReporter.prototype.createDom = function(type, attrs, childrenVarA
|
|||||||
if (typeof child === 'string') {
|
if (typeof child === 'string') {
|
||||||
el.appendChild(document.createTextNode(child));
|
el.appendChild(document.createTextNode(child));
|
||||||
} else {
|
} else {
|
||||||
el.appendChild(child);
|
if (child) { el.appendChild(child); }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var attr in attrs) {
|
for (var attr in attrs) {
|
||||||
if (attr == 'className') {
|
|
||||||
el.setAttribute('class', attrs[attr]);
|
|
||||||
} else {
|
|
||||||
el[attr] = attrs[attr];
|
el[attr] = attrs[attr];
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return el;
|
return el;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.TrivialReporter.prototype.reportRunnerStarting = function(runner) {
|
||||||
|
var suites = runner.suites();
|
||||||
|
|
||||||
|
this.runnerDiv = this.createDom('div', { className: 'runner running' },
|
||||||
|
this.createDom('a', { className: 'run_spec', href: '?' }, "run all"),
|
||||||
|
this.runnerMessageSpan = this.createDom('span', {}, "Running..."));
|
||||||
|
this.document.body.appendChild(this.runnerDiv);
|
||||||
|
|
||||||
|
for (var i = 0; i < suites.length; i++) {
|
||||||
|
var suite = suites[i];
|
||||||
|
var suiteDiv = this.createDom('div', { className: 'suite' },
|
||||||
|
this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, "run"),
|
||||||
|
this.createDom('a', { className: 'description', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, suite.description));
|
||||||
|
this.suiteDivs[suite.getFullName()] = suiteDiv;
|
||||||
|
var parentDiv = this.document.body;
|
||||||
|
if (suite.parentSuite) {
|
||||||
|
parentDiv = this.suiteDivs[suite.parentSuite.getFullName()];
|
||||||
|
}
|
||||||
|
parentDiv.appendChild(suiteDiv);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.startedAt = new Date();
|
||||||
|
};
|
||||||
|
|
||||||
jasmine.TrivialReporter.prototype.reportRunnerResults = function(runner) {
|
jasmine.TrivialReporter.prototype.reportRunnerResults = function(runner) {
|
||||||
console.log(runner);
|
var results = runner.results();
|
||||||
|
var className = (results.failedCount > 0) ? "runner failed" : "runner passed";
|
||||||
|
this.runnerDiv.setAttribute("class", className);
|
||||||
|
//do it twice for IE
|
||||||
|
this.runnerDiv.setAttribute("className", className);
|
||||||
|
var specs = runner.specs();
|
||||||
|
var specCount = 0;
|
||||||
|
for (var i = 0; i < specs.length; i++) {
|
||||||
|
if (this.specFilter(specs[i])) {
|
||||||
|
specCount++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var message = "" + specCount + " spec" + (specCount == 1 ? "" : "s" ) + ", " + results.failedCount + " failure" + ((results.failedCount == 1) ? "" : "s");
|
||||||
|
message += " in " + ((new Date().getTime() - this.startedAt.getTime()) / 1000) + "s";
|
||||||
|
this.runnerMessageSpan.replaceChild(this.createDom('a', { className: 'description', href: '?'}, message), this.runnerMessageSpan.firstChild);
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.TrivialReporter.prototype.reportSuiteResults = function(suite) {
|
jasmine.TrivialReporter.prototype.reportSuiteResults = function(suite) {
|
||||||
console.log(suite);
|
var results = suite.results();
|
||||||
|
var status = results.passed() ? 'passed' : 'failed';
|
||||||
|
if (results.totalCount == 0) { // todo: change this to check results.skipped
|
||||||
|
status = 'skipped';
|
||||||
|
}
|
||||||
|
this.suiteDivs[suite.getFullName()].className += " " + status;
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.TrivialReporter.prototype.reportSpecResults = function(spec) {
|
jasmine.TrivialReporter.prototype.reportSpecResults = function(spec) {
|
||||||
var specDiv = this.createDom('div', {
|
var results = spec.results();
|
||||||
className: spec.getResults().passed ? 'spec passed' : 'spec failed'
|
var status = results.passed() ? 'passed' : 'failed';
|
||||||
}, spec.getFullName());
|
if (results.skipped) {
|
||||||
|
status = 'skipped';
|
||||||
|
}
|
||||||
|
var specDiv = this.createDom('div', { className: 'spec ' + status },
|
||||||
|
this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(spec.getFullName()) }, "run"),
|
||||||
|
this.createDom('a', { className: 'description', href: '?spec=' + encodeURIComponent(spec.getFullName()) }, spec.getFullName()));
|
||||||
|
|
||||||
var resultItems = spec.getResults().getItems();
|
|
||||||
|
var resultItems = results.getItems();
|
||||||
for (var i = 0; i < resultItems.length; i++) {
|
for (var i = 0; i < resultItems.length; i++) {
|
||||||
var result = resultItems[i];
|
var result = resultItems[i];
|
||||||
if (!result.passed) {
|
if (result.passed && !result.passed()) {
|
||||||
var resultMessageDiv = this.createDom('div', {className: 'resultMessage fail'});
|
specDiv.appendChild(this.createDom('div', {className: 'resultMessage fail'}, result.message));
|
||||||
resultMessageDiv.innerHTML = result.message; // todo: lame; mend
|
|
||||||
specDiv.appendChild(resultMessageDiv);
|
|
||||||
specDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
|
specDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
this.suiteDivs[spec.suite.getFullName()].appendChild(specDiv);
|
||||||
document.body.appendChild(specDiv);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.TrivialReporter.prototype.log = function() {
|
jasmine.TrivialReporter.prototype.log = function() {
|
||||||
console.log.apply(console, arguments);
|
console.log.apply(console, arguments);
|
||||||
};
|
};
|
||||||
|
|
||||||
//protect against console.log incidents
|
jasmine.TrivialReporter.prototype.getLocation = function() {
|
||||||
if (!("console" in window) || !("firebug" in console)) {
|
return this.document.location;
|
||||||
var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
|
|
||||||
window.console = {};
|
|
||||||
for (var i = 0, len = names.length; i < len; ++i) {
|
|
||||||
window.console[names[i]] = function() {
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.TrivialReporter.prototype.specFilter = function(spec) {
|
||||||
|
var paramMap = {};
|
||||||
|
var params = this.getLocation().search.substring(1).split('&');
|
||||||
|
for (var i = 0; i < params.length; i++) {
|
||||||
|
var p = params[i].split('=');
|
||||||
|
paramMap[decodeURIComponent(p[0])] = decodeURIComponent(p[1]);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
if (!paramMap["spec"]) return true;
|
||||||
|
return spec.getFullName().indexOf(paramMap["spec"]) == 0;
|
||||||
|
};
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
/** Console X
|
||||||
|
* http://github.com/deadlyicon/consolex.js
|
||||||
|
*
|
||||||
|
* By Jared Grippe <jared@jaredgrippe.com>
|
||||||
|
*
|
||||||
|
* Copyright (c) 2009 Jared Grippe
|
||||||
|
* Licensed under the MIT license.
|
||||||
|
*
|
||||||
|
* consolex avoids ever having to see javascript bugs in browsers that do not implement the entire
|
||||||
|
* firebug console suit
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
(function(window) {
|
||||||
|
window.console || (window.console = {});
|
||||||
|
|
||||||
|
var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
|
||||||
|
"group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
|
||||||
|
|
||||||
|
function emptyFunction(){}
|
||||||
|
|
||||||
|
for (var i = 0; i < names.length; ++i){
|
||||||
|
window.console[names[i]] || (window.console[names[i]] = emptyFunction);
|
||||||
|
if (typeof window.console[names[i]] !== 'function')
|
||||||
|
window.console[names[i]] = (function(method) {
|
||||||
|
return function(){ return Function.prototype.apply.apply(method, [console,arguments]); };
|
||||||
|
})(window.console[names[i]]);
|
||||||
|
}
|
||||||
|
})(this);
|
||||||
@@ -1,50 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>Jasmine Test Runner</title>
|
|
||||||
</head>
|
|
||||||
<script type="text/javascript" src="json2.js"></script>
|
|
||||||
<script type="text/javascript" src="jasmine.js"></script>
|
|
||||||
<script type="text/javascript" src="TrivialReporter.js"></script>
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
|
||||||
jasmine.include('example_suite.js', true);
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style type="text/css">
|
|
||||||
.spec {
|
|
||||||
margin: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.passed {
|
|
||||||
background-color: lightgreen;
|
|
||||||
}
|
|
||||||
|
|
||||||
.failed {
|
|
||||||
background-color: pink;
|
|
||||||
}
|
|
||||||
|
|
||||||
.resultMessage {
|
|
||||||
white-space: pre;
|
|
||||||
}
|
|
||||||
|
|
||||||
.stackTrace {
|
|
||||||
white-space: pre;
|
|
||||||
font-size: .8em;
|
|
||||||
margin-left: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
|
||||||
var jasmineEnv = jasmine.getEnv();
|
|
||||||
jasmineEnv.reporter = new jasmine.TrivialReporter();
|
|
||||||
jasmineEnv.execute();
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
+56
-21
@@ -1,43 +1,71 @@
|
|||||||
body {
|
body {
|
||||||
font: 14px "Helvetica Neue Light", "Lucida Grande", "Calibri", "Arial", sans-serif;
|
font-family: "Helvetica Neue Light", "Lucida Grande", "Calibri", "Arial", sans-serif;
|
||||||
padding-left: 40px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
h1 {
|
|
||||||
padding-top: 20px;
|
body .run_spec {
|
||||||
font-weight: bold;
|
float:right;
|
||||||
font: 24px; /* "Helvetica Neue Light", "Lucida Grande", "Calibri", "Arial", sans-serif; */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
p {
|
.runner.running {
|
||||||
margin-top: 5px;
|
background-color: yellow;
|
||||||
padding-left: 20px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.fail {
|
|
||||||
background: url( ../images/fail-16.png ) no-repeat;
|
|
||||||
padding-left: 20px;
|
.runner {
|
||||||
color: red;
|
border: 1px solid gray;
|
||||||
|
margin: 5px;
|
||||||
|
padding-left: 1em;
|
||||||
|
padding-right: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.fail_in_summary {
|
|
||||||
color: red;
|
|
||||||
|
.suite {
|
||||||
|
border: 1px outset gray;
|
||||||
|
margin: 5px;
|
||||||
|
padding-left: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.suite.passed {
|
||||||
|
background-color: #cfc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.suite.failed {
|
||||||
|
background-color: #fdd;
|
||||||
}
|
}
|
||||||
|
|
||||||
.spec {
|
.spec {
|
||||||
margin: 5px;
|
margin: 5px;
|
||||||
|
clear: both;
|
||||||
}
|
}
|
||||||
|
|
||||||
.passed {
|
.passed {
|
||||||
background-color: lightgreen;
|
background-color: #cfc;
|
||||||
}
|
}
|
||||||
|
|
||||||
.failed {
|
.failed {
|
||||||
background-color: pink;
|
background-color: #fdd;
|
||||||
}
|
}
|
||||||
|
|
||||||
.resultMessage {
|
.skipped {
|
||||||
white-space: pre;
|
color: #777;
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*.resultMessage {*/
|
||||||
|
/*white-space: pre;*/
|
||||||
|
/*}*/
|
||||||
|
|
||||||
|
.resultMessage span.result {
|
||||||
|
display: block;
|
||||||
|
line-height: 2em;
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
.resultMessage .mismatch {
|
||||||
|
color: black;
|
||||||
}
|
}
|
||||||
|
|
||||||
.stackTrace {
|
.stackTrace {
|
||||||
@@ -46,6 +74,13 @@ p {
|
|||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
height: 5em;
|
height: 5em;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
border-left: 1px solid red;
|
border: 1px inset red;
|
||||||
padding-left: 5em;
|
padding: 1em;
|
||||||
|
background: #eef;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#jasmine_content {
|
||||||
|
position:fixed;
|
||||||
|
right: 100%;
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-10
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
http://www.JSON.org/json2.js
|
http://www.JSON.org/json2.js
|
||||||
2008-11-19
|
2009-08-17
|
||||||
|
|
||||||
Public Domain.
|
Public Domain.
|
||||||
|
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
value represented by the name/value pair that should be serialized,
|
value represented by the name/value pair that should be serialized,
|
||||||
or undefined if nothing should be serialized. The toJSON method
|
or undefined if nothing should be serialized. The toJSON method
|
||||||
will be passed the key associated with the value, and this will be
|
will be passed the key associated with the value, and this will be
|
||||||
bound to the object holding the key.
|
bound to the value
|
||||||
|
|
||||||
For example, this would serialize Dates as ISO strings.
|
For example, this would serialize Dates as ISO strings.
|
||||||
|
|
||||||
@@ -146,8 +146,6 @@
|
|||||||
|
|
||||||
/*jslint evil: true */
|
/*jslint evil: true */
|
||||||
|
|
||||||
/*global JSON */
|
|
||||||
|
|
||||||
/*members "", "\b", "\t", "\n", "\f", "\r", "\"", JSON, "\\", apply,
|
/*members "", "\b", "\t", "\n", "\f", "\r", "\"", JSON, "\\", apply,
|
||||||
call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours,
|
call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours,
|
||||||
getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join,
|
getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join,
|
||||||
@@ -155,12 +153,15 @@
|
|||||||
test, toJSON, toString, valueOf
|
test, toJSON, toString, valueOf
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
"use strict";
|
||||||
|
|
||||||
// Create a JSON object only if one does not already exist. We create the
|
// Create a JSON object only if one does not already exist. We create the
|
||||||
// methods in a closure to avoid creating global variables.
|
// methods in a closure to avoid creating global variables.
|
||||||
|
|
||||||
if (!this.JSON) {
|
if (!this.JSON) {
|
||||||
JSON = {};
|
this.JSON = {};
|
||||||
}
|
}
|
||||||
|
|
||||||
(function () {
|
(function () {
|
||||||
|
|
||||||
function f(n) {
|
function f(n) {
|
||||||
@@ -172,12 +173,13 @@ if (!this.JSON) {
|
|||||||
|
|
||||||
Date.prototype.toJSON = function (key) {
|
Date.prototype.toJSON = function (key) {
|
||||||
|
|
||||||
return this.getUTCFullYear() + '-' +
|
return isFinite(this.valueOf()) ?
|
||||||
|
this.getUTCFullYear() + '-' +
|
||||||
f(this.getUTCMonth() + 1) + '-' +
|
f(this.getUTCMonth() + 1) + '-' +
|
||||||
f(this.getUTCDate()) + 'T' +
|
f(this.getUTCDate()) + 'T' +
|
||||||
f(this.getUTCHours()) + ':' +
|
f(this.getUTCHours()) + ':' +
|
||||||
f(this.getUTCMinutes()) + ':' +
|
f(this.getUTCMinutes()) + ':' +
|
||||||
f(this.getUTCSeconds()) + 'Z';
|
f(this.getUTCSeconds()) + 'Z' : null;
|
||||||
};
|
};
|
||||||
|
|
||||||
String.prototype.toJSON =
|
String.prototype.toJSON =
|
||||||
@@ -222,7 +224,6 @@ if (!this.JSON) {
|
|||||||
|
|
||||||
|
|
||||||
function str(key, holder) {
|
function str(key, holder) {
|
||||||
|
|
||||||
// Produce a string from holder[key].
|
// Produce a string from holder[key].
|
||||||
|
|
||||||
var i, // The loop counter.
|
var i, // The loop counter.
|
||||||
@@ -351,7 +352,6 @@ if (!this.JSON) {
|
|||||||
|
|
||||||
if (typeof JSON.stringify !== 'function') {
|
if (typeof JSON.stringify !== 'function') {
|
||||||
JSON.stringify = function (value, replacer, space) {
|
JSON.stringify = function (value, replacer, space) {
|
||||||
|
|
||||||
// The stringify method takes a value and an optional replacer, and an optional
|
// The stringify method takes a value and an optional replacer, and an optional
|
||||||
// space parameter, and returns a JSON text. The replacer can be a function
|
// space parameter, and returns a JSON text. The replacer can be a function
|
||||||
// that can replace values, or an array of strings that will select the keys.
|
// that can replace values, or an array of strings that will select the keys.
|
||||||
@@ -475,4 +475,4 @@ replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) {
|
|||||||
throw new SyntaxError('JSON.parse');
|
throw new SyntaxError('JSON.parse');
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
})();
|
}());
|
||||||
|
|||||||
Executable
+44
@@ -0,0 +1,44 @@
|
|||||||
|
class JasmineHelper
|
||||||
|
def self.jasmine_lib_dir
|
||||||
|
File.expand_path(File.join(jasmine_root, 'lib'))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.jasmine
|
||||||
|
['/lib/' + File.basename(Dir.glob("#{JasmineHelper.jasmine_lib_dir}/jasmine*.js").first)] +
|
||||||
|
['/lib/json2.js',
|
||||||
|
'/lib/TrivialReporter.js']
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.jasmine_root
|
||||||
|
File.expand_path(File.join(File.dirname(__FILE__), '..'))
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
def self.jasmine_src_dir
|
||||||
|
File.expand_path(File.join(jasmine_root, 'src'))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.jasmine_lib_dir
|
||||||
|
File.expand_path(File.join(jasmine_root, 'lib'))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.jasmine_spec_dir
|
||||||
|
File.expand_path(File.join(jasmine_root, 'spec'))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.raw_spec_files
|
||||||
|
Dir.glob(File.join(jasmine_spec_dir, "**/*[Ss]pec.js"))
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.specs
|
||||||
|
Jasmine.cachebust(raw_spec_files).collect {|f| f.sub(jasmine_spec_dir, "/spec")}
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.dir_mappings
|
||||||
|
{
|
||||||
|
"/src" => jasmine_src_dir,
|
||||||
|
"/spec" => jasmine_spec_dir,
|
||||||
|
"/lib" => jasmine_lib_dir
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
require 'rubygems'
|
||||||
|
require File.expand_path(File.join(File.dirname(__FILE__), "jasmine_helper.rb"))
|
||||||
|
require File.expand_path(File.join(JasmineHelper.jasmine_root, "contrib/ruby/jasmine_spec_builder"))
|
||||||
|
|
||||||
|
jasmine_runner = if ENV['SAUCELABS'] == 'true'
|
||||||
|
require 'sauce_tunnel'
|
||||||
|
require 'selenium_config'
|
||||||
|
Jasmine::SauceLabsRunner.new(JasmineHelper.specs,
|
||||||
|
JasmineHelper.dir_mappings,
|
||||||
|
:saucelabs_config => 'saucelabs',
|
||||||
|
:saucelabs_config_file => File.expand_path(File.join(File.dirname(__FILE__), "saucelabs.yml")))
|
||||||
|
else
|
||||||
|
require "selenium_rc"
|
||||||
|
Jasmine::Runner.new(SeleniumRC::Server.new('localhost').jar_path,
|
||||||
|
JasmineHelper.specs,
|
||||||
|
JasmineHelper.dir_mappings)
|
||||||
|
end
|
||||||
|
|
||||||
|
spec_builder = Jasmine::SpecBuilder.new(JasmineHelper.raw_spec_files, jasmine_runner)
|
||||||
|
|
||||||
|
should_stop = false
|
||||||
|
|
||||||
|
Spec::Runner.configure do |config|
|
||||||
|
config.after(:suite) do
|
||||||
|
spec_builder.stop if should_stop
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
spec_builder.start
|
||||||
|
should_stop = true
|
||||||
|
spec_builder.declare_suites
|
||||||
+53
-45
@@ -3,72 +3,80 @@
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>Jasmine Test Runner</title>
|
<title>Jasmine Test Runner</title>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
// yes, really keep this here to keep us honest, but only for jasmine's own runner! [xw]
|
||||||
|
undefined = "diz be undefined yo";
|
||||||
|
</script>
|
||||||
|
|
||||||
<script type="text/javascript" src="../src/base.js"></script>
|
<script type="text/javascript" src="../src/base.js"></script>
|
||||||
<script type="text/javascript" src="../src/util.js"></script>
|
<script type="text/javascript" src="../src/util.js"></script>
|
||||||
<script type="text/javascript" src="../src/Env.js"></script>
|
<script type="text/javascript" src="../src/Env.js"></script>
|
||||||
<script type="text/javascript" src="../src/ActionCollection.js"></script>
|
|
||||||
<script type="text/javascript" src="../src/Reporter.js"></script>
|
<script type="text/javascript" src="../src/Reporter.js"></script>
|
||||||
|
<script type="text/javascript" src="../src/Block.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javascript" src="../src/JsApiReporter.js"></script>
|
||||||
<script type="text/javascript" src="../src/Matchers.js"></script>
|
<script type="text/javascript" src="../src/Matchers.js"></script>
|
||||||
|
<script type="text/javascript" src="../src/mock-timeout.js"></script>
|
||||||
<script type="text/javascript" src="../src/MultiReporter.js"></script>
|
<script type="text/javascript" src="../src/MultiReporter.js"></script>
|
||||||
<script type="text/javascript" src="../src/NestedResults.js"></script>
|
<script type="text/javascript" src="../src/NestedResults.js"></script>
|
||||||
<script type="text/javascript" src="../src/PrettyPrinter.js"></script>
|
<script type="text/javascript" src="../src/PrettyPrinter.js"></script>
|
||||||
<script type="text/javascript" src="../src/QueuedFunction.js"></script>
|
<script type="text/javascript" src="../src/Queue.js"></script>
|
||||||
<script type="text/javascript" src="../src/Reporters.js"></script>
|
<script type="text/javascript" src="../src/Reporters.js"></script>
|
||||||
<script type="text/javascript" src="../src/Runner.js"></script>
|
<script type="text/javascript" src="../src/Runner.js"></script>
|
||||||
<script type="text/javascript" src="../src/Spec.js"></script>
|
<script type="text/javascript" src="../src/Spec.js"></script>
|
||||||
<script type="text/javascript" src="../src/Suite.js"></script>
|
<script type="text/javascript" src="../src/Suite.js"></script>
|
||||||
<script type="text/javascript" src="../src/mock-timeout.js"></script>
|
<script type="text/javascript" src="../src/WaitsBlock.js"></script>
|
||||||
|
<script type="text/javascript" src="../src/WaitsForBlock.js"></script>
|
||||||
|
|
||||||
<script type="text/javascript" src="../lib/TrivialReporter.js"></script>
|
<script type="text/javascript" src="../lib/TrivialReporter.js"></script>
|
||||||
|
<script type="text/javascript" src="../lib/consolex.js"></script>
|
||||||
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
jasmine.include('suites/EnvTest.js', true);
|
(function () {
|
||||||
jasmine.include('suites/ExceptionsTest.js', true);
|
var suites = [
|
||||||
jasmine.include('suites/MatchersTest.js', true);
|
'suites/CustomMatchersSpec.js',
|
||||||
jasmine.include('suites/MultiReporterTest.js', true);
|
'suites/EnvSpec.js',
|
||||||
jasmine.include('suites/NestedResultsTest.js', true);
|
'suites/ExceptionsSpec.js',
|
||||||
jasmine.include('suites/PrettyPrintTest.js', true);
|
'suites/JsApiReporterSpec.js',
|
||||||
jasmine.include('suites/ReporterTest.js', true);
|
'suites/MatchersSpec.js',
|
||||||
jasmine.include('suites/RunnerTest.js', true);
|
'suites/MultiReporterSpec.js',
|
||||||
jasmine.include('suites/SpecRunningTest.js', true);
|
'suites/NestedResultsSpec.js',
|
||||||
jasmine.include('suites/SpyTest.js', true);
|
'suites/PrettyPrintSpec.js',
|
||||||
|
'suites/ReporterSpec.js',
|
||||||
|
'suites/RunnerSpec.js',
|
||||||
|
'suites/QueueSpec.js',
|
||||||
|
'suites/SpecSpec.js',
|
||||||
|
'suites/SpecRunningSpec.js',
|
||||||
|
'suites/SpySpec.js',
|
||||||
|
'suites/SuiteSpec.js',
|
||||||
|
'suites/TrivialReporterSpec.js',
|
||||||
|
];
|
||||||
|
for (var i = 0; i < suites.length; i++) {
|
||||||
|
jasmine.include(suites[i], true);
|
||||||
|
}
|
||||||
|
|
||||||
|
var jasmineEnv = jasmine.getEnv();
|
||||||
|
jasmineEnv.updateInterval = 1000;
|
||||||
|
|
||||||
|
var trivialReporter = new jasmine.TrivialReporter();
|
||||||
|
|
||||||
|
jasmineEnv.addReporter(trivialReporter);
|
||||||
|
|
||||||
|
jasmineEnv.specFilter = function(spec) {
|
||||||
|
return trivialReporter.specFilter(spec);
|
||||||
|
};
|
||||||
|
|
||||||
|
window.onload = function() {
|
||||||
|
jasmineEnv.execute();
|
||||||
|
};
|
||||||
|
})();
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style type="text/css">
|
<link href="../lib/jasmine.css" rel="stylesheet"/>
|
||||||
.spec {
|
|
||||||
margin: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.passed {
|
|
||||||
background-color: lightgreen;
|
|
||||||
}
|
|
||||||
|
|
||||||
.failed {
|
|
||||||
background-color: pink;
|
|
||||||
}
|
|
||||||
|
|
||||||
.resultMessage {
|
|
||||||
white-space: pre;
|
|
||||||
}
|
|
||||||
|
|
||||||
.stackTrace {
|
|
||||||
white-space: pre;
|
|
||||||
font-size: .8em;
|
|
||||||
margin-left: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<script type="text/javascript">
|
|
||||||
|
|
||||||
|
|
||||||
var jasmineEnv = jasmine.getEnv();
|
|
||||||
jasmineEnv.addReporter(new jasmine.TrivialReporter());
|
|
||||||
jasmineEnv.execute();
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
local:
|
||||||
|
application_framework: :selenium
|
||||||
|
#
|
||||||
|
# Possible Sauce Labs configurations as of 2009/11/19
|
||||||
|
# From: http://saucelabs.com/products/docs/sauce-ondemand/browsers
|
||||||
|
# os: "Windows 2003"
|
||||||
|
# browser: "iexplore"
|
||||||
|
# browser-version: "6.", "7.", "8."
|
||||||
|
# browser: "firefox"
|
||||||
|
# browser-version: "2.", "3.0", "3.5"
|
||||||
|
# browser: "safari"
|
||||||
|
# browser-version: "3.", "4."
|
||||||
|
# browser: "opera"
|
||||||
|
# browser-version: "9."
|
||||||
|
# browser: "googlechrome"
|
||||||
|
# browser-version: ""
|
||||||
|
# os: "Linux"
|
||||||
|
# browser: "firefox"
|
||||||
|
# browser-version: "3."
|
||||||
|
saucelabs:
|
||||||
|
application_framework: :external
|
||||||
|
selenium_server_address: "saucelabs.com"
|
||||||
|
selenium_browser_key: '{"username": "--YOUR-SAUCELABS-USERNAME--", "access-key": "--YOUR-SAUCELABS-ACCESS-KEY--", "os": "Linux", "browser": "firefox", "browser-version": "3."}'
|
||||||
|
application_port: "80"
|
||||||
@@ -0,0 +1,112 @@
|
|||||||
|
describe("Custom Matchers", function() {
|
||||||
|
var env;
|
||||||
|
var fakeTimer;
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
env = new jasmine.Env();
|
||||||
|
env.updateInterval = 0;
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should be easy to add more matchers local to a spec, suite, etc.", function() {
|
||||||
|
var spec1, spec2, spec1Matcher, spec2Matcher;
|
||||||
|
var suite = env.describe('some suite', function() {
|
||||||
|
env.beforeEach(function() {
|
||||||
|
this.addMatchers({ matcherForSuite: function(expected) {
|
||||||
|
return "matcherForSuite: actual: " + this.actual + "; expected: " + expected;
|
||||||
|
} });
|
||||||
|
});
|
||||||
|
|
||||||
|
spec1 = env.it('spec with an expectation').runs(function () {
|
||||||
|
this.addMatchers({ matcherForSpec: function(expected) {
|
||||||
|
return "matcherForSpec: actual: " + this.actual + "; expected: " + expected;
|
||||||
|
} });
|
||||||
|
spec1Matcher = this.expect("xxx");
|
||||||
|
});
|
||||||
|
|
||||||
|
spec2 = env.it('spec with failing expectation').runs(function () {
|
||||||
|
spec2Matcher = this.expect("yyy");
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
suite.execute();
|
||||||
|
|
||||||
|
expect(spec1Matcher.matcherForSuite("expected")).toEqual("matcherForSuite: actual: xxx; expected: expected");
|
||||||
|
expect(spec1Matcher.matcherForSpec("expected")).toEqual("matcherForSpec: actual: xxx; expected: expected");
|
||||||
|
|
||||||
|
expect(spec2Matcher.matcherForSuite("expected")).toEqual("matcherForSuite: actual: yyy; expected: expected");
|
||||||
|
expect(spec2Matcher.matcherForSpec).toBe(jasmine.undefined);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should generate messages with the same rules as for regular matchers when this.report() is not called", function() {
|
||||||
|
var spec;
|
||||||
|
var suite = env.describe('some suite', function() {
|
||||||
|
spec = env.it('spec with an expectation').runs(function () {
|
||||||
|
this.addMatchers({
|
||||||
|
toBeTrue: function() {
|
||||||
|
return this.actual === true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.expect(true).toBeTrue();
|
||||||
|
this.expect(false).toBeTrue();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
suite.execute();
|
||||||
|
var passResult = new jasmine.ExpectationResult({passed: true, matcherName: 'toBeTrue',
|
||||||
|
actual: true, expected: jasmine.undefined, message: "Passed." });
|
||||||
|
var failResult = new jasmine.ExpectationResult({passed: false, matcherName: 'toBeTrue',
|
||||||
|
actual: false, expected: jasmine.undefined, message: "Expected false to be true." });
|
||||||
|
failResult.trace = jasmine.any(Object);
|
||||||
|
expect(spec.results().getItems()).toEqual([passResult, failResult]);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should pass args", function() {
|
||||||
|
var matcherCallArgs = [];
|
||||||
|
var spec;
|
||||||
|
var suite = env.describe('some suite', function() {
|
||||||
|
spec = env.it('spec with an expectation').runs(function () {
|
||||||
|
this.addMatchers({
|
||||||
|
toBeTrue: function() {
|
||||||
|
matcherCallArgs.push(jasmine.util.argsToArray(arguments));
|
||||||
|
return this.actual === true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.expect(true).toBeTrue();
|
||||||
|
this.expect(false).toBeTrue('arg');
|
||||||
|
this.expect(true).toBeTrue('arg1', 'arg2');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
suite.execute();
|
||||||
|
var results = spec.results().getItems();
|
||||||
|
expect(results[0].expected).toEqual(jasmine.undefined);
|
||||||
|
expect(results[1].expected).toEqual('arg');
|
||||||
|
expect(results[2].expected).toEqual(['arg1', 'arg2']);
|
||||||
|
|
||||||
|
expect(matcherCallArgs).toEqual([[], ['arg'], ['arg1', 'arg2']]);
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("in the old style", function() {
|
||||||
|
it("should report deprecation a warning", function() {
|
||||||
|
var spec;
|
||||||
|
var suite = env.describe('some suite', function() {
|
||||||
|
spec = env.it('spec with an expectation').runs(function () {
|
||||||
|
this.addMatchers({
|
||||||
|
toBeTrue: function() {
|
||||||
|
this.report(this.actual === true, this.actual + " was not true.", "details");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.expect(true).toBeTrue();
|
||||||
|
this.expect(false).toBeTrue();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
suite.execute();
|
||||||
|
var passResult = new jasmine.ExpectationResult({passed: true, message: "Passed.", details: "details"});
|
||||||
|
var failResult = new jasmine.ExpectationResult({passed: false, message: "false was not true.", details: "details"});
|
||||||
|
failResult.trace = jasmine.any(Object);
|
||||||
|
expect(spec.results().getItems()).toEqual([passResult, failResult]);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
@@ -0,0 +1,71 @@
|
|||||||
|
describe("jasmine.Env", function() {
|
||||||
|
var env;
|
||||||
|
beforeEach(function() {
|
||||||
|
env = new jasmine.Env();
|
||||||
|
env.updateInterval = 0;
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('ids', function () {
|
||||||
|
|
||||||
|
it('nextSpecId should return consecutive integers, starting at 0', function () {
|
||||||
|
expect(env.nextSpecId()).toEqual(0);
|
||||||
|
expect(env.nextSpecId()).toEqual(1);
|
||||||
|
expect(env.nextSpecId()).toEqual(2);
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
describe("reporting", function() {
|
||||||
|
var fakeReporter;
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
fakeReporter = jasmine.createSpyObj("fakeReporter", ["log"]);
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('version', function () {
|
||||||
|
var oldVersion;
|
||||||
|
|
||||||
|
beforeEach(function () {
|
||||||
|
oldVersion = jasmine.version_;
|
||||||
|
});
|
||||||
|
|
||||||
|
afterEach(function () {
|
||||||
|
jasmine.version_ = oldVersion;
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should raise an error if version is not set', function () {
|
||||||
|
jasmine.version_ = null;
|
||||||
|
var exception;
|
||||||
|
try {
|
||||||
|
env.version();
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
exception = e;
|
||||||
|
}
|
||||||
|
expect(exception.message).toEqual('Version not set');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
it("version should return the current version as an int", function() {
|
||||||
|
jasmine.version_ = {
|
||||||
|
"major": 1,
|
||||||
|
"minor": 9,
|
||||||
|
"build": 7,
|
||||||
|
"revision": 8
|
||||||
|
};
|
||||||
|
expect(env.version()).toEqual({
|
||||||
|
"major": 1,
|
||||||
|
"minor": 9,
|
||||||
|
"build": 7,
|
||||||
|
"revision": 8
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should allow reporters to be registered", function() {
|
||||||
|
env.addReporter(fakeReporter);
|
||||||
|
env.reporter.log("message");
|
||||||
|
expect(fakeReporter.log).wasCalledWith("message");
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
describe("jasmine.Env", function() {
|
|
||||||
describe("reporting", function() {
|
|
||||||
var env;
|
|
||||||
var fakeReporter;
|
|
||||||
|
|
||||||
beforeEach(function() {
|
|
||||||
env = new jasmine.Env();
|
|
||||||
fakeReporter = jasmine.createSpyObj("fakeReporter", ["log"]);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("should allow reporters to be registered", function() {
|
|
||||||
env.addReporter(fakeReporter);
|
|
||||||
env.reporter.log("message");
|
|
||||||
expect(fakeReporter.log).wasCalledWith("message");
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
@@ -3,9 +3,10 @@ describe('Exceptions:', function() {
|
|||||||
|
|
||||||
beforeEach(function() {
|
beforeEach(function() {
|
||||||
env = new jasmine.Env();
|
env = new jasmine.Env();
|
||||||
|
env.updateInterval = 0;
|
||||||
});
|
});
|
||||||
|
|
||||||
it('jasmine.formatException formats Firefox exception maessages as expected', function() {
|
it('jasmine.formatException formats Firefox exception messages as expected', function() {
|
||||||
var sampleFirefoxException = {
|
var sampleFirefoxException = {
|
||||||
fileName: 'foo.js',
|
fileName: 'foo.js',
|
||||||
line: '1978',
|
line: '1978',
|
||||||
@@ -18,7 +19,7 @@ describe('Exceptions:', function() {
|
|||||||
expect(jasmine.util.formatException(sampleFirefoxException)).toEqual(expected);
|
expect(jasmine.util.formatException(sampleFirefoxException)).toEqual(expected);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('jasmine.formatException formats Webkit exception maessages as expected', function() {
|
it('jasmine.formatException formats Webkit exception messages as expected', function() {
|
||||||
var sampleWebkitException = {
|
var sampleWebkitException = {
|
||||||
sourceURL: 'foo.js',
|
sourceURL: 'foo.js',
|
||||||
lineNumber: '1978',
|
lineNumber: '1978',
|
||||||
@@ -72,27 +73,35 @@ describe('Exceptions:', function() {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
var runner = env.currentRunner;
|
var runner = env.currentRunner();
|
||||||
suite.execute();
|
suite.execute();
|
||||||
fakeTimer.tick(300); //TODO: setting this to a large number causes failures, but shouldn't
|
fakeTimer.tick(2500);
|
||||||
|
|
||||||
var resultsForSpec0 = suite.specs[0].getResults();
|
var suiteResults = suite.results();
|
||||||
var resultsForSpec1 = suite.specs[1].getResults();
|
var specResults = suiteResults.getItems();
|
||||||
var resultsForSpec2 = suite.specs[2].getResults();
|
|
||||||
var resultsForSpec3 = suite.specs[3].getResults();
|
|
||||||
|
|
||||||
expect(suite.getResults().totalCount).toEqual(6);
|
expect(suiteResults.passed()).toEqual(false);
|
||||||
expect(resultsForSpec0.getItems()[0].passed).toEqual(false);
|
//
|
||||||
expect(resultsForSpec0.getItems()[0].message).toMatch(/fake error 1/);
|
expect(specResults.length).toEqual(5);
|
||||||
|
expect(specResults[0].passed()).toMatch(false);
|
||||||
|
var blockResults = specResults[0].getItems();
|
||||||
|
expect(blockResults[0].passed()).toEqual(false);
|
||||||
|
expect(blockResults[0].message).toMatch(/fake error 1/);
|
||||||
|
|
||||||
expect(resultsForSpec1.getItems()[0].passed).toEqual(false),
|
expect(specResults[1].passed()).toEqual(false);
|
||||||
expect(resultsForSpec1.getItems()[0].message).toMatch(/fake error 2/),
|
var blockResults = specResults[1].getItems();
|
||||||
expect(resultsForSpec1.getItems()[1].passed).toEqual(true);
|
expect(blockResults[0].passed()).toEqual(false);
|
||||||
|
expect(blockResults[0].message).toMatch(/fake error 2/),
|
||||||
|
expect(blockResults[1].passed()).toEqual(true);
|
||||||
|
|
||||||
expect(resultsForSpec2.getItems()[0].passed).toEqual(true);
|
expect(specResults[2].passed()).toEqual(true);
|
||||||
|
|
||||||
|
expect(specResults[3].passed()).toEqual(false);
|
||||||
|
blockResults = specResults[3].getItems();
|
||||||
|
expect(blockResults[0].message).toMatch(/fake error 3/);
|
||||||
|
|
||||||
|
expect(specResults[4].passed()).toEqual(true);
|
||||||
|
|
||||||
expect(resultsForSpec3.getItems()[0].passed).toEqual(false);
|
|
||||||
expect(resultsForSpec3.getItems()[0].message).toMatch(/fake error 3/);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
@@ -0,0 +1,82 @@
|
|||||||
|
describe('jasmine.jsApiReporter', function() {
|
||||||
|
|
||||||
|
|
||||||
|
describe('results', function () {
|
||||||
|
var reporter, spec1, spec2, spec3, expectedSpec1Results, expectedSpec2Results;
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
var env = new jasmine.Env();
|
||||||
|
env.updateInterval = 0;
|
||||||
|
var suite = new jasmine.Suite(env);
|
||||||
|
spec1 = new jasmine.Spec(env, suite, 'spec 1');
|
||||||
|
spec1.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
expectedSpec1Results = {
|
||||||
|
messages: spec1.results().getItems(),
|
||||||
|
result: "passed"
|
||||||
|
};
|
||||||
|
spec2 = new jasmine.Spec(env, suite, 'spec 2');
|
||||||
|
spec2.runs(function () {
|
||||||
|
this.expect(true).toEqual(false);
|
||||||
|
});
|
||||||
|
expectedSpec2Results = {
|
||||||
|
messages: spec2.results().getItems(),
|
||||||
|
result: "failed"
|
||||||
|
};
|
||||||
|
|
||||||
|
spec3 = new jasmine.Spec(env, suite, 'spec 3');
|
||||||
|
spec3.runs(function () {
|
||||||
|
this.log('some debug message')
|
||||||
|
});
|
||||||
|
|
||||||
|
spec1.execute();
|
||||||
|
spec2.execute();
|
||||||
|
spec3.execute();
|
||||||
|
|
||||||
|
reporter = new jasmine.JsApiReporter();
|
||||||
|
reporter.reportSpecResults(spec1);
|
||||||
|
reporter.reportSpecResults(spec2);
|
||||||
|
reporter.reportSpecResults(spec3);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('resultForSpec() should return the result for the given spec', function () {
|
||||||
|
expect(reporter.resultsForSpec(spec1.id)).toEqual(expectedSpec1Results);
|
||||||
|
expect(reporter.resultsForSpec(spec2.id)).toEqual(expectedSpec2Results);
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
it('results() should return a hash of all results, indexed by spec id', function () {
|
||||||
|
expect(reporter.results()[spec1.id]).toEqual(expectedSpec1Results);
|
||||||
|
expect(reporter.results()[spec2.id]).toEqual(expectedSpec2Results);
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("#summarizeResult_", function() {
|
||||||
|
it("should summarize a passing result", function() {
|
||||||
|
var result = reporter.results()[spec1.id];
|
||||||
|
var summarizedResult = reporter.summarizeResult_(result);
|
||||||
|
expect(summarizedResult.result).toEqual('passed');
|
||||||
|
expect(summarizedResult.messages.length).toEqual(1);
|
||||||
|
expect(summarizedResult.messages[0].message).toEqual(result.messages[0].message);
|
||||||
|
expect(summarizedResult.messages[0].passed).toBeTruthy();
|
||||||
|
expect(summarizedResult.messages[0].type).toEqual('ExpectationResult');
|
||||||
|
expect(summarizedResult.messages[0].text).toEqual(jasmine.undefined);
|
||||||
|
expect(summarizedResult.messages[0].trace.stack).toEqual(jasmine.undefined);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should have a stack trace for failing specs", function() {
|
||||||
|
var result = reporter.results()[spec2.id];
|
||||||
|
var summarizedResult = reporter.summarizeResult_(result);
|
||||||
|
expect(summarizedResult.result).toEqual('failed');
|
||||||
|
expect(summarizedResult.messages[0].trace.stack).toEqual(result.messages[0].trace.stack);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should have messages for specs with messages", function() {
|
||||||
|
var result = reporter.results()[spec3.id];
|
||||||
|
var summarizedResult = reporter.summarizeResult_(result);
|
||||||
|
expect(summarizedResult.result).toEqual('passed');
|
||||||
|
expect(summarizedResult.messages[0].text).toEqual('some debug message');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -0,0 +1,637 @@
|
|||||||
|
describe("jasmine.Matchers", function() {
|
||||||
|
var env, mockSpec;
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
env = new jasmine.Env();
|
||||||
|
env.updateInterval = 0;
|
||||||
|
mockSpec = jasmine.createSpyObj('spec', ['addMatcherResult']);
|
||||||
|
});
|
||||||
|
|
||||||
|
function match(value) {
|
||||||
|
return new env.matchersClass(env, value, mockSpec);
|
||||||
|
}
|
||||||
|
|
||||||
|
it("toEqual with primitives, objects, dates, html nodes, etc.", function() {
|
||||||
|
expect(match(true).toEqual(true)).toEqual(true);
|
||||||
|
|
||||||
|
expect(match({foo:'bar'}).toEqual(null)).toEqual(false);
|
||||||
|
|
||||||
|
var functionA = function() {
|
||||||
|
return 'hi';
|
||||||
|
};
|
||||||
|
var functionB = function() {
|
||||||
|
return 'hi';
|
||||||
|
};
|
||||||
|
expect(match({foo:functionA}).toEqual({foo:functionB})).toEqual(false);
|
||||||
|
expect(match({foo:functionA}).toEqual({foo:functionA})).toEqual(true);
|
||||||
|
|
||||||
|
expect((match(false).toEqual(true))).toEqual(false);
|
||||||
|
|
||||||
|
var circularGraph = {};
|
||||||
|
circularGraph.referenceToSelf = circularGraph;
|
||||||
|
expect((match(circularGraph).toEqual(circularGraph))).toEqual(true);
|
||||||
|
|
||||||
|
var nodeA = document.createElement('div');
|
||||||
|
var nodeB = document.createElement('div');
|
||||||
|
expect((match(nodeA).toEqual(nodeA))).toEqual(true);
|
||||||
|
expect((match(nodeA).toEqual(nodeB))).toEqual(false);
|
||||||
|
|
||||||
|
expect((match(new Date(2008, 1, 3, 15, 17, 19, 1234)).toEqual(new Date(2009, 1, 3, 15, 17, 19, 1234)))).toEqual(false);
|
||||||
|
expect((match(new Date(2008, 1, 3, 15, 17, 19, 1234)).toEqual(new Date(2008, 1, 3, 15, 17, 19, 1234)))).toEqual(true);
|
||||||
|
|
||||||
|
|
||||||
|
expect(match(true).toNotEqual(false)).toEqual(true);
|
||||||
|
expect((match(true).toNotEqual(true))).toEqual(false);
|
||||||
|
|
||||||
|
expect((match(['a', 'b']).toEqual(['a', jasmine.undefined]))).toEqual(false);
|
||||||
|
expect((match(['a', 'b']).toEqual(['a', 'b', jasmine.undefined]))).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toEqual to build an Expectation Result", function() {
|
||||||
|
var actual = 'a';
|
||||||
|
var matcher = match(actual);
|
||||||
|
var expected = 'b';
|
||||||
|
matcher.toEqual(expected);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toEqual");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual));
|
||||||
|
expect(result.message).toMatch(jasmine.pp(expected));
|
||||||
|
expect(result.expected).toEqual(expected);
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toNotEqual to build an Expectation Result", function() {
|
||||||
|
var str = 'a';
|
||||||
|
var matcher = match(str);
|
||||||
|
matcher.toNotEqual(str);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toNotEqual");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(str));
|
||||||
|
expect(result.message).toMatch('not');
|
||||||
|
expect(result.expected).toEqual(str);
|
||||||
|
expect(result.actual).toEqual(str);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('toBe should return true only if the expected and actual items === each other', function() {
|
||||||
|
var a = {};
|
||||||
|
var b = {};
|
||||||
|
//noinspection UnnecessaryLocalVariableJS
|
||||||
|
var c = a;
|
||||||
|
expect((match(a).toBe(b))).toEqual(false);
|
||||||
|
expect((match(a).toBe(a))).toEqual(true);
|
||||||
|
expect((match(a).toBe(c))).toEqual(true);
|
||||||
|
expect((match(a).toNotBe(b))).toEqual(true);
|
||||||
|
expect((match(a).toNotBe(a))).toEqual(false);
|
||||||
|
expect((match(a).toNotBe(c))).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBe to build an ExpectationResult", function() {
|
||||||
|
var expected = 'b';
|
||||||
|
var actual = 'a';
|
||||||
|
var matcher = match(actual);
|
||||||
|
matcher.toBe(expected);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toBe");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual));
|
||||||
|
expect(result.message).toMatch(jasmine.pp(expected));
|
||||||
|
expect(result.expected).toEqual(expected);
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toNotBe to build an ExpectationResult", function() {
|
||||||
|
var str = 'a';
|
||||||
|
var matcher = match(str);
|
||||||
|
matcher.toNotBe(str);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toNotBe");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(str);
|
||||||
|
expect(result.expected).toEqual(str);
|
||||||
|
expect(result.actual).toEqual(str);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toMatch and #toNotMatch should perform regular expression matching on strings", function() {
|
||||||
|
expect((match('foobarbel').toMatch(/bar/))).toEqual(true);
|
||||||
|
expect((match('foobazbel').toMatch(/bar/))).toEqual(false);
|
||||||
|
|
||||||
|
expect((match('foobarbel').toMatch("bar"))).toEqual(true);
|
||||||
|
expect((match('foobazbel').toMatch("bar"))).toEqual(false);
|
||||||
|
|
||||||
|
expect((match('foobarbel').toNotMatch(/bar/))).toEqual(false);
|
||||||
|
expect((match('foobazbel').toNotMatch(/bar/))).toEqual(true);
|
||||||
|
|
||||||
|
expect((match('foobarbel').toNotMatch("bar"))).toEqual(false);
|
||||||
|
expect((match('foobazbel').toNotMatch("bar"))).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toMatch w/ RegExp to build an ExpectationResult", function() {
|
||||||
|
var actual = 'a';
|
||||||
|
var matcher = match(actual);
|
||||||
|
var expected = /b/;
|
||||||
|
matcher.toMatch(expected);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toMatch");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual));
|
||||||
|
expect(result.message).toMatch(expected.toString());
|
||||||
|
expect(result.expected).toEqual(expected);
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toMatch w/ String to build an ExpectationResult", function() {
|
||||||
|
var actual = 'a';
|
||||||
|
var matcher = match(actual);
|
||||||
|
var expected = 'b';
|
||||||
|
matcher.toMatch(expected);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toMatch");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toEqual("Expected 'a' to match 'b'.");
|
||||||
|
expect(result.expected).toEqual(expected);
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toNotMatch w/ RegExp to build an ExpectationResult", function() {
|
||||||
|
var actual = 'a';
|
||||||
|
var matcher = match(actual);
|
||||||
|
var expected = /a/;
|
||||||
|
matcher.toNotMatch(expected);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toNotMatch");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toEqual("Expected 'a' to not match /a/.");
|
||||||
|
expect(result.expected).toEqual(expected);
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toNotMatch w/ String to build an ExpectationResult", function() {
|
||||||
|
var str = 'a';
|
||||||
|
var matcher = match(str);
|
||||||
|
matcher.toNotMatch(str);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toNotMatch");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toEqual("Expected 'a' to not match 'a'.");
|
||||||
|
expect(result.expected).toEqual(str);
|
||||||
|
expect(result.actual).toEqual(str);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeDefined", function() {
|
||||||
|
expect(match('foo').toBeDefined()).toEqual(true);
|
||||||
|
expect(match(jasmine.undefined).toBeDefined()).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeDefined to build an ExpectationResult", function() {
|
||||||
|
var matcher = match(jasmine.undefined);
|
||||||
|
matcher.toBeDefined();
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toBeDefined");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toEqual('Expected undefined to be defined.');
|
||||||
|
expect(result.actual).toEqual(jasmine.undefined);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeUndefined", function() {
|
||||||
|
expect(match('foo').toBeUndefined()).toEqual(false);
|
||||||
|
expect(match(jasmine.undefined).toBeUndefined()).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeNull", function() {
|
||||||
|
expect(match(null).toBeNull()).toEqual(true);
|
||||||
|
expect(match(jasmine.undefined).toBeNull()).toEqual(false);
|
||||||
|
expect(match("foo").toBeNull()).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeNull w/ String to build an ExpectationResult", function() {
|
||||||
|
var actual = 'a';
|
||||||
|
var matcher = match(actual);
|
||||||
|
matcher.toBeNull();
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toBeNull");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual));
|
||||||
|
expect(result.message).toMatch('null');
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeNull w/ Object to build an ExpectationResult", function() {
|
||||||
|
var actual = {a: 'b'};
|
||||||
|
var matcher = match(actual);
|
||||||
|
matcher.toBeNull();
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toBeNull");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual));
|
||||||
|
expect(result.message).toMatch('null');
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeFalsy", function() {
|
||||||
|
expect(match(false).toBeFalsy()).toEqual(true);
|
||||||
|
expect(match(true).toBeFalsy()).toEqual(false);
|
||||||
|
expect(match(jasmine.undefined).toBeFalsy()).toEqual(true);
|
||||||
|
expect(match(0).toBeFalsy()).toEqual(true);
|
||||||
|
expect(match("").toBeFalsy()).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeFalsy to build an ExpectationResult", function() {
|
||||||
|
var actual = 'a';
|
||||||
|
var matcher = match(actual);
|
||||||
|
matcher.toBeFalsy();
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toBeFalsy");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual));
|
||||||
|
expect(result.message).toMatch('falsy');
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeTruthy", function() {
|
||||||
|
expect(match(false).toBeTruthy()).toEqual(false);
|
||||||
|
expect(match(true).toBeTruthy()).toEqual(true);
|
||||||
|
expect(match(jasmine.undefined).toBeTruthy()).toEqual(false);
|
||||||
|
expect(match(0).toBeTruthy()).toEqual(false);
|
||||||
|
expect(match("").toBeTruthy()).toEqual(false);
|
||||||
|
expect(match("hi").toBeTruthy()).toEqual(true);
|
||||||
|
expect(match(5).toBeTruthy()).toEqual(true);
|
||||||
|
expect(match({foo: 1}).toBeTruthy()).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeTruthy to build an ExpectationResult", function() {
|
||||||
|
var matcher = match(false);
|
||||||
|
matcher.toBeTruthy();
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toBeTruthy");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toEqual("Expected false to be truthy.");
|
||||||
|
expect(result.actual).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toEqual", function() {
|
||||||
|
expect(match(jasmine.undefined).toEqual(jasmine.undefined)).toEqual(true);
|
||||||
|
expect(match({foo:'bar'}).toEqual({foo:'bar'})).toEqual(true);
|
||||||
|
expect(match("foo").toEqual({bar: jasmine.undefined})).toEqual(false);
|
||||||
|
expect(match({foo: jasmine.undefined}).toEqual("goo")).toEqual(false);
|
||||||
|
expect(match({foo: {bar :jasmine.undefined}}).toEqual("goo")).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toEqual with jasmine.any()", function() {
|
||||||
|
expect(match("foo").toEqual(jasmine.any(String))).toEqual(true);
|
||||||
|
expect(match(3).toEqual(jasmine.any(Number))).toEqual(true);
|
||||||
|
expect(match("foo").toEqual(jasmine.any(Function))).toEqual(false);
|
||||||
|
expect(match("foo").toEqual(jasmine.any(Object))).toEqual(false);
|
||||||
|
expect(match({someObj:'foo'}).toEqual(jasmine.any(Object))).toEqual(true);
|
||||||
|
expect(match({someObj:'foo'}).toEqual(jasmine.any(Function))).toEqual(false);
|
||||||
|
expect(match(function() {
|
||||||
|
}).toEqual(jasmine.any(Object))).toEqual(false);
|
||||||
|
expect(match(["foo", "goo"]).toEqual(["foo", jasmine.any(String)])).toEqual(true);
|
||||||
|
expect(match(function() {
|
||||||
|
}).toEqual(jasmine.any(Function))).toEqual(true);
|
||||||
|
expect(match(["a", function() {
|
||||||
|
}]).toEqual(["a", jasmine.any(Function)])).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toEqual handles circular objects ok", function() {
|
||||||
|
expect(match({foo: "bar", baz: jasmine.undefined}).toEqual({foo: "bar", baz: jasmine.undefined})).toEqual(true);
|
||||||
|
expect(match({foo:['bar','baz','quux']}).toEqual({foo:['bar','baz','quux']})).toEqual(true);
|
||||||
|
expect(match({foo: {bar:'baz'}, quux:'corge'}).toEqual({foo:{bar:'baz'}, quux:'corge'})).toEqual(true);
|
||||||
|
|
||||||
|
var circularObject = {};
|
||||||
|
var secondCircularObject = {};
|
||||||
|
circularObject.field = circularObject;
|
||||||
|
secondCircularObject.field = secondCircularObject;
|
||||||
|
expect(match(circularObject).toEqual(secondCircularObject)).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toNotEqual as slightly surprising behavior, but is it intentional?", function() {
|
||||||
|
expect(match({x:"x", y:"y", z:"w"}).toNotEqual({x:"x", y:"y", z:"z"})).toEqual(true);
|
||||||
|
expect(match({x:"x", y:"y", w:"z"}).toNotEqual({x:"x", y:"y", z:"z"})).toEqual(true);
|
||||||
|
expect(match({x:"x", y:"y", z:"z"}).toNotEqual({w: "w", x:"x", y:"y", z:"z"})).toEqual(true);
|
||||||
|
expect(match({w: "w", x:"x", y:"y", z:"z"}).toNotEqual({x:"x", y:"y", z:"z"})).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toEqual handles arrays", function() {
|
||||||
|
expect(match([1, "A"]).toEqual([1, "A"])).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toContain and toNotContain", function() {
|
||||||
|
expect(match('ABC').toContain('A')).toEqual(true);
|
||||||
|
expect(match('ABC').toContain('X')).toEqual(false);
|
||||||
|
|
||||||
|
expect(match(['A', 'B', 'C']).toContain('A')).toEqual(true);
|
||||||
|
expect(match(['A', 'B', 'C']).toContain('F')).toEqual(false);
|
||||||
|
expect(match(['A', 'B', 'C']).toNotContain('F')).toEqual(true);
|
||||||
|
expect(match(['A', 'B', 'C']).toNotContain('A')).toEqual(false);
|
||||||
|
|
||||||
|
expect(match(['A', {some:'object'}, 'C']).toContain({some:'object'})).toEqual(true);
|
||||||
|
expect(match(['A', {some:'object'}, 'C']).toContain({some:'other object'})).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toContain to build an ExpectationResult", function() {
|
||||||
|
var actual = ['a','b','c'];
|
||||||
|
var matcher = match(actual);
|
||||||
|
var expected = 'x';
|
||||||
|
matcher.toContain(expected);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toContain");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual));
|
||||||
|
expect(result.message).toMatch('contain');
|
||||||
|
expect(result.message).toMatch(jasmine.pp(expected));
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
expect(result.expected).toEqual(expected);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toNotContain to build an ExpectationResult", function() {
|
||||||
|
var actual = ['a','b','c'];
|
||||||
|
var matcher = match(actual);
|
||||||
|
var expected = 'b';
|
||||||
|
matcher.toNotContain(expected);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toNotContain");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual));
|
||||||
|
expect(result.message).toMatch('not contain');
|
||||||
|
expect(result.message).toMatch(jasmine.pp(expected));
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
expect(result.expected).toEqual(expected);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeLessThan should pass if actual is less than expected", function() {
|
||||||
|
expect(match(37).toBeLessThan(42)).toEqual(true);
|
||||||
|
expect(match(37).toBeLessThan(-42)).toEqual(false);
|
||||||
|
expect(match(37).toBeLessThan(37)).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeLessThan to build an ExpectationResult", function() {
|
||||||
|
var actual = 3;
|
||||||
|
var matcher = match(actual);
|
||||||
|
var expected = 1;
|
||||||
|
matcher.toBeLessThan(expected);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toBeLessThan");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual) + ' to be less than');
|
||||||
|
expect(result.message).toMatch(jasmine.pp(expected));
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
expect(result.expected).toEqual(expected);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeGreaterThan should pass if actual is greater than expected", function() {
|
||||||
|
expect(match(37).toBeGreaterThan(42)).toEqual(false);
|
||||||
|
expect(match(37).toBeGreaterThan(-42)).toEqual(true);
|
||||||
|
expect(match(37).toBeGreaterThan(37)).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toBeGreaterThan to build an ExpectationResult", function() {
|
||||||
|
var actual = 1;
|
||||||
|
var matcher = match(actual);
|
||||||
|
var expected = 3;
|
||||||
|
matcher.toBeGreaterThan(expected);
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
|
||||||
|
expect(result.matcherName).toEqual("toBeGreaterThan");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toMatch(jasmine.pp(actual) + ' to be greater than');
|
||||||
|
expect(result.message).toMatch(jasmine.pp(expected));
|
||||||
|
expect(result.actual).toEqual(actual);
|
||||||
|
expect(result.expected).toEqual(expected);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toThrow", function() {
|
||||||
|
var expected = match(function() {
|
||||||
|
throw new Error("Fake Error");
|
||||||
|
});
|
||||||
|
expect(expected.toThrow()).toEqual(true);
|
||||||
|
expect(expected.toThrow("Fake Error")).toEqual(true);
|
||||||
|
expect(expected.toThrow(new Error("Fake Error"))).toEqual(true);
|
||||||
|
|
||||||
|
expect(expected.toThrow("Other Error")).toEqual(false);
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
expect(result.message).toMatch("Other Error");
|
||||||
|
|
||||||
|
expect(expected.toThrow(new Error("Other Error"))).toEqual(false);
|
||||||
|
result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
expect(result.message).toMatch("Other Error");
|
||||||
|
|
||||||
|
var exception;
|
||||||
|
try {
|
||||||
|
(function () {
|
||||||
|
new jasmine.Matchers(env, 'not-a-function', mockSpec).toThrow();
|
||||||
|
})();
|
||||||
|
} catch (e) {
|
||||||
|
exception = e;
|
||||||
|
}
|
||||||
|
|
||||||
|
expect(exception).toBeDefined();
|
||||||
|
expect(exception.message).toEqual('Actual is not a function');
|
||||||
|
|
||||||
|
|
||||||
|
expect(match(function() {
|
||||||
|
}).toThrow()).toEqual(false);
|
||||||
|
result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
expect(result.message).toEqual('Expected function to throw an exception.');
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("spy matchers >>", function() {
|
||||||
|
var TestClass;
|
||||||
|
beforeEach(function() {
|
||||||
|
TestClass = {
|
||||||
|
normalFunction: function() {
|
||||||
|
},
|
||||||
|
spyFunction: jasmine.createSpy("My spy")
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
function shouldThrowAnExceptionWhenInvokedOnANonSpy(methodName) {
|
||||||
|
return function() {
|
||||||
|
expect(function() {
|
||||||
|
match(TestClass.normalFunction)[methodName]();
|
||||||
|
}).toThrow('Expected a spy, but got Function.');
|
||||||
|
|
||||||
|
expect(function() {
|
||||||
|
match(jasmine.undefined)[methodName]();
|
||||||
|
}).toThrow('Expected a spy, but got undefined.');
|
||||||
|
|
||||||
|
expect(function() {
|
||||||
|
match({some:'object'})[methodName]();
|
||||||
|
}).toThrow('Expected a spy, but got { some : \'object\' }.');
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
describe("wasCalled", function() {
|
||||||
|
it("should pass iff the spy was called", function() {
|
||||||
|
expect(match(TestClass.spyFunction).wasCalled()).toEqual(false);
|
||||||
|
|
||||||
|
TestClass.spyFunction();
|
||||||
|
expect(match(TestClass.spyFunction).wasCalled()).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should throw an exception when invoked with any arguments", function() {
|
||||||
|
expect(function() {
|
||||||
|
match(TestClass.normalFunction).wasCalled("unwanted argument");
|
||||||
|
}).toThrow('wasCalled does not take arguments, use wasCalledWith');
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should throw an exception when invoked on a non-spy', shouldThrowAnExceptionWhenInvokedOnANonSpy('wasCalled'));
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("wasNotCalled", function() {
|
||||||
|
it("should pass iff the spy was not called", function() {
|
||||||
|
expect(match(TestClass.spyFunction).wasNotCalled()).toEqual(true);
|
||||||
|
|
||||||
|
TestClass.spyFunction();
|
||||||
|
expect(match(TestClass.spyFunction).wasNotCalled()).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should throw an exception when invoked with any arguments", function() {
|
||||||
|
expect(function() {
|
||||||
|
match(TestClass.normalFunction).wasNotCalled("unwanted argument");
|
||||||
|
}).toThrow('wasNotCalled does not take arguments');
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should throw an exception when invoked on a non-spy', shouldThrowAnExceptionWhenInvokedOnANonSpy('wasNotCalled'));
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("wasCalledWith", function() {
|
||||||
|
it('wasCalledWith should return true if it was called with the expected args', function() {
|
||||||
|
TestClass.spyFunction('a', 'b', 'c');
|
||||||
|
expect(match(TestClass.spyFunction).wasCalledWith('a', 'b', 'c')).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should return false if it was not called with the expected args', function() {
|
||||||
|
TestClass.spyFunction('a', 'b', 'c');
|
||||||
|
var expected = match(TestClass.spyFunction);
|
||||||
|
expect(expected.wasCalledWith('c', 'b', 'a')).toEqual(false);
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.expected).toEqual(['c', 'b', 'a']);
|
||||||
|
expect(result.actual.mostRecentCall.args).toEqual(['a', 'b', 'c']);
|
||||||
|
expect(result.message).toContain(jasmine.pp(result.expected));
|
||||||
|
expect(result.message).toContain(jasmine.pp(result.actual.mostRecentCall.args));
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should return false if it was not called', function() {
|
||||||
|
var expected = match(TestClass.spyFunction);
|
||||||
|
expect(expected.wasCalledWith('c', 'b', 'a')).toEqual(false);
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.expected).toEqual(['c', 'b', 'a']);
|
||||||
|
expect(result.actual.argsForCall).toEqual([]);
|
||||||
|
expect(result.message).toContain(jasmine.pp(result.expected));
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should allow matches across multiple calls', function() {
|
||||||
|
var expected = match(TestClass.spyFunction);
|
||||||
|
TestClass.spyFunction('a', 'b', 'c');
|
||||||
|
TestClass.spyFunction('d', 'e', 'f');
|
||||||
|
expect(expected.wasCalledWith('a', 'b', 'c')).toEqual(true);
|
||||||
|
expect(expected.wasCalledWith('d', 'e', 'f')).toEqual(true);
|
||||||
|
expect(expected.wasCalledWith('x', 'y', 'z')).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should throw an exception when invoked on a non-spy', shouldThrowAnExceptionWhenInvokedOnANonSpy('wasCalledWith'));
|
||||||
|
|
||||||
|
describe("to build an ExpectationResult", function () {
|
||||||
|
beforeEach(function() {
|
||||||
|
var currentSuite;
|
||||||
|
var spec;
|
||||||
|
currentSuite = env.describe('default current suite', function() {
|
||||||
|
spec = env.it();
|
||||||
|
}, spec);
|
||||||
|
TestClass = { someFunction: function(a, b) {
|
||||||
|
} };
|
||||||
|
spec.spyOn(TestClass, 'someFunction');
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should should handle the case of a spy", function() {
|
||||||
|
TestClass.someFunction('a', 'c');
|
||||||
|
var matcher = match(TestClass.someFunction);
|
||||||
|
matcher.wasCalledWith('a', 'b');
|
||||||
|
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
expect(result.matcherName).toEqual("wasCalledWith");
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.message).toContain(jasmine.pp(['a', 'b']));
|
||||||
|
expect(result.message).toContain(jasmine.pp(['a', 'c']));
|
||||||
|
expect(result.actual).toEqual(TestClass.someFunction);
|
||||||
|
expect(result.expected).toEqual(['a','b']);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("wasNotCalledWith", function() {
|
||||||
|
it('should return true if the spy was NOT called with the expected args', function() {
|
||||||
|
TestClass.spyFunction('a', 'b', 'c');
|
||||||
|
expect(match(TestClass.spyFunction).wasNotCalledWith('c', 'b', 'a')).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should return false if it WAS called with the expected args', function() {
|
||||||
|
TestClass.spyFunction('a', 'b', 'c');
|
||||||
|
var expected = match(TestClass.spyFunction);
|
||||||
|
expect(expected.wasNotCalledWith('a', 'b', 'c')).toEqual(false);
|
||||||
|
var result = mockSpec.addMatcherResult.mostRecentCall.args[0];
|
||||||
|
expect(result.passed()).toEqual(false);
|
||||||
|
expect(result.expected).toEqual(['a', 'b', 'c']);
|
||||||
|
expect(result.actual.mostRecentCall.args).toEqual(['a', 'b', 'c']);
|
||||||
|
expect(result.message).toContain(jasmine.pp(result.expected));
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should return true if it was not called', function() {
|
||||||
|
var expected = match(TestClass.spyFunction);
|
||||||
|
expect(expected.wasNotCalledWith('c', 'b', 'a')).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should allow matches across multiple calls', function() {
|
||||||
|
var expected = match(TestClass.spyFunction);
|
||||||
|
TestClass.spyFunction('a', 'b', 'c');
|
||||||
|
TestClass.spyFunction('d', 'e', 'f');
|
||||||
|
expect(expected.wasNotCalledWith('a', 'b', 'c')).toEqual(false);
|
||||||
|
expect(expected.wasNotCalledWith('d', 'e', 'f')).toEqual(false);
|
||||||
|
expect(expected.wasNotCalledWith('x', 'y', 'z')).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should throw an exception when invoked on a non-spy', shouldThrowAnExceptionWhenInvokedOnANonSpy('wasNotCalledWith'));
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -1,301 +0,0 @@
|
|||||||
describe("jasmine.Matchers", function() {
|
|
||||||
var env;
|
|
||||||
|
|
||||||
beforeEach(function() {
|
|
||||||
env = new jasmine.Env();
|
|
||||||
});
|
|
||||||
|
|
||||||
function match(value) {
|
|
||||||
return new jasmine.Matchers(env, value);
|
|
||||||
}
|
|
||||||
|
|
||||||
function detailsFor(actual, matcherName, matcherArgs) {
|
|
||||||
var matcher = match(actual);
|
|
||||||
matcher[matcherName].apply(matcher, matcherArgs);
|
|
||||||
expect(matcher.getResults().getItems().length).toEqual(1);
|
|
||||||
return matcher.getResults().getItems()[0].details;
|
|
||||||
}
|
|
||||||
|
|
||||||
it("toEqual with primitives, objects, dates, html nodes, etc.", function() {
|
|
||||||
expect(match(true).toEqual(true)).toEqual(true);
|
|
||||||
|
|
||||||
expect(match({foo:'bar'}).toEqual(null)).toEqual(false);
|
|
||||||
|
|
||||||
var functionA = function() { return 'hi'; };
|
|
||||||
var functionB = function() { return 'hi'; };
|
|
||||||
expect(match({foo:functionA}).toEqual({foo:functionB})).toEqual(false);
|
|
||||||
expect(match({foo:functionA}).toEqual({foo:functionA})).toEqual(true);
|
|
||||||
|
|
||||||
expect((match(false).toEqual(true))).toEqual(false);
|
|
||||||
|
|
||||||
var circularGraph = {};
|
|
||||||
circularGraph.referenceToSelf = circularGraph;
|
|
||||||
expect((match(circularGraph).toEqual(circularGraph))).toEqual(true);
|
|
||||||
|
|
||||||
var nodeA = document.createElement('div');
|
|
||||||
var nodeB = document.createElement('div');
|
|
||||||
expect((match(nodeA).toEqual(nodeA))).toEqual(true);
|
|
||||||
expect((match(nodeA).toEqual(nodeB))).toEqual(false);
|
|
||||||
|
|
||||||
expect((match(new Date(2008, 1, 3, 15, 17, 19, 1234)).toEqual(new Date(2009, 1, 3, 15, 17, 19, 1234)))).toEqual(false);
|
|
||||||
expect((match(new Date(2008, 1, 3, 15, 17, 19, 1234)).toEqual(new Date(2008, 1, 3, 15, 17, 19, 1234)))).toEqual(true);
|
|
||||||
|
|
||||||
|
|
||||||
expect(match(true).toNotEqual(false)).toEqual(true);
|
|
||||||
expect((match(true).toNotEqual(true))).toEqual(false);
|
|
||||||
|
|
||||||
expect((match(['a', 'b']).toEqual(['a', undefined]))).toEqual(false);
|
|
||||||
expect((match(['a', 'b']).toEqual(['a', 'b', undefined]))).toEqual(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('toBe should return true only if the expected and actual items === each other', function() {
|
|
||||||
var a = {};
|
|
||||||
var b = {};
|
|
||||||
//noinspection UnnecessaryLocalVariableJS
|
|
||||||
var c = a;
|
|
||||||
expect((match(a).toBe(b))).toEqual(false);
|
|
||||||
expect((match(a).toBe(a))).toEqual(true);
|
|
||||||
expect((match(a).toBe(c))).toEqual(true);
|
|
||||||
expect((match(a).toNotBe(b))).toEqual(true);
|
|
||||||
expect((match(a).toNotBe(a))).toEqual(false);
|
|
||||||
expect((match(a).toNotBe(c))).toEqual(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
it("toMatch and #toNotMatch should perform regular expression matching on strings", function() {
|
|
||||||
expect((match('foobarbel').toMatch(/bar/))).toEqual(true);
|
|
||||||
expect((match('foobazbel').toMatch(/bar/))).toEqual(false);
|
|
||||||
|
|
||||||
expect((match('foobarbel').toMatch("bar"))).toEqual(true);
|
|
||||||
expect((match('foobazbel').toMatch("bar"))).toEqual(false);
|
|
||||||
|
|
||||||
expect((match('foobarbel').toNotMatch(/bar/))).toEqual(false);
|
|
||||||
expect((match('foobazbel').toNotMatch(/bar/))).toEqual(true);
|
|
||||||
|
|
||||||
expect((match('foobarbel').toNotMatch("bar"))).toEqual(false);
|
|
||||||
expect((match('foobazbel').toNotMatch("bar"))).toEqual(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toBeDefined", function() {
|
|
||||||
expect(match('foo').toBeDefined()).toEqual(true);
|
|
||||||
expect(match(undefined).toBeDefined()).toEqual(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toBeNull", function() {
|
|
||||||
expect(match(null).toBeNull()).toEqual(true);
|
|
||||||
expect(match(undefined).toBeNull()).toEqual(false);
|
|
||||||
expect(match("foo").toBeNull()).toEqual(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toBeFalsy", function() {
|
|
||||||
expect(match(false).toBeFalsy()).toEqual(true);
|
|
||||||
expect(match(true).toBeFalsy()).toEqual(false);
|
|
||||||
expect(match(undefined).toBeFalsy()).toEqual(true);
|
|
||||||
expect(match(0).toBeFalsy()).toEqual(true);
|
|
||||||
expect(match("").toBeFalsy()).toEqual(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toBeTruthy", function() {
|
|
||||||
expect(match(false).toBeTruthy()).toEqual(false);
|
|
||||||
expect(match(true).toBeTruthy()).toEqual(true);
|
|
||||||
expect(match(undefined).toBeTruthy()).toEqual(false);
|
|
||||||
expect(match(0).toBeTruthy()).toEqual(false);
|
|
||||||
expect(match("").toBeTruthy()).toEqual(false);
|
|
||||||
expect(match("hi").toBeTruthy()).toEqual(true);
|
|
||||||
expect(match(5).toBeTruthy()).toEqual(true);
|
|
||||||
expect(match({foo: 1}).toBeTruthy()).toEqual(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toEqual", function() {
|
|
||||||
expect(match(undefined).toEqual(undefined)).toEqual(true);
|
|
||||||
expect(match({foo:'bar'}).toEqual({foo:'bar'})).toEqual(true);
|
|
||||||
expect(match("foo").toEqual({bar: undefined})).toEqual(false);
|
|
||||||
expect(match({foo: undefined}).toEqual("goo")).toEqual(false);
|
|
||||||
expect(match({foo: {bar :undefined}}).toEqual("goo")).toEqual(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toEqual with jasmine.any()", function() {
|
|
||||||
expect(match("foo").toEqual(jasmine.any(String))).toEqual(true);
|
|
||||||
expect(match(3).toEqual(jasmine.any(Number))).toEqual(true);
|
|
||||||
expect(match("foo").toEqual(jasmine.any(Function))).toEqual(false);
|
|
||||||
expect(match("foo").toEqual(jasmine.any(Object))).toEqual(false);
|
|
||||||
expect(match({someObj:'foo'}).toEqual(jasmine.any(Object))).toEqual(true);
|
|
||||||
expect(match({someObj:'foo'}).toEqual(jasmine.any(Function))).toEqual(false);
|
|
||||||
expect(match(function() {}).toEqual(jasmine.any(Object))).toEqual(false);
|
|
||||||
expect(match(["foo", "goo"]).toEqual(["foo", jasmine.any(String)])).toEqual(true);
|
|
||||||
expect(match(function() {}).toEqual(jasmine.any(Function))).toEqual(true);
|
|
||||||
expect(match(["a", function() {}]).toEqual(["a", jasmine.any(Function)])).toEqual(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toEqual handles circular objects ok", function() {
|
|
||||||
expect(match({foo: "bar", baz: undefined}).toEqual({foo: "bar", baz: undefined})).toEqual(true);
|
|
||||||
expect(match({foo:['bar','baz','quux']}).toEqual({foo:['bar','baz','quux']})).toEqual(true);
|
|
||||||
expect(match({foo: {bar:'baz'}, quux:'corge'}).toEqual({foo:{bar:'baz'}, quux:'corge'})).toEqual(true);
|
|
||||||
|
|
||||||
var circularObject = {};
|
|
||||||
var secondCircularObject = {};
|
|
||||||
circularObject.field = circularObject;
|
|
||||||
secondCircularObject.field = secondCircularObject;
|
|
||||||
expect(match(circularObject).toEqual(secondCircularObject)).toEqual(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toNotEqual as slightly surprising behavior, but is it intentional?", function() {
|
|
||||||
expect(match({x:"x", y:"y", z:"w"}).toNotEqual({x:"x", y:"y", z:"z"})).toEqual(true);
|
|
||||||
expect(match({x:"x", y:"y", w:"z"}).toNotEqual({x:"x", y:"y", z:"z"})).toEqual(true);
|
|
||||||
expect(match({x:"x", y:"y", z:"z"}).toNotEqual({w: "w", x:"x", y:"y", z:"z"})).toEqual(true);
|
|
||||||
expect(match({w: "w", x:"x", y:"y", z:"z"}).toNotEqual({x:"x", y:"y", z:"z"})).toEqual(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toEqual handles arrays", function() {
|
|
||||||
expect(match([1, "A"]).toEqual([1, "A"])).toEqual(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toContain and toNotContain", function() {
|
|
||||||
expect(match('ABC').toContain('A')).toEqual(true);
|
|
||||||
expect(match('ABC').toContain('X')).toEqual(false);
|
|
||||||
|
|
||||||
expect(match(['A', 'B', 'C']).toContain('A')).toEqual(true);
|
|
||||||
expect(match(['A', 'B', 'C']).toContain('F')).toEqual(false);
|
|
||||||
expect(match(['A', 'B', 'C']).toNotContain('F')).toEqual(true);
|
|
||||||
expect(match(['A', 'B', 'C']).toNotContain('A')).toEqual(false);
|
|
||||||
|
|
||||||
expect(match(['A', {some:'object'}, 'C']).toContain({some:'object'})).toEqual(true);
|
|
||||||
expect(match(['A', {some:'object'}, 'C']).toContain({some:'other object'})).toEqual(false);
|
|
||||||
|
|
||||||
expect(detailsFor('abc', 'toContain', ['x'])).toEqual({
|
|
||||||
matcherName: 'toContain', expected: 'x', actual: 'abc'
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
it("toThrow", function() {
|
|
||||||
var expected = new jasmine.Matchers(env, function() {
|
|
||||||
throw new Error("Fake Error");
|
|
||||||
});
|
|
||||||
expect(expected.toThrow()).toEqual(true);
|
|
||||||
expect(expected.toThrow("Fake Error")).toEqual(true);
|
|
||||||
expect(expected.toThrow(new Error("Fake Error"))).toEqual(true);
|
|
||||||
expect(expected.toThrow("Other Error")).toEqual(false);
|
|
||||||
expect(expected.toThrow(new Error("Other Error"))).toEqual(false);
|
|
||||||
|
|
||||||
expect(match(function() {}).toThrow()).toEqual(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("wasCalled, wasNotCalled, wasCalledWith", function() {
|
|
||||||
var currentSuite;
|
|
||||||
var spec;
|
|
||||||
currentSuite = env.describe('default current suite', function() {
|
|
||||||
spec = env.it();
|
|
||||||
});
|
|
||||||
|
|
||||||
var TestClass = { someFunction: function() {
|
|
||||||
} };
|
|
||||||
|
|
||||||
var expected;
|
|
||||||
expect(match(TestClass.someFunction).wasCalled()).toEqual(false);
|
|
||||||
expect(match(TestClass.someFunction).wasNotCalled()).toEqual(false);
|
|
||||||
|
|
||||||
spec.spyOn(TestClass, 'someFunction');
|
|
||||||
|
|
||||||
expect(match(TestClass.someFunction).wasCalled()).toEqual(false);
|
|
||||||
expect(match(TestClass.someFunction).wasNotCalled()).toEqual(true);
|
|
||||||
|
|
||||||
|
|
||||||
TestClass.someFunction();
|
|
||||||
expect(match(TestClass.someFunction).wasCalled()).toEqual(true);
|
|
||||||
expect(match(TestClass.someFunction).wasCalled('some arg')).toEqual(false);
|
|
||||||
expect(match(TestClass.someFunction).wasNotCalled()).toEqual(false);
|
|
||||||
|
|
||||||
TestClass.someFunction('a', 'b', 'c');
|
|
||||||
expect(match(TestClass.someFunction).wasCalledWith('a', 'b', 'c')).toEqual(true);
|
|
||||||
|
|
||||||
expected = match(TestClass.someFunction);
|
|
||||||
expect(expected.wasCalledWith('c', 'b', 'a')).toEqual(false);
|
|
||||||
expect(expected.getResults().getItems()[0].passed).toEqual(false);
|
|
||||||
|
|
||||||
TestClass.someFunction.reset();
|
|
||||||
TestClass.someFunction('a', 'b', 'c');
|
|
||||||
TestClass.someFunction('d', 'e', 'f');
|
|
||||||
expect(expected.wasCalledWith('a', 'b', 'c')).toEqual(true);
|
|
||||||
expect(expected.wasCalledWith('d', 'e', 'f')).toEqual(true);
|
|
||||||
expect(expected.wasCalledWith('x', 'y', 'z')).toEqual(false);
|
|
||||||
|
|
||||||
expect(detailsFor(TestClass.someFunction, 'wasCalledWith', ['x', 'y', 'z'])).toEqual({
|
|
||||||
matcherName: 'wasCalledWith', expected: ['x', 'y', 'z'], actual: TestClass.someFunction.argsForCall
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
it("should report mismatches in some nice way", function() {
|
|
||||||
var results = new jasmine.NestedResults();
|
|
||||||
var expected = new jasmine.Matchers(env, true, results);
|
|
||||||
expected.toEqual(true);
|
|
||||||
expected.toEqual(false);
|
|
||||||
|
|
||||||
expect(results.getItems().length).toEqual(2);
|
|
||||||
|
|
||||||
expect(results.getItems()[0].passed).toEqual(true);
|
|
||||||
|
|
||||||
expect(results.getItems()[1].passed).toEqual(false);
|
|
||||||
|
|
||||||
results = new jasmine.NestedResults();
|
|
||||||
expected = new jasmine.Matchers(env, false, results);
|
|
||||||
expected.toEqual(true);
|
|
||||||
|
|
||||||
var expectedMessage = 'Expected<br /><br />true<br /><br />but got<br /><br />false<br />';
|
|
||||||
expect(results.getItems()[0].message).toEqual(expectedMessage);
|
|
||||||
|
|
||||||
results = new jasmine.NestedResults();
|
|
||||||
expected = new jasmine.Matchers(env, null, results);
|
|
||||||
expected.toEqual('not null');
|
|
||||||
|
|
||||||
expectedMessage = 'Expected<br /><br />\'not null\'<br /><br />but got<br /><br />null<br />';
|
|
||||||
expect(results.getItems()[0].message).toEqual(expectedMessage);
|
|
||||||
|
|
||||||
results = new jasmine.NestedResults();
|
|
||||||
expected = new jasmine.Matchers(env, undefined, results);
|
|
||||||
expected.toEqual('not undefined');
|
|
||||||
|
|
||||||
expectedMessage = 'Expected<br /><br />\'not undefined\'<br /><br />but got<br /><br />undefined<br />';
|
|
||||||
expect(results.getItems()[0].message).toEqual(expectedMessage);
|
|
||||||
|
|
||||||
|
|
||||||
results = new jasmine.NestedResults();
|
|
||||||
expected = new jasmine.Matchers(env, {foo:'one',baz:'two', more: 'blah'}, results);
|
|
||||||
expected.toEqual({foo:'one', bar: '<b>three</b> &', baz: '2'});
|
|
||||||
|
|
||||||
expectedMessage =
|
|
||||||
"Expected<br /><br />{ foo : 'one', bar : '<b>three</b> &', baz : '2' }<br /><br />but got<br /><br />{ foo : 'one', baz : 'two', more : 'blah' }<br />" +
|
|
||||||
"<br /><br />Different Keys:<br />" +
|
|
||||||
"expected has key 'bar', but missing from <b>actual</b>.<br />" +
|
|
||||||
"<b>expected</b> missing key 'more', but present in actual.<br />" +
|
|
||||||
"<br /><br />Different Values:<br />" +
|
|
||||||
"'bar' was<br /><br />'<b>three</b> &'<br /><br />in expected, but was<br /><br />'undefined'<br /><br />in actual.<br /><br />" +
|
|
||||||
"'baz' was<br /><br />'2'<br /><br />in expected, but was<br /><br />'two'<br /><br />in actual.<br /><br />";
|
|
||||||
var actualMessage = results.getItems()[0].message;
|
|
||||||
expect(actualMessage).toEqual(expectedMessage);
|
|
||||||
|
|
||||||
|
|
||||||
results = new jasmine.NestedResults();
|
|
||||||
expected = new jasmine.Matchers(env, true, results);
|
|
||||||
expected.toEqual(true);
|
|
||||||
|
|
||||||
expect(results.getItems()[0].message).toEqual('Passed.');
|
|
||||||
|
|
||||||
|
|
||||||
expected = new jasmine.Matchers(env, [1, 2, 3], results);
|
|
||||||
results.getItems().length = 0;
|
|
||||||
expected.toEqual([1, 2, 3]);
|
|
||||||
expect(results.getItems()[0].passed).toEqual(true);
|
|
||||||
|
|
||||||
expected = new jasmine.Matchers(env, [1, 2, 3], results);
|
|
||||||
results.getItems().length = 0;
|
|
||||||
expected.toEqual([{}, {}, {}]);
|
|
||||||
expect(results.getItems()[0].passed).toEqual(false);
|
|
||||||
|
|
||||||
expected = new jasmine.Matchers(env, [{}, {}, {}], results);
|
|
||||||
results.getItems().length = 0;
|
|
||||||
expected.toEqual([1, 2, 3]);
|
|
||||||
expect(results.getItems()[0].passed).toEqual(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
describe("MockClock", function () {
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
jasmine.Clock.useMock();
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("setTimeout", function () {
|
||||||
|
it("should mock the clock when useMock is in a beforeEach", function() {
|
||||||
|
var expected = false;
|
||||||
|
setTimeout(function() {
|
||||||
|
expected = true;
|
||||||
|
}, 30000);
|
||||||
|
expect(expected).toBe(false);
|
||||||
|
jasmine.Clock.tick(30001);
|
||||||
|
expect(expected).toBe(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("setInterval", function () {
|
||||||
|
it("should mock the clock when useMock is in a beforeEach", function() {
|
||||||
|
var interval = 0;
|
||||||
|
setInterval(function() {
|
||||||
|
interval++;
|
||||||
|
}, 30000);
|
||||||
|
expect(interval).toEqual(0);
|
||||||
|
jasmine.Clock.tick(30001);
|
||||||
|
expect(interval).toEqual(1);
|
||||||
|
jasmine.Clock.tick(30001);
|
||||||
|
expect(interval).toEqual(2);
|
||||||
|
jasmine.Clock.tick(1);
|
||||||
|
expect(interval).toEqual(2);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -3,14 +3,18 @@ describe('jasmine.NestedResults', function() {
|
|||||||
// Leaf case
|
// Leaf case
|
||||||
var results = new jasmine.NestedResults();
|
var results = new jasmine.NestedResults();
|
||||||
|
|
||||||
results.addResult({passed: true, message: 'Passed.'});
|
results.addResult(new jasmine.ExpectationResult({
|
||||||
|
matcherName: "foo", passed: true, message: 'Passed.', actual: 'bar', expected: 'bar'}
|
||||||
|
));
|
||||||
|
|
||||||
expect(results.getItems().length).toEqual(1);
|
expect(results.getItems().length).toEqual(1);
|
||||||
expect(results.totalCount).toEqual(1);
|
expect(results.totalCount).toEqual(1);
|
||||||
expect(results.passedCount).toEqual(1);
|
expect(results.passedCount).toEqual(1);
|
||||||
expect(results.failedCount).toEqual(0);
|
expect(results.failedCount).toEqual(0);
|
||||||
|
|
||||||
results.addResult({passed: false, message: 'FAIL.'});
|
results.addResult(new jasmine.ExpectationResult({
|
||||||
|
matcherName: "baz", passed: false, message: 'FAIL.', actual: "corge", expected: "quux"
|
||||||
|
}));
|
||||||
|
|
||||||
expect(results.getItems().length).toEqual(2);
|
expect(results.getItems().length).toEqual(2);
|
||||||
expect(results.totalCount).toEqual(2);
|
expect(results.totalCount).toEqual(2);
|
||||||
@@ -21,12 +25,21 @@ describe('jasmine.NestedResults', function() {
|
|||||||
it('should roll up counts for nested results', function() {
|
it('should roll up counts for nested results', function() {
|
||||||
// Branch case
|
// Branch case
|
||||||
var leafResultsOne = new jasmine.NestedResults();
|
var leafResultsOne = new jasmine.NestedResults();
|
||||||
leafResultsOne.addResult({passed: true, message: ''});
|
leafResultsOne.addResult(new jasmine.ExpectationResult({
|
||||||
leafResultsOne.addResult({passed: false, message: ''});
|
matcherName: "toSomething", passed: true, message: 'message', actual: '', expected:''
|
||||||
|
}));
|
||||||
|
|
||||||
|
leafResultsOne.addResult(new jasmine.ExpectationResult({
|
||||||
|
matcherName: "toSomethingElse", passed: false, message: 'message', actual: 'a', expected: 'b'
|
||||||
|
}));
|
||||||
|
|
||||||
var leafResultsTwo = new jasmine.NestedResults();
|
var leafResultsTwo = new jasmine.NestedResults();
|
||||||
leafResultsTwo.addResult({passed: true, message: ''});
|
leafResultsTwo.addResult(new jasmine.ExpectationResult({
|
||||||
leafResultsTwo.addResult({passed: false, message: ''});
|
matcherName: "toSomething", passed: true, message: 'message', actual: '', expected: ''
|
||||||
|
}));
|
||||||
|
leafResultsTwo.addResult(new jasmine.ExpectationResult({
|
||||||
|
matcherName: "toSomethineElse", passed: false, message: 'message', actual: 'c', expected: 'd'
|
||||||
|
}));
|
||||||
|
|
||||||
var branchResults = new jasmine.NestedResults();
|
var branchResults = new jasmine.NestedResults();
|
||||||
branchResults.addResult(leafResultsOne);
|
branchResults.addResult(leafResultsOne);
|
||||||
@@ -8,14 +8,14 @@ describe("jasmine.pp", function () {
|
|||||||
expect(jasmine.pp(true)).toEqual("true");
|
expect(jasmine.pp(true)).toEqual("true");
|
||||||
expect(jasmine.pp(false)).toEqual("false");
|
expect(jasmine.pp(false)).toEqual("false");
|
||||||
expect(jasmine.pp(null)).toEqual("null");
|
expect(jasmine.pp(null)).toEqual("null");
|
||||||
expect(jasmine.pp(undefined)).toEqual("undefined");
|
expect(jasmine.pp(jasmine.undefined)).toEqual("undefined");
|
||||||
expect(jasmine.pp(3)).toEqual("3");
|
expect(jasmine.pp(3)).toEqual("3");
|
||||||
expect(jasmine.pp(-3.14)).toEqual("-3.14");
|
expect(jasmine.pp(-3.14)).toEqual("-3.14");
|
||||||
});
|
});
|
||||||
|
|
||||||
it("should stringify arrays properly", function() {
|
it("should stringify arrays properly", function() {
|
||||||
expect(jasmine.pp([1, 2])).toEqual("[ 1, 2 ]");
|
expect(jasmine.pp([1, 2])).toEqual("[ 1, 2 ]");
|
||||||
expect(jasmine.pp([1, 'foo', {}, undefined, null])).toEqual("[ 1, 'foo', { }, undefined, null ]");
|
expect(jasmine.pp([1, 'foo', {}, jasmine.undefined, null])).toEqual("[ 1, 'foo', { }, undefined, null ]");
|
||||||
});
|
});
|
||||||
|
|
||||||
it("should indicate circular array references", function() {
|
it("should indicate circular array references", function() {
|
||||||
@@ -27,8 +27,13 @@ describe("jasmine.pp", function () {
|
|||||||
|
|
||||||
it("should stringify objects properly", function() {
|
it("should stringify objects properly", function() {
|
||||||
expect(jasmine.pp({foo: 'bar'})).toEqual("{ foo : 'bar' }");
|
expect(jasmine.pp({foo: 'bar'})).toEqual("{ foo : 'bar' }");
|
||||||
expect(jasmine.pp({foo:'bar', baz:3, nullValue: null, undefinedValue: undefined})).toEqual("{ foo : 'bar', baz : 3, nullValue : null, undefinedValue : undefined }");
|
expect(jasmine.pp({foo:'bar', baz:3, nullValue: null, undefinedValue: jasmine.undefined})).toEqual("{ foo : 'bar', baz : 3, nullValue : null, undefinedValue : undefined }");
|
||||||
expect(jasmine.pp({foo: function () { }, bar: [1, 2, 3]})).toEqual("{ foo : Function, bar : [ 1, 2, 3 ] }");
|
expect(jasmine.pp({foo: function () {
|
||||||
|
}, bar: [1, 2, 3]})).toEqual("{ foo : Function, bar : [ 1, 2, 3 ] }");
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should stringify RegExp objects properly", function() {
|
||||||
|
expect(jasmine.pp(/x|y|z/)).toEqual("/x|y|z/");
|
||||||
});
|
});
|
||||||
|
|
||||||
it("should indicate circular object references", function() {
|
it("should indicate circular object references", function() {
|
||||||
@@ -39,8 +44,18 @@ describe("jasmine.pp", function () {
|
|||||||
|
|
||||||
it("should indicate getters on objects as such", function() {
|
it("should indicate getters on objects as such", function() {
|
||||||
var sampleValue = {id: 1};
|
var sampleValue = {id: 1};
|
||||||
sampleValue.__defineGetter__('calculatedValue', function() { throw new Error("don't call me!"); });
|
if (sampleValue.__defineGetter__) {
|
||||||
|
//not supported in IE!
|
||||||
|
sampleValue.__defineGetter__('calculatedValue', function() {
|
||||||
|
throw new Error("don't call me!");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (sampleValue.__defineGetter__) {
|
||||||
expect(jasmine.pp(sampleValue)).toEqual("{ id : 1, calculatedValue : <getter> }");
|
expect(jasmine.pp(sampleValue)).toEqual("{ id : 1, calculatedValue : <getter> }");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
expect(jasmine.pp(sampleValue)).toEqual("{ id : 1 }");
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
it("should stringify HTML nodes properly", function() {
|
it("should stringify HTML nodes properly", function() {
|
||||||
@@ -58,5 +73,21 @@ describe("jasmine.pp", function () {
|
|||||||
expect(jasmine.pp(window)).toEqual("<window>");
|
expect(jasmine.pp(window)).toEqual("<window>");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("should stringify Date objects properly", function() {
|
||||||
|
var now = new Date();
|
||||||
|
expect(jasmine.pp(now)).toEqual("Date(" + now.toString() + ")");
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should stringify spy objects properly", function() {
|
||||||
|
var TestObject = {
|
||||||
|
someFunction: function() {
|
||||||
|
}
|
||||||
|
};
|
||||||
|
spyOn(TestObject, 'someFunction');
|
||||||
|
expect(jasmine.pp(TestObject.someFunction)).toEqual("spy on someFunction");
|
||||||
|
|
||||||
|
expect(jasmine.pp(jasmine.createSpy("something"))).toEqual("spy on something");
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
describe("jasmine.Queue", function() {
|
||||||
|
it("should not call itself recursively, so we don't get stack overflow errors", function() {
|
||||||
|
var queue = new jasmine.Queue(new jasmine.Env());
|
||||||
|
queue.add(new jasmine.Block(null, function() {}));
|
||||||
|
queue.add(new jasmine.Block(null, function() {}));
|
||||||
|
queue.add(new jasmine.Block(null, function() {}));
|
||||||
|
queue.add(new jasmine.Block(null, function() {}));
|
||||||
|
|
||||||
|
var nestCount = 0;
|
||||||
|
var maxNestCount = 0;
|
||||||
|
var nextCallCount = 0;
|
||||||
|
queue.next_ = function() {
|
||||||
|
nestCount++;
|
||||||
|
if (nestCount > maxNestCount) maxNestCount = nestCount;
|
||||||
|
|
||||||
|
jasmine.Queue.prototype.next_.apply(queue, arguments);
|
||||||
|
nestCount--;
|
||||||
|
};
|
||||||
|
|
||||||
|
queue.start();
|
||||||
|
expect(maxNestCount).toEqual(1);
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -1,11 +1,13 @@
|
|||||||
describe('jasmine.Reporter', function() {
|
describe('jasmine.Reporter', function() {
|
||||||
var env;
|
var env;
|
||||||
|
|
||||||
|
|
||||||
beforeEach(function() {
|
beforeEach(function() {
|
||||||
env = new jasmine.Env();
|
env = new jasmine.Env();
|
||||||
|
env.updateInterval = 0;
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should ', function() {
|
it('should get called from the test runner', function() {
|
||||||
env.describe('Suite for JSON Reporter with Callbacks', function () {
|
env.describe('Suite for JSON Reporter with Callbacks', function () {
|
||||||
env.it('should be a test', function() {
|
env.it('should be a test', function() {
|
||||||
this.runs(function () {
|
this.runs(function () {
|
||||||
@@ -47,7 +49,7 @@ describe('jasmine.Reporter', function() {
|
|||||||
runnerCallback: runnerCallback
|
runnerCallback: runnerCallback
|
||||||
});
|
});
|
||||||
|
|
||||||
var runner = env.currentRunner;
|
var runner = env.currentRunner();
|
||||||
runner.execute();
|
runner.execute();
|
||||||
|
|
||||||
expect(foo).toEqual(3); // 'foo was expected to be 3, was ' + foo);
|
expect(foo).toEqual(3); // 'foo was expected to be 3, was ' + foo);
|
||||||
@@ -0,0 +1,258 @@
|
|||||||
|
describe('RunnerTest', function() {
|
||||||
|
var fakeTimer;
|
||||||
|
var env;
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
env = new jasmine.Env();
|
||||||
|
env.updateInterval = 0;
|
||||||
|
|
||||||
|
fakeTimer = new jasmine.FakeTimer();
|
||||||
|
env.setTimeout = fakeTimer.setTimeout;
|
||||||
|
env.clearTimeout = fakeTimer.clearTimeout;
|
||||||
|
env.setInterval = fakeTimer.setInterval;
|
||||||
|
env.clearInterval = fakeTimer.clearInterval;
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('beforeEach', function() {
|
||||||
|
it('should run before each spec for all suites', function () {
|
||||||
|
var foo;
|
||||||
|
env.beforeEach(function () {
|
||||||
|
foo = 0;
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('suite 1', function () {
|
||||||
|
env.it('test 1-1', function() {
|
||||||
|
foo++;
|
||||||
|
this.expect(foo).toEqual(1);
|
||||||
|
});
|
||||||
|
env.it('test 1-2', function() {
|
||||||
|
foo++;
|
||||||
|
this.expect(foo).toEqual(1);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('suite 2', function () {
|
||||||
|
env.it('test 2-1', function() {
|
||||||
|
foo++;
|
||||||
|
this.expect(foo).toEqual(1);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.currentRunner().execute();
|
||||||
|
|
||||||
|
var runnerResults = env.currentRunner().results();
|
||||||
|
expect(runnerResults.totalCount).toEqual(3);
|
||||||
|
expect(runnerResults.passedCount).toEqual(3);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
it('should provide all specs', function () {
|
||||||
|
var foo;
|
||||||
|
env.beforeEach(function () {
|
||||||
|
foo = 0;
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('suite 1', function () {
|
||||||
|
env.it('test 1-1', function() {
|
||||||
|
foo++;
|
||||||
|
this.expect(foo).toEqual(1);
|
||||||
|
});
|
||||||
|
env.it('test 1-2', function() {
|
||||||
|
foo++;
|
||||||
|
this.expect(foo).toEqual(1);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('suite 2', function () {
|
||||||
|
env.it('test 2-1', function() {
|
||||||
|
foo++;
|
||||||
|
this.expect(foo).toEqual(1);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.currentRunner().execute();
|
||||||
|
|
||||||
|
|
||||||
|
expect(env.currentRunner().specs().length).toEqual(3);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('afterEach', function() {
|
||||||
|
it('should run after each spec for all suites', function () {
|
||||||
|
var foo = 3;
|
||||||
|
env.afterEach(function () {
|
||||||
|
foo = foo - 1;
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('suite 1', function () {
|
||||||
|
env.it('test 1-1', function() {
|
||||||
|
this.expect(foo).toEqual(3);
|
||||||
|
});
|
||||||
|
env.it('test 1-2', function() {
|
||||||
|
this.expect(foo).toEqual(2);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('suite 2', function () {
|
||||||
|
env.it('test 2-1', function() {
|
||||||
|
this.expect(foo).toEqual(1);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.currentRunner().execute();
|
||||||
|
|
||||||
|
var runnerResults = env.currentRunner().results();
|
||||||
|
expect(runnerResults.totalCount).toEqual(3);
|
||||||
|
expect(runnerResults.passedCount).toEqual(3);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
it('should run child suites and specs and generate results when execute is called', function() {
|
||||||
|
env.describe('one suite description', function () {
|
||||||
|
env.it('should be a test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('another suite description', function () {
|
||||||
|
env.it('should be another test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(false);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.currentRunner().execute();
|
||||||
|
|
||||||
|
var runnerResults = env.currentRunner().results();
|
||||||
|
expect(runnerResults.totalCount).toEqual(2);
|
||||||
|
expect(runnerResults.passedCount).toEqual(1);
|
||||||
|
expect(runnerResults.failedCount).toEqual(1);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
it('should ignore suites that have been x\'d', function() {
|
||||||
|
env.xdescribe('one suite description', function () {
|
||||||
|
env.it('should be a test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('another suite description', function () {
|
||||||
|
env.it('should be another test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(false);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.currentRunner().execute();
|
||||||
|
|
||||||
|
var runnerResults = env.currentRunner().results();
|
||||||
|
expect(runnerResults.totalCount).toEqual(1);
|
||||||
|
expect(runnerResults.passedCount).toEqual(0);
|
||||||
|
expect(runnerResults.failedCount).toEqual(1);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should roll up results from all specs', function() {
|
||||||
|
env.describe('one suite description', function () {
|
||||||
|
env.it('should be a test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('another suite description', function () {
|
||||||
|
env.it('should be another test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(false);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.currentRunner().execute();
|
||||||
|
|
||||||
|
var results = env.currentRunner().results();
|
||||||
|
expect(results.totalCount).toEqual(2);
|
||||||
|
expect(results.passedCount).toEqual(1);
|
||||||
|
expect(results.failedCount).toEqual(1);
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('reporting', function () {
|
||||||
|
var fakeReporter;
|
||||||
|
beforeEach(function () {
|
||||||
|
fakeReporter = jasmine.createSpyObj("fakeReporter", ["log", "reportRunnerStarting", "reportRunnerResults"]);
|
||||||
|
env.addReporter(fakeReporter);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should report runner results when the runner has completed running', function() {
|
||||||
|
env.describe('one suite description', function () {
|
||||||
|
env.it('should be a test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.describe('another suite description', function () {
|
||||||
|
env.it('should be another test', function() {
|
||||||
|
this.waits(200);
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(false);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
env.currentRunner().execute();
|
||||||
|
expect(fakeReporter.reportRunnerResults).wasNotCalled();
|
||||||
|
fakeTimer.tick(200);
|
||||||
|
//This blows up the JSApiReporter.
|
||||||
|
//expect(fakeReporter.reportRunnerResults).wasCalledWith(env.currentRunner);
|
||||||
|
expect(fakeReporter.reportRunnerResults).wasCalled();
|
||||||
|
expect(fakeReporter.reportRunnerResults.mostRecentCall.args[0].results()).toEqual(env.currentRunner().results());
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should report when the tests start running", function() {
|
||||||
|
var fakeReporter = jasmine.createSpyObj("fakeReporter", ["log", "reportRunnerStarting"]);
|
||||||
|
env.addReporter(fakeReporter);
|
||||||
|
|
||||||
|
|
||||||
|
var runner = new jasmine.Runner(env);
|
||||||
|
runner.arbitraryVariable = 'foo';
|
||||||
|
spyOn(runner.queue, 'start');
|
||||||
|
expect(fakeReporter.reportRunnerStarting).wasNotCalled();
|
||||||
|
runner.execute();
|
||||||
|
expect(fakeReporter.reportRunnerStarting).wasCalled();
|
||||||
|
var reportedRunner = fakeReporter.reportRunnerStarting.mostRecentCall.args[0];
|
||||||
|
expect(reportedRunner.arbitraryVariable).toEqual('foo');
|
||||||
|
expect(runner.queue.start).wasCalled();
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should return a flat array of all suites, including nested suites", function() {
|
||||||
|
var suite1, suite2;
|
||||||
|
suite1 = env.describe("spec 1", function() {
|
||||||
|
suite2 = env.describe("nested spec", function() {
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
document.runner = env.currentRunner();
|
||||||
|
|
||||||
|
var suites = env.currentRunner().suites();
|
||||||
|
var suiteDescriptions = [];
|
||||||
|
for (var i = 0; i < suites.length; i++) {
|
||||||
|
suiteDescriptions.push(suites[i].getFullName());
|
||||||
|
}
|
||||||
|
expect(suiteDescriptions).toEqual([suite1.getFullName(), suite2.getFullName()]);
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
@@ -1,126 +0,0 @@
|
|||||||
describe('RunnerTest', function() {
|
|
||||||
var env;
|
|
||||||
beforeEach(function () {
|
|
||||||
env = new jasmine.Env();
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should be able to add a suite', function() {
|
|
||||||
env.describe('one suite description', function () {
|
|
||||||
env.it('should be a test');
|
|
||||||
});
|
|
||||||
expect(env.currentRunner.suites.length).toEqual(1); // "Runner expected one suite, got " + env.currentRunner.suites.length);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should be able to push multiple suites', function() {
|
|
||||||
env.describe('one suite description', function () {
|
|
||||||
env.it('should be a test');
|
|
||||||
});
|
|
||||||
env.describe('another suite description', function () {
|
|
||||||
env.it('should be a test');
|
|
||||||
});
|
|
||||||
expect(env.currentRunner.suites.length).toEqual(2); //"Runner expected two suites, but got " + env.currentRunner.suites.length);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should run child suites and specs and generate results when execute is called', function() {
|
|
||||||
env.describe('one suite description', function () {
|
|
||||||
env.it('should be a test', function() {
|
|
||||||
this.runs(function () {
|
|
||||||
this.expect(true).toEqual(true);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.describe('another suite description', function () {
|
|
||||||
env.it('should be another test', function() {
|
|
||||||
this.runs(function () {
|
|
||||||
this.expect(true).toEqual(false);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.currentRunner.execute();
|
|
||||||
|
|
||||||
expect(env.currentRunner.suites.length).toEqual(2); // "Runner expected two suites, got " + env.currentRunner.suites.length);
|
|
||||||
expect(env.currentRunner.suites[0].specs[0].results.getItems()[0].passed).toEqual(true); //"Runner should have run specs in first suite");
|
|
||||||
expect(env.currentRunner.suites[1].specs[0].results.getItems()[0].passed).toEqual(false); //"Runner should have run specs in second suite");
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should ignore suites that have been x\'d', function() {
|
|
||||||
env.xdescribe('one suite description', function () {
|
|
||||||
env.it('should be a test', function() {
|
|
||||||
this.runs(function () {
|
|
||||||
this.expect(true).toEqual(true);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.describe('another suite description', function () {
|
|
||||||
env.it('should be another test', function() {
|
|
||||||
this.runs(function () {
|
|
||||||
this.expect(true).toEqual(false);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.currentRunner.execute();
|
|
||||||
|
|
||||||
expect(env.currentRunner.suites.length).toEqual(1); // "Runner expected 1 suite, got " + env.currentRunner.suites.length);
|
|
||||||
expect(env.currentRunner.suites[0].specs[0].results.getItems()[0].passed).toEqual(false); // "Runner should have run specs in first suite");
|
|
||||||
expect(env.currentRunner.suites[1]).toEqual(undefined); // "Second suite should be undefined, but was " + reporter.toJSON(env.currentRunner.suites[1]));
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should roll up results from all specs', function() {
|
|
||||||
var env = new jasmine.Env();
|
|
||||||
env.describe('one suite description', function () {
|
|
||||||
env.it('should be a test', function() {
|
|
||||||
this.runs(function () {
|
|
||||||
this.expect(true).toEqual(true);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.describe('another suite description', function () {
|
|
||||||
env.it('should be another test', function() {
|
|
||||||
this.runs(function () {
|
|
||||||
this.expect(true).toEqual(false);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.currentRunner.execute();
|
|
||||||
|
|
||||||
var results = env.currentRunner.getResults();
|
|
||||||
expect(results.totalCount).toEqual(2);
|
|
||||||
expect(results.passedCount).toEqual(1);
|
|
||||||
expect(results.failedCount).toEqual(1);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should set the finished flag when #finished is called', function(){
|
|
||||||
env.currentRunner.finish();
|
|
||||||
|
|
||||||
expect(env.currentRunner.finished).toEqual(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should call the finish callback when the runner is finished', function() {
|
|
||||||
var foo = 0;
|
|
||||||
|
|
||||||
env.currentRunner.finishCallback = function() {
|
|
||||||
foo++;
|
|
||||||
};
|
|
||||||
|
|
||||||
env.currentRunner.finish();
|
|
||||||
|
|
||||||
expect(env.currentRunner.finished).toEqual(true);
|
|
||||||
expect(foo).toEqual(1);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("should report when the tests start running", function() {
|
|
||||||
var fakeReporter = jasmine.createSpyObj("fakeReporter", ["log", "reportRunnerStarting"]);
|
|
||||||
env.addReporter(fakeReporter);
|
|
||||||
|
|
||||||
var runner = new jasmine.Runner(env);
|
|
||||||
runner.execute();
|
|
||||||
expect(fakeReporter.reportRunnerStarting).wasCalledWith(env.currentRunner);
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,763 +0,0 @@
|
|||||||
describe("jasmine spec running", function () {
|
|
||||||
var env;
|
|
||||||
var fakeTimer;
|
|
||||||
|
|
||||||
beforeEach(function() {
|
|
||||||
env = new jasmine.Env();
|
|
||||||
|
|
||||||
fakeTimer = new jasmine.FakeTimer();
|
|
||||||
env.setTimeout = fakeTimer.setTimeout;
|
|
||||||
env.clearTimeout = fakeTimer.clearTimeout;
|
|
||||||
env.setInterval = fakeTimer.setInterval;
|
|
||||||
env.clearInterval = fakeTimer.clearInterval;
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should assign spec ids sequentially', function() {
|
|
||||||
var it0, it1, it2, it3, it4;
|
|
||||||
env.describe('test suite', function() {
|
|
||||||
it0 = env.it('spec 0', function() {
|
|
||||||
});
|
|
||||||
it1 = env.it('spec 1', function() {
|
|
||||||
});
|
|
||||||
it2 = env.xit('spec 2', function() {
|
|
||||||
});
|
|
||||||
it3 = env.it('spec 3', function() {
|
|
||||||
});
|
|
||||||
});
|
|
||||||
env.describe('test suite 2', function() {
|
|
||||||
it4 = env.it('spec 4', function() {
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
expect(it0.id).toEqual(0);
|
|
||||||
expect(it1.id).toEqual(1);
|
|
||||||
expect(it2.id).toEqual(2);
|
|
||||||
expect(it3.id).toEqual(3);
|
|
||||||
expect(it4.id).toEqual(4);
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
it("should build up some objects with results we can inspect", function() {
|
|
||||||
var specWithNoBody, specWithExpectation, specWithFailingExpectations, specWithMultipleExpectations;
|
|
||||||
|
|
||||||
var suite = env.describe('default current suite', function() {
|
|
||||||
specWithNoBody = env.it('new spec');
|
|
||||||
|
|
||||||
specWithExpectation = env.it('spec with an expectation').runs(function () {
|
|
||||||
var foo = 'bar';
|
|
||||||
this.expect(foo).toEqual('bar');
|
|
||||||
});
|
|
||||||
|
|
||||||
specWithFailingExpectations = env.it('spec with failing expectation').runs(function () {
|
|
||||||
var foo = 'bar';
|
|
||||||
this.expect(foo).toEqual('baz');
|
|
||||||
});
|
|
||||||
|
|
||||||
specWithMultipleExpectations = env.it('spec with multiple assertions').runs(function () {
|
|
||||||
var foo = 'bar';
|
|
||||||
var baz = 'quux';
|
|
||||||
|
|
||||||
this.expect(foo).toEqual('bar');
|
|
||||||
this.expect(baz).toEqual('quux');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
suite.execute();
|
|
||||||
|
|
||||||
expect(specWithNoBody.description).toEqual('new spec');
|
|
||||||
|
|
||||||
expect(specWithExpectation.results.getItems().length).toEqual(1); // "Results aren't there after a spec was executed"
|
|
||||||
expect(specWithExpectation.results.getItems()[0].passed).toEqual(true); // "Results has a result, but it's true"
|
|
||||||
expect(specWithExpectation.results.description).toEqual('spec with an expectation'); // "Spec's results did not get the spec's description"
|
|
||||||
|
|
||||||
expect(specWithFailingExpectations.results.getItems()[0].passed).toEqual(false); // "Expectation that failed, passed"
|
|
||||||
|
|
||||||
expect(specWithMultipleExpectations.results.getItems().length).toEqual(2); // "Spec doesn't support multiple expectations"
|
|
||||||
});
|
|
||||||
|
|
||||||
it("should work without a runs block", function() {
|
|
||||||
var another_spec;
|
|
||||||
var currentSuite = env.describe('default current suite', function() {
|
|
||||||
another_spec = env.it('spec with an expectation', function () {
|
|
||||||
var foo = 'bar';
|
|
||||||
this.expect(foo).toEqual('bar');
|
|
||||||
this.expect(foo).toEqual('baz');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
another_spec.execute();
|
|
||||||
another_spec.done = true;
|
|
||||||
|
|
||||||
expect(another_spec.results.getItems().length).toEqual(2);
|
|
||||||
expect(another_spec.results.getItems()[0].passed).toEqual(true); // "In a spec without a run block, expected first expectation result to be true but was false"
|
|
||||||
expect(another_spec.results.getItems()[1].passed).toEqual(false); // "In a spec without a run block, expected second expectation result to be false but was true";
|
|
||||||
expect(another_spec.results.description).toEqual('spec with an expectation'); // "In a spec without a run block, results did not include the spec's description";
|
|
||||||
});
|
|
||||||
|
|
||||||
it("should run asynchronous tests", function () {
|
|
||||||
var foo = 0;
|
|
||||||
|
|
||||||
//set a bogus suite for the spec to attach to
|
|
||||||
// jasmine.getEnv().currentSuite = {specs: []};
|
|
||||||
|
|
||||||
var a_spec;
|
|
||||||
env.describe('test async spec', function() {
|
|
||||||
a_spec = env.it('simple queue test', function () {
|
|
||||||
this.runs(function () {
|
|
||||||
foo++;
|
|
||||||
});
|
|
||||||
this.runs(function () {
|
|
||||||
this.expect(foo).toEqual(1);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
expect(a_spec.queue.length).toEqual(1,
|
|
||||||
'Expected spec queue length to be 1, was ' + a_spec.queue.length);
|
|
||||||
|
|
||||||
a_spec.execute();
|
|
||||||
expect(a_spec.queue.length).toEqual(3,
|
|
||||||
'Expected spec queue length to be 3, was ' + a_spec.queue.length);
|
|
||||||
|
|
||||||
foo = 0;
|
|
||||||
env.describe('test async spec', function() {
|
|
||||||
a_spec = env.it('spec w/ queued statments', function () {
|
|
||||||
this.runs(function () {
|
|
||||||
foo++;
|
|
||||||
});
|
|
||||||
this.runs(function () {
|
|
||||||
this.expect(foo).toEqual(1);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
a_spec.execute();
|
|
||||||
|
|
||||||
expect(a_spec.results.getItems().length).toEqual(1); // 'No call to waits(): Spec queue did not run all functions';
|
|
||||||
expect(a_spec.results.getItems()[0].passed).toEqual(true); // 'No call to waits(): Queued expectation failed';
|
|
||||||
|
|
||||||
foo = 0;
|
|
||||||
env.describe('test async spec', function() {
|
|
||||||
a_spec = env.it('spec w/ queued statments', function () {
|
|
||||||
this.runs(function () {
|
|
||||||
fakeTimer.setTimeout(function() {
|
|
||||||
foo++;
|
|
||||||
}, 500);
|
|
||||||
});
|
|
||||||
this.waits(1000);
|
|
||||||
this.runs(function() {
|
|
||||||
this.expect(foo).toEqual(1);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
a_spec.execute();
|
|
||||||
expect(a_spec.results.getItems().length).toEqual(0);
|
|
||||||
|
|
||||||
fakeTimer.tick(500);
|
|
||||||
expect(a_spec.results.getItems().length).toEqual(0);
|
|
||||||
|
|
||||||
fakeTimer.tick(500);
|
|
||||||
expect(a_spec.results.getItems().length).toEqual(1); // 'Calling waits(): Spec queue did not run all functions';
|
|
||||||
|
|
||||||
expect(a_spec.results.getItems()[0].passed).toEqual(true); // 'Calling waits(): Queued expectation failed';
|
|
||||||
|
|
||||||
var bar = 0;
|
|
||||||
var another_spec;
|
|
||||||
env.describe('test async spec', function() {
|
|
||||||
another_spec = env.it('spec w/ queued statments', function () {
|
|
||||||
this.runs(function () {
|
|
||||||
fakeTimer.setTimeout(function() {
|
|
||||||
bar++;
|
|
||||||
}, 250);
|
|
||||||
|
|
||||||
});
|
|
||||||
this.waits(500);
|
|
||||||
this.runs(function () {
|
|
||||||
fakeTimer.setTimeout(function() {
|
|
||||||
bar++;
|
|
||||||
}, 250);
|
|
||||||
});
|
|
||||||
this.waits(500);
|
|
||||||
this.runs(function () {
|
|
||||||
this.expect(bar).toEqual(2);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
expect(another_spec.queue.length).toEqual(1); // 'Calling 2 waits(): Expected queue length to be 1, got ' + another_spec.queue.length;
|
|
||||||
|
|
||||||
another_spec.execute();
|
|
||||||
|
|
||||||
fakeTimer.tick(1000);
|
|
||||||
expect(another_spec.queue.length).toEqual(4); // 'Calling 2 waits(): Expected queue length to be 4, got ' + another_spec.queue.length;
|
|
||||||
|
|
||||||
expect(another_spec.results.getItems().length).toEqual(1); // 'Calling 2 waits(): Spec queue did not run all functions';
|
|
||||||
|
|
||||||
expect(another_spec.results.getItems()[0].passed).toEqual(true); // 'Calling 2 waits(): Queued expectation failed';
|
|
||||||
|
|
||||||
var baz = 0;
|
|
||||||
var yet_another_spec;
|
|
||||||
env.describe('test async spec', function() {
|
|
||||||
yet_another_spec = env.it('spec w/ async fail', function () {
|
|
||||||
this.runs(function () {
|
|
||||||
fakeTimer.setTimeout(function() {
|
|
||||||
baz++;
|
|
||||||
}, 250);
|
|
||||||
});
|
|
||||||
this.waits(100);
|
|
||||||
this.runs(function() {
|
|
||||||
this.expect(baz).toEqual(1);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
yet_another_spec.execute();
|
|
||||||
fakeTimer.tick(250);
|
|
||||||
|
|
||||||
expect(yet_another_spec.queue.length).toEqual(3); // 'Calling 2 waits(): Expected queue length to be 3, got ' + another_spec.queue.length);
|
|
||||||
expect(yet_another_spec.results.getItems().length).toEqual(1); // 'Calling 2 waits(): Spec queue did not run all functions');
|
|
||||||
expect(yet_another_spec.results.getItems()[0].passed).toEqual(false); // 'Calling 2 waits(): Queued expectation failed');
|
|
||||||
});
|
|
||||||
|
|
||||||
it("testAsyncSpecsWithMockSuite", function () {
|
|
||||||
var bar = 0;
|
|
||||||
var another_spec;
|
|
||||||
env.describe('test async spec', function() {
|
|
||||||
another_spec = env.it('spec w/ queued statments', function () {
|
|
||||||
this.runs(function () {
|
|
||||||
fakeTimer.setTimeout(function() {
|
|
||||||
bar++;
|
|
||||||
}, 250);
|
|
||||||
});
|
|
||||||
this.waits(500);
|
|
||||||
this.runs(function () {
|
|
||||||
fakeTimer.setTimeout(function() {
|
|
||||||
bar++;
|
|
||||||
}, 250);
|
|
||||||
});
|
|
||||||
this.waits(1500);
|
|
||||||
this.runs(function() {
|
|
||||||
this.expect(bar).toEqual(2);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
another_spec.execute();
|
|
||||||
fakeTimer.tick(2000);
|
|
||||||
expect(another_spec.queue.length).toEqual(4); // 'Calling 2 waits(): Expected queue length to be 4, got ' + another_spec.queue.length);
|
|
||||||
expect(another_spec.results.getItems().length).toEqual(1); // 'Calling 2 waits(): Spec queue did not run all functions');
|
|
||||||
expect(another_spec.results.getItems()[0].passed).toEqual(true); // 'Calling 2 waits(): Queued expectation failed');
|
|
||||||
});
|
|
||||||
|
|
||||||
it("testWaitsFor", function() {
|
|
||||||
var doneWaiting = false;
|
|
||||||
var runsBlockExecuted = false;
|
|
||||||
|
|
||||||
var spec;
|
|
||||||
env.describe('foo', function() {
|
|
||||||
spec = env.it('has a waits for', function() {
|
|
||||||
this.runs(function() {
|
|
||||||
});
|
|
||||||
|
|
||||||
this.waitsFor(500, function() {
|
|
||||||
return doneWaiting;
|
|
||||||
});
|
|
||||||
|
|
||||||
this.runs(function() {
|
|
||||||
runsBlockExecuted = true;
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
spec.execute();
|
|
||||||
expect(runsBlockExecuted).toEqual(false); //, 'should not have executed runs block yet');
|
|
||||||
fakeTimer.tick(100);
|
|
||||||
doneWaiting = true;
|
|
||||||
fakeTimer.tick(100);
|
|
||||||
expect(runsBlockExecuted).toEqual(true); //, 'should have executed runs block');
|
|
||||||
});
|
|
||||||
|
|
||||||
it("testWaitsForFailsWithMessage", function() {
|
|
||||||
var spec;
|
|
||||||
env.describe('foo', function() {
|
|
||||||
spec = env.it('has a waits for', function() {
|
|
||||||
this.runs(function() {
|
|
||||||
});
|
|
||||||
|
|
||||||
this.waitsFor(500, function() {
|
|
||||||
return false; // force a timeout
|
|
||||||
}, 'my awesome condition');
|
|
||||||
|
|
||||||
this.runs(function() {
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
spec.execute();
|
|
||||||
fakeTimer.tick(1000);
|
|
||||||
var actual = spec.results.getItems()[0].message;
|
|
||||||
var expected = 'timeout: timed out after 500 msec waiting for my awesome condition';
|
|
||||||
expect(actual).toEqual(expected);
|
|
||||||
});
|
|
||||||
|
|
||||||
it("testWaitsForFailsIfTimeout", function() {
|
|
||||||
var runsBlockExecuted = false;
|
|
||||||
|
|
||||||
var spec;
|
|
||||||
env.describe('foo', function() {
|
|
||||||
spec = env.it('has a waits for', function() {
|
|
||||||
this.runs(function() {
|
|
||||||
});
|
|
||||||
|
|
||||||
this.waitsFor(500, function() {
|
|
||||||
return false; // force a timeout
|
|
||||||
});
|
|
||||||
|
|
||||||
this.runs(function() {
|
|
||||||
runsBlockExecuted = true;
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
spec.execute();
|
|
||||||
expect(runsBlockExecuted).toEqual(false, 'should not have executed runs block yet');
|
|
||||||
fakeTimer.tick(100);
|
|
||||||
expect(runsBlockExecuted).toEqual(false, 'should not have executed runs block yet');
|
|
||||||
fakeTimer.tick(400);
|
|
||||||
expect(runsBlockExecuted).toEqual(false, 'should have timed out, so the second runs block should not have been called');
|
|
||||||
var actual = spec.results.getItems()[0].message;
|
|
||||||
var expected = 'timeout: timed out after 500 msec waiting for something to happen';
|
|
||||||
expect(actual).toEqual(expected,
|
|
||||||
'expected "' + expected + '" but found "' + actual + '"');
|
|
||||||
});
|
|
||||||
|
|
||||||
it("testSpecAfter", function() {
|
|
||||||
var log = "";
|
|
||||||
var spec;
|
|
||||||
var suite = env.describe("has after", function() {
|
|
||||||
spec = env.it('spec with after', function() {
|
|
||||||
this.runs(function() {
|
|
||||||
log += "spec";
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
spec.after(function() {
|
|
||||||
log += "after1";
|
|
||||||
});
|
|
||||||
spec.after(function() {
|
|
||||||
log += "after2";
|
|
||||||
});
|
|
||||||
|
|
||||||
suite.execute();
|
|
||||||
expect(log).toEqual("specafter2after1"); // "after function should be executed in reverse order after spec runs");
|
|
||||||
});
|
|
||||||
|
|
||||||
describe('test suite declaration', function() {
|
|
||||||
var suite;
|
|
||||||
var dummyFunction = function() {};
|
|
||||||
|
|
||||||
it('should give the suite a description', function() {
|
|
||||||
suite = env.describe('one suite description', dummyFunction);
|
|
||||||
expect(suite.description).toEqual('one suite description'); // 'Suite did not get a description');
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should add tests to suites declared by the passed function', function() {
|
|
||||||
suite = env.describe('one suite description', function () {
|
|
||||||
env.it('should be a test');
|
|
||||||
});
|
|
||||||
|
|
||||||
expect(suite.specs.length).toEqual(1); // 'Suite did not get a spec pushed');
|
|
||||||
expect(suite.specs[0].queue.length).toEqual(0); // "Suite's Spec should not have queuedFunctions");
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should enqueue functions for multipart tests', function() {
|
|
||||||
suite = env.describe('one suite description', function () {
|
|
||||||
env.it('should be a test with queuedFunctions', function() {
|
|
||||||
this.runs(function() {
|
|
||||||
var foo = 0;
|
|
||||||
foo++;
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
expect(suite.specs[0].queue.length).toEqual(1); // "Suite's spec did not get a function pushed");
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should enqueue functions for multipart tests and support waits, and run any ready runs() blocks', function() {
|
|
||||||
var foo = 0;
|
|
||||||
var bar = 0;
|
|
||||||
|
|
||||||
suite = env.describe('one suite description', function () {
|
|
||||||
env.it('should be a test with queuedFunctions', function() {
|
|
||||||
this.runs(function() {
|
|
||||||
foo++;
|
|
||||||
});
|
|
||||||
this.waits(100);
|
|
||||||
this.runs(function() {
|
|
||||||
bar++;
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
expect(suite.specs[0].queue.length).toEqual(1); // "Suite's spec length should have been 1, was " + suite.specs[0].queue.length);
|
|
||||||
suite.execute();
|
|
||||||
expect(suite.specs[0].queue.length).toEqual(3); // "Suite's spec length should have been 3, was " + suite.specs[0].queue.length);
|
|
||||||
expect(foo).toEqual(1);
|
|
||||||
expect(bar).toEqual(0);
|
|
||||||
|
|
||||||
fakeTimer.tick(100);
|
|
||||||
expect(bar).toEqual(1);
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
it("testBeforeAndAfterCallbacks", function () {
|
|
||||||
|
|
||||||
var suiteWithBefore = env.describe('one suite with a before', function () {
|
|
||||||
|
|
||||||
this.beforeEach(function () {
|
|
||||||
this.foo = 1;
|
|
||||||
});
|
|
||||||
|
|
||||||
env.it('should be a spec', function () {
|
|
||||||
this.runs(function() {
|
|
||||||
this.foo++;
|
|
||||||
this.expect(this.foo).toEqual(2);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.it('should be another spec', function () {
|
|
||||||
this.runs(function() {
|
|
||||||
this.foo++;
|
|
||||||
this.expect(this.foo).toEqual(2);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
suiteWithBefore.execute();
|
|
||||||
var suite = suiteWithBefore;
|
|
||||||
expect(suite.beforeEachFunction); // "testBeforeAndAfterCallbacks: Suite's beforeEach was not defined");
|
|
||||||
expect(suite.specs[0].results.getItems()[0].passed).toEqual(true); // "testBeforeAndAfterCallbacks: the first spec's foo should have been 2");
|
|
||||||
expect(suite.specs[1].results.getItems()[0].passed).toEqual(true); // "testBeforeAndAfterCallbacks: the second spec's this.foo should have been 2");
|
|
||||||
|
|
||||||
var suiteWithAfter = env.describe('one suite with an after_each', function () {
|
|
||||||
|
|
||||||
env.it('should be a spec with an after_each', function () {
|
|
||||||
this.runs(function() {
|
|
||||||
this.foo = 0;
|
|
||||||
this.foo++;
|
|
||||||
this.expect(this.foo).toEqual(1);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.it('should be another spec with an after_each', function () {
|
|
||||||
this.runs(function() {
|
|
||||||
this.foo = 0;
|
|
||||||
this.foo++;
|
|
||||||
this.expect(this.foo).toEqual(1);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
this.afterEach(function () {
|
|
||||||
this.foo = 0;
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
suiteWithAfter.execute();
|
|
||||||
var suite = suiteWithAfter;
|
|
||||||
expect(suite.afterEachFunction); // "testBeforeAndAfterCallbacks: Suite's afterEach was not defined");
|
|
||||||
expect(suite.specs[0].results.getItems()[0].passed).toEqual(true); // "testBeforeAndAfterCallbacks: afterEach failure: " + suite.results.getItems()[0].results[0].message);
|
|
||||||
expect(suite.specs[0].foo).toEqual(0); // "testBeforeAndAfterCallbacks: afterEach failure: foo was not reset to 0");
|
|
||||||
expect(suite.specs[1].results.getItems()[0].passed).toEqual(true); // "testBeforeAndAfterCallbacks: afterEach failure: " + suite.results.getItems()[0].results[0].message);
|
|
||||||
expect(suite.specs[1].foo).toEqual(0); // "testBeforeAndAfterCallbacks: afterEach failure: foo was not reset to 0");
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
it("testBeforeExecutesSafely", function() {
|
|
||||||
var report = "";
|
|
||||||
var suite = env.describe('before fails on first test, passes on second', function() {
|
|
||||||
var counter = 0;
|
|
||||||
this.beforeEach(function() {
|
|
||||||
counter++;
|
|
||||||
if (counter == 1) {
|
|
||||||
throw "before failure";
|
|
||||||
}
|
|
||||||
});
|
|
||||||
env.it("first should not run because before fails", function() {
|
|
||||||
this.runs(function() {
|
|
||||||
report += "first";
|
|
||||||
this.expect(true).toEqual(true);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
env.it("second should run and pass because before passes", function() {
|
|
||||||
this.runs(function() {
|
|
||||||
report += "second";
|
|
||||||
this.expect(true).toEqual(true);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
suite.execute();
|
|
||||||
|
|
||||||
expect(report).toEqual("firstsecond"); // "both tests should run");
|
|
||||||
expect(suite.specs[0].results.getItems()[0].passed).toEqual(false); // "1st spec should fail");
|
|
||||||
expect(suite.specs[1].results.getItems()[0].passed).toEqual(true); // "2nd spec should pass");
|
|
||||||
|
|
||||||
expect(suite.specs[0].results.getItems()[0].passed).toEqual(false); // "1st spec should fail");
|
|
||||||
expect(suite.specs[1].results.getItems()[0].passed).toEqual(true); // "2nd spec should pass");
|
|
||||||
});
|
|
||||||
|
|
||||||
it("testAfterExecutesSafely", function() {
|
|
||||||
var report = "";
|
|
||||||
var suite = env.describe('after fails on first test, then passes', function() {
|
|
||||||
var counter = 0;
|
|
||||||
this.afterEach(function() {
|
|
||||||
counter++;
|
|
||||||
if (counter == 1) {
|
|
||||||
throw "after failure";
|
|
||||||
}
|
|
||||||
});
|
|
||||||
env.it("first should run, expectation passes, but spec fails because after fails", function() {
|
|
||||||
this.runs(function() {
|
|
||||||
report += "first";
|
|
||||||
this.expect(true).toEqual(true);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
env.it("second should run and pass because after passes", function() {
|
|
||||||
this.runs(function() {
|
|
||||||
report += "second";
|
|
||||||
this.expect(true).toEqual(true);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
env.it("third should run and pass because after passes", function() {
|
|
||||||
this.runs(function() {
|
|
||||||
report += "third";
|
|
||||||
this.expect(true).toEqual(true);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
suite.execute();
|
|
||||||
|
|
||||||
expect(report).toEqual("firstsecondthird"); // "all tests should run");
|
|
||||||
//After each errors should not go in spec results because it confuses the count.
|
|
||||||
expect(suite.specs.length).toEqual(3, 'testAfterExecutesSafely should have results for three specs');
|
|
||||||
expect(suite.specs[0].results.getItems()[0].passed).toEqual(true, "testAfterExecutesSafely 1st spec should pass");
|
|
||||||
expect(suite.specs[1].results.getItems()[0].passed).toEqual(true, "testAfterExecutesSafely 2nd spec should pass");
|
|
||||||
expect(suite.specs[2].results.getItems()[0].passed).toEqual(true, "testAfterExecutesSafely 3rd spec should pass");
|
|
||||||
|
|
||||||
expect(suite.specs[0].results.getItems()[0].passed).toEqual(true, "testAfterExecutesSafely 1st result for 1st suite spec should pass");
|
|
||||||
expect(suite.specs[0].results.getItems()[1].passed).toEqual(false, "testAfterExecutesSafely 2nd result for 1st suite spec should fail because afterEach failed");
|
|
||||||
expect(suite.specs[1].results.getItems()[0].passed).toEqual(true, "testAfterExecutesSafely 2nd suite spec should pass");
|
|
||||||
expect(suite.specs[2].results.getItems()[0].passed).toEqual(true, "testAfterExecutesSafely 3rd suite spec should pass");
|
|
||||||
});
|
|
||||||
|
|
||||||
it("testNestedDescribes", function() {
|
|
||||||
var actions = [];
|
|
||||||
|
|
||||||
env.describe('Something', function() {
|
|
||||||
env.beforeEach(function() {
|
|
||||||
actions.push('outer beforeEach');
|
|
||||||
});
|
|
||||||
|
|
||||||
env.afterEach(function() {
|
|
||||||
actions.push('outer afterEach');
|
|
||||||
});
|
|
||||||
|
|
||||||
env.it('does it 1', function() {
|
|
||||||
actions.push('outer it 1');
|
|
||||||
});
|
|
||||||
|
|
||||||
env.describe('Inner 1', function() {
|
|
||||||
env.beforeEach(function() {
|
|
||||||
actions.push('inner 1 beforeEach');
|
|
||||||
});
|
|
||||||
|
|
||||||
env.afterEach(function() {
|
|
||||||
actions.push('inner 1 afterEach');
|
|
||||||
});
|
|
||||||
|
|
||||||
env.it('does it 2', function() {
|
|
||||||
actions.push('inner 1 it');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.it('does it 3', function() {
|
|
||||||
actions.push('outer it 2');
|
|
||||||
});
|
|
||||||
|
|
||||||
env.describe('Inner 2', function() {
|
|
||||||
env.beforeEach(function() {
|
|
||||||
actions.push('inner 2 beforeEach');
|
|
||||||
});
|
|
||||||
|
|
||||||
env.afterEach(function() {
|
|
||||||
actions.push('inner 2 afterEach');
|
|
||||||
});
|
|
||||||
|
|
||||||
env.it('does it 2', function() {
|
|
||||||
actions.push('inner 2 it');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
env.execute();
|
|
||||||
|
|
||||||
var expected = [
|
|
||||||
"outer beforeEach",
|
|
||||||
"outer it 1",
|
|
||||||
"outer afterEach",
|
|
||||||
|
|
||||||
"outer beforeEach",
|
|
||||||
"inner 1 beforeEach",
|
|
||||||
"inner 1 it",
|
|
||||||
"inner 1 afterEach",
|
|
||||||
"outer afterEach",
|
|
||||||
|
|
||||||
"outer beforeEach",
|
|
||||||
"outer it 2",
|
|
||||||
"outer afterEach",
|
|
||||||
|
|
||||||
"outer beforeEach",
|
|
||||||
"inner 2 beforeEach",
|
|
||||||
"inner 2 it",
|
|
||||||
"inner 2 afterEach",
|
|
||||||
"outer afterEach"
|
|
||||||
];
|
|
||||||
expect(env.equals_(actions, expected)).toEqual(true); // "nested describes order failed: <blockquote>" + jasmine.pp(actions) + "</blockquote> wanted <blockquote>" + jasmine.pp(expected) + "</blockquote");
|
|
||||||
});
|
|
||||||
|
|
||||||
it("builds up nested names", function() {
|
|
||||||
var nestedSpec;
|
|
||||||
env.describe('Test Subject', function() {
|
|
||||||
env.describe('when under circumstance A', function() {
|
|
||||||
env.describe('and circumstance B', function() {
|
|
||||||
nestedSpec = env.it('behaves thusly', function() {});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
expect(nestedSpec.getFullName()).toEqual('Test Subject when under circumstance A and circumstance B behaves thusly.'); //, "Spec.fullName was incorrect: " + nestedSpec.getFullName());
|
|
||||||
});
|
|
||||||
|
|
||||||
it("should bind 'this' to the running spec within the spec body", function() {
|
|
||||||
var suite = env.describe('one suite description', function () {
|
|
||||||
env.it('should be a test with queuedFunctions', function() {
|
|
||||||
this.runs(function() {
|
|
||||||
this.foo = 0;
|
|
||||||
this.foo++;
|
|
||||||
});
|
|
||||||
|
|
||||||
this.runs(function() {
|
|
||||||
var that = this;
|
|
||||||
fakeTimer.setTimeout(function() {
|
|
||||||
that.foo++;
|
|
||||||
}, 250);
|
|
||||||
});
|
|
||||||
|
|
||||||
this.runs(function() {
|
|
||||||
this.expect(this.foo).toEqual(2);
|
|
||||||
});
|
|
||||||
|
|
||||||
this.waits(300);
|
|
||||||
|
|
||||||
this.runs(function() {
|
|
||||||
this.expect(this.foo).toEqual(2);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
suite.execute();
|
|
||||||
fakeTimer.tick(600);
|
|
||||||
|
|
||||||
expect(suite.specs[0].foo).toEqual(2); // "Spec does not maintain scope in between functions");
|
|
||||||
expect(suite.specs[0].results.getItems().length).toEqual(2); // "Spec did not get results for all expectations");
|
|
||||||
expect(suite.specs[0].results.getItems()[0].passed).toEqual(false); // "Spec did not return false for a failed expectation");
|
|
||||||
expect(suite.specs[0].results.getItems()[1].passed).toEqual(true); // "Spec did not return true for a passing expectation");
|
|
||||||
});
|
|
||||||
|
|
||||||
it("shouldn't run disabled tests", function() {
|
|
||||||
var xitSpecWasRun = false;
|
|
||||||
var suite = env.describe('default current suite', function() {
|
|
||||||
env.xit('disabled spec').runs(function () {
|
|
||||||
xitSpecWasRun = true;
|
|
||||||
});
|
|
||||||
|
|
||||||
env.it('enabled spec').runs(function () {
|
|
||||||
var foo = 'bar';
|
|
||||||
expect(foo).toEqual('bar');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
suite.execute();
|
|
||||||
expect(suite.specs.length).toEqual(1);
|
|
||||||
expect(xitSpecWasRun).toEqual(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('shouldn\'t execute specs in disabled suites', function() {
|
|
||||||
var spy = jasmine.createSpy();
|
|
||||||
var disabledSuite = env.xdescribe('a disabled suite', function() {
|
|
||||||
env.it('enabled spec, but should not be run', function() {
|
|
||||||
spy();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
disabledSuite.execute();
|
|
||||||
|
|
||||||
expect(spy).wasNotCalled();
|
|
||||||
});
|
|
||||||
|
|
||||||
it('#explodes should throw an exception when it is called inside a spec', function() {
|
|
||||||
var exceptionMessage = false;
|
|
||||||
var anotherSuite = env.describe('Spec', function () {
|
|
||||||
env.it('plodes', function() {
|
|
||||||
try {
|
|
||||||
this.explodes();
|
|
||||||
}
|
|
||||||
catch (e) {
|
|
||||||
exceptionMessage = e;
|
|
||||||
}
|
|
||||||
expect(exceptionMessage).toNotEqual(false);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
anotherSuite.execute();
|
|
||||||
|
|
||||||
expect(exceptionMessage).toEqual('explodes function should not have been called');
|
|
||||||
});
|
|
||||||
|
|
||||||
it("should be easy to add more matchers local to a spec, suite, etc.", function() {
|
|
||||||
var spec1, spec2, spec1Matcher, spec2Matcher;
|
|
||||||
|
|
||||||
var suite = env.describe('some suite', function() {
|
|
||||||
env.beforeEach(function() {
|
|
||||||
this.addMatchers({ matcherForSuite: function(expected) {
|
|
||||||
return "matcherForSuite: actual: " + this.actual + "; expected: " + expected;
|
|
||||||
} });
|
|
||||||
});
|
|
||||||
|
|
||||||
spec1 = env.it('spec with an expectation').runs(function () {
|
|
||||||
this.addMatchers( { matcherForSpec: function(expected) {
|
|
||||||
return "matcherForSpec: actual: " + this.actual + "; expected: " + expected;
|
|
||||||
} });
|
|
||||||
spec1Matcher = this.expect("xxx");
|
|
||||||
});
|
|
||||||
|
|
||||||
spec2 = env.it('spec with failing expectation').runs(function () {
|
|
||||||
spec2Matcher = this.expect("yyy");
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
suite.execute();
|
|
||||||
|
|
||||||
expect(spec1Matcher.matcherForSuite("expected")).toEqual("matcherForSuite: actual: xxx; expected: expected");
|
|
||||||
expect(spec1Matcher.matcherForSpec("expected")).toEqual("matcherForSpec: actual: xxx; expected: expected");
|
|
||||||
|
|
||||||
expect(spec2Matcher.matcherForSuite("expected")).toEqual("matcherForSuite: actual: yyy; expected: expected");
|
|
||||||
expect(spec2Matcher.matcherForSpec).toBe(undefined);
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
@@ -0,0 +1,110 @@
|
|||||||
|
describe('Spec', function () {
|
||||||
|
var env, suite;
|
||||||
|
beforeEach(function() {
|
||||||
|
env = new jasmine.Env();
|
||||||
|
env.updateInterval = 0;
|
||||||
|
suite = new jasmine.Suite(env, 'suite 1');
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('initialization', function () {
|
||||||
|
|
||||||
|
it('should raise an error if an env is not passed', function () {
|
||||||
|
try {
|
||||||
|
new jasmine.Spec();
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
expect(e.message).toEqual('jasmine.Env() required');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should raise an error if a suite is not passed', function () {
|
||||||
|
try {
|
||||||
|
new jasmine.Spec(env);
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
expect(e.message).toEqual('jasmine.Suite() required');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should assign sequential ids for specs belonging to the same env', function () {
|
||||||
|
var spec1 = new jasmine.Spec(env, suite);
|
||||||
|
var spec2 = new jasmine.Spec(env, suite);
|
||||||
|
var spec3 = new jasmine.Spec(env, suite);
|
||||||
|
expect(spec1.id).toEqual(0);
|
||||||
|
expect(spec2.id).toEqual(1);
|
||||||
|
expect(spec3.id).toEqual(2);
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
it('getFullName returns suite & spec description', function () {
|
||||||
|
var spec = new jasmine.Spec(env, suite, 'spec 1');
|
||||||
|
expect(spec.getFullName()).toEqual('suite 1 spec 1.')
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('results', function () {
|
||||||
|
var spec, results;
|
||||||
|
beforeEach(function () {
|
||||||
|
spec = new jasmine.Spec(env, suite);
|
||||||
|
results = spec.results();
|
||||||
|
expect(results.totalCount).toEqual(0);
|
||||||
|
spec.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
it('results shows the total number of expectations for each spec after execution', function () {
|
||||||
|
expect(results.totalCount).toEqual(0);
|
||||||
|
spec.execute();
|
||||||
|
expect(results.totalCount).toEqual(2);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('results shows the number of passed expectations for each spec after execution', function () {
|
||||||
|
expect(results.passedCount).toEqual(0);
|
||||||
|
spec.execute();
|
||||||
|
expect(results.passedCount).toEqual(2);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('results shows the number of failed expectations for each spec after execution', function () {
|
||||||
|
spec.runs(function () {
|
||||||
|
this.expect(true).toEqual(false);
|
||||||
|
});
|
||||||
|
expect(results.failedCount).toEqual(0);
|
||||||
|
spec.execute();
|
||||||
|
expect(results.failedCount).toEqual(1);
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('results.passed', function () {
|
||||||
|
it('is true if all spec expectations pass', function () {
|
||||||
|
spec.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
spec.execute();
|
||||||
|
expect(results.passed()).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('is false if one spec expectation fails', function () {
|
||||||
|
spec.runs(function () {
|
||||||
|
this.expect(true).toEqual(false);
|
||||||
|
});
|
||||||
|
spec.execute();
|
||||||
|
expect(results.passed()).toEqual(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('a spec with no expectations will return true', function () {
|
||||||
|
var specWithoutExpectations = new jasmine.Spec(env, suite);
|
||||||
|
specWithoutExpectations.runs(function() {
|
||||||
|
|
||||||
|
});
|
||||||
|
specWithoutExpectations.execute();
|
||||||
|
expect(results.passed()).toEqual(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('an unexecuted spec will return true', function () {
|
||||||
|
expect(results.passed()).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -33,8 +33,8 @@ describe('Spies', function () {
|
|||||||
|
|
||||||
TestClass.someFunction('foo');
|
TestClass.someFunction('foo');
|
||||||
TestClass.someFunction('bar');
|
TestClass.someFunction('bar');
|
||||||
expect(TestClass.someFunction.argsForCall[0]).toEqual(['foo']);
|
expect(TestClass.someFunction.calls[0].args).toEqual(['foo']);
|
||||||
expect(TestClass.someFunction.argsForCall[1]).toEqual(['bar']);
|
expect(TestClass.someFunction.calls[1].args).toEqual(['bar']);
|
||||||
expect(TestClass.someFunction.mostRecentCall.args).toEqual(['bar']);
|
expect(TestClass.someFunction.mostRecentCall.args).toEqual(['bar']);
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -177,6 +177,7 @@ describe('Spies', function () {
|
|||||||
expect(TestClass.someFunction.callCount).toEqual(0);
|
expect(TestClass.someFunction.callCount).toEqual(0);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe("createSpyObj", function() {
|
||||||
it("should create an object with a bunch of spy methods when you call jasmine.createSpyObj()", function() {
|
it("should create an object with a bunch of spy methods when you call jasmine.createSpyObj()", function() {
|
||||||
var spyObj = jasmine.createSpyObj('BaseName', ['method1', 'method2']);
|
var spyObj = jasmine.createSpyObj('BaseName', ['method1', 'method2']);
|
||||||
expect(spyObj).toEqual({ method1: jasmine.any(Function), method2: jasmine.any(Function)});
|
expect(spyObj).toEqual({ method1: jasmine.any(Function), method2: jasmine.any(Function)});
|
||||||
@@ -184,4 +185,17 @@ describe('Spies', function () {
|
|||||||
expect(spyObj.method2.identity).toEqual('BaseName.method2');
|
expect(spyObj.method2.identity).toEqual('BaseName.method2');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("should throw if you do not pass an array argument", function() {
|
||||||
|
expect(function() {
|
||||||
|
jasmine.createSpyObj('BaseName');
|
||||||
|
}).toThrow('createSpyObj requires a non-empty array of method names to create spies for');
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should throw if you pass an empty array argument", function() {
|
||||||
|
expect(function() {
|
||||||
|
jasmine.createSpyObj('BaseName');
|
||||||
|
}).toThrow('createSpyObj requires a non-empty array of method names to create spies for');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
@@ -0,0 +1,101 @@
|
|||||||
|
describe('Suite', function() {
|
||||||
|
var fakeTimer;
|
||||||
|
var env;
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
env = new jasmine.Env();
|
||||||
|
env.updateInterval = 0;
|
||||||
|
|
||||||
|
fakeTimer = new jasmine.FakeTimer();
|
||||||
|
env.setTimeout = fakeTimer.setTimeout;
|
||||||
|
env.clearTimeout = fakeTimer.clearTimeout;
|
||||||
|
env.setInterval = fakeTimer.setInterval;
|
||||||
|
env.clearInterval = fakeTimer.clearInterval;
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('Specs', function () {
|
||||||
|
it('#specs should return all immediate children that are specs.', function () {
|
||||||
|
var suite =env.describe('Suite 1', function () {
|
||||||
|
env.it('Spec 1', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
env.it('Spec 2', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
env.describe('Suite 2', function () {
|
||||||
|
env.it('Spec 3', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
env.it('Spec 4', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
var suiteSpecs = suite.specs();
|
||||||
|
expect(suiteSpecs.length).toEqual(3);
|
||||||
|
expect(suiteSpecs[0].description).toEqual('Spec 1');
|
||||||
|
expect(suiteSpecs[1].description).toEqual('Spec 2');
|
||||||
|
expect(suiteSpecs[2].description).toEqual('Spec 4');
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('SpecCount', function () {
|
||||||
|
|
||||||
|
it('should keep a count of the number of specs that are run', function() {
|
||||||
|
var suite = env.describe('one suite description', function () {
|
||||||
|
env.it('should be a test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
env.it('should be another test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
env.it('should be a third test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
expect(suite.specs().length).toEqual(3);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('specCount should be correct even with runs/waits blocks', function() {
|
||||||
|
var suite = env.describe('one suite description', function () {
|
||||||
|
env.it('should be a test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
env.it('should be another test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
this.waits(10);
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
env.it('should be a third test', function() {
|
||||||
|
this.runs(function () {
|
||||||
|
this.expect(true).toEqual(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
expect(suite.specs().length).toEqual(3);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -0,0 +1,140 @@
|
|||||||
|
describe("TrivialReporter", function() {
|
||||||
|
var trivialReporter;
|
||||||
|
var body;
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
body = document.createElement("body");
|
||||||
|
});
|
||||||
|
|
||||||
|
function fakeSpec(name) {
|
||||||
|
return {
|
||||||
|
getFullName: function() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
it("should run only specs beginning with spec parameter", function() {
|
||||||
|
var trivialReporter = new jasmine.TrivialReporter({ location: {search: "?spec=run%20this"} });
|
||||||
|
expect(trivialReporter.specFilter(fakeSpec("run this"))).toBeTruthy();
|
||||||
|
expect(trivialReporter.specFilter(fakeSpec("not the right spec"))).toBeFalsy();
|
||||||
|
expect(trivialReporter.specFilter(fakeSpec("not run this"))).toBeFalsy();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should display empty divs for every suite when the runner is starting", function() {
|
||||||
|
var trivialReporter = new jasmine.TrivialReporter({ body: body });
|
||||||
|
trivialReporter.reportRunnerStarting({
|
||||||
|
suites: function() {
|
||||||
|
return [ new jasmine.Suite({}, "suite 1", null, null) ];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var divs = body.getElementsByTagName("div");
|
||||||
|
expect(divs.length).toEqual(2);
|
||||||
|
expect(divs[1].innerHTML).toContain("suite 1");
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('Matcher reporting', function () {
|
||||||
|
var getResultMessageDiv = function (body) {
|
||||||
|
var divs = body.getElementsByTagName("div");
|
||||||
|
for (var i = 0; i < divs.length; i++) {
|
||||||
|
if (divs[i].className.match(/resultMessage/)) {
|
||||||
|
return divs[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
var runner, spec, fakeTimer;
|
||||||
|
beforeEach(function () {
|
||||||
|
var env = new jasmine.Env();
|
||||||
|
fakeTimer = new jasmine.FakeTimer();
|
||||||
|
env.setTimeout = fakeTimer.setTimeout;
|
||||||
|
env.clearTimeout = fakeTimer.clearTimeout;
|
||||||
|
env.setInterval = fakeTimer.setInterval;
|
||||||
|
env.clearInterval = fakeTimer.clearInterval;
|
||||||
|
runner = env.currentRunner();
|
||||||
|
var suite = new jasmine.Suite(env, 'some suite');
|
||||||
|
runner.add(suite);
|
||||||
|
spec = new jasmine.Spec(env, suite, 'some spec');
|
||||||
|
suite.add(spec);
|
||||||
|
var trivialReporter = new jasmine.TrivialReporter({ body: body, location: {search: "?"} });
|
||||||
|
env.addReporter(trivialReporter);
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('toContain', function () {
|
||||||
|
it('should show actual and expected', function () {
|
||||||
|
spec.runs(function () {
|
||||||
|
this.expect('foo').toContain('bar');
|
||||||
|
});
|
||||||
|
runner.execute();
|
||||||
|
fakeTimer.tick(0);
|
||||||
|
|
||||||
|
var resultEl = getResultMessageDiv(body);
|
||||||
|
expect(resultEl.innerHTML).toMatch(/foo/);
|
||||||
|
expect(resultEl.innerHTML).toMatch(/bar/);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
describe("failure messages (integration)", function () {
|
||||||
|
var spec, results, expectationResult;
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
results = {
|
||||||
|
passed: function() {
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
getItems: function() {
|
||||||
|
}};
|
||||||
|
|
||||||
|
spec = {
|
||||||
|
suite: {
|
||||||
|
getFullName: function() {
|
||||||
|
return "suite 1";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getFullName: function() {
|
||||||
|
return "foo";
|
||||||
|
},
|
||||||
|
results: function() {
|
||||||
|
return results;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
trivialReporter = new jasmine.TrivialReporter({ body: body });
|
||||||
|
trivialReporter.reportRunnerStarting({
|
||||||
|
suites: function() {
|
||||||
|
return [ new jasmine.Suite({}, "suite 1", null, null) ];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should add the failure message to the DOM (non-toEquals matchers)", function() {
|
||||||
|
expectationResult = new jasmine.ExpectationResult({
|
||||||
|
matcherName: "toBeNull", passed: false, message: "Expected 'a' to be null, but it was not"
|
||||||
|
});
|
||||||
|
|
||||||
|
spyOn(results, 'getItems').andReturn([expectationResult]);
|
||||||
|
|
||||||
|
trivialReporter.reportSpecResults(spec);
|
||||||
|
|
||||||
|
var divs = body.getElementsByTagName("div");
|
||||||
|
expect(divs[3].innerHTML).toEqual("Expected 'a' to be null, but it was not");
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should add the failure message to the DOM (non-toEquals matchers)", function() {
|
||||||
|
expectationResult = new jasmine.ExpectationResult({
|
||||||
|
matcherName: "toBeNull", passed: false, message: "Expected '1 < 2' to <b>e null, & it was not"
|
||||||
|
});
|
||||||
|
|
||||||
|
spyOn(results, 'getItems').andReturn([expectationResult]);
|
||||||
|
|
||||||
|
trivialReporter.reportSpecResults(spec);
|
||||||
|
|
||||||
|
var divs = body.getElementsByTagName("div");
|
||||||
|
expect(divs[3].innerHTML).toEqual("Expected '1 < 2' to <b>e null, & it was not");
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
describe("jasmine.util", function() {
|
||||||
|
describe("extend", function () {
|
||||||
|
it("should add properies to a destination object ", function() {
|
||||||
|
var destination = {baz: 'baz'};
|
||||||
|
jasmine.util.extend(destination, {
|
||||||
|
foo: 'foo', bar: 'bar'
|
||||||
|
});
|
||||||
|
expect(destination).toEqual({foo: 'foo', bar: 'bar', baz: 'baz'});
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should replace properies that already exist on a destination object", function() {
|
||||||
|
var destination = {foo: 'foo'};
|
||||||
|
jasmine.util.extend(destination, {
|
||||||
|
foo: 'bar'
|
||||||
|
});
|
||||||
|
expect(destination).toEqual({foo: 'bar'});
|
||||||
|
jasmine.util.extend(destination, {
|
||||||
|
foo: null
|
||||||
|
});
|
||||||
|
expect(destination).toEqual({foo: null});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("isArray_", function() {
|
||||||
|
it("should return true if the argument is an array", function() {
|
||||||
|
expect(jasmine.isArray_([])).toBe(true);
|
||||||
|
expect(jasmine.isArray_(['a'])).toBe(true);
|
||||||
|
expect(jasmine.isArray_(new Array())).toBe(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should return false if the argument is not an array", function() {
|
||||||
|
expect(jasmine.isArray_(undefined)).toBe(false);
|
||||||
|
expect(jasmine.isArray_({})).toBe(false);
|
||||||
|
expect(jasmine.isArray_(function() {})).toBe(false);
|
||||||
|
expect(jasmine.isArray_('foo')).toBe(false);
|
||||||
|
expect(jasmine.isArray_(5)).toBe(false);
|
||||||
|
expect(jasmine.isArray_(null)).toBe(false);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -1,92 +0,0 @@
|
|||||||
/**
|
|
||||||
* base for Runner & Suite: allows for a queue of functions to get executed, allowing for
|
|
||||||
* any one action to complete, including asynchronous calls, before going to the next
|
|
||||||
* action.
|
|
||||||
*
|
|
||||||
* @constructor
|
|
||||||
* @param {jasmine.Env} env
|
|
||||||
*/
|
|
||||||
jasmine.ActionCollection = function(env) {
|
|
||||||
this.env = env;
|
|
||||||
this.actions = [];
|
|
||||||
this.index = 0;
|
|
||||||
this.finished = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Marks the collection as done & calls the finish callback, if there is one
|
|
||||||
*/
|
|
||||||
jasmine.ActionCollection.prototype.finish = function() {
|
|
||||||
if (this.finishCallback) {
|
|
||||||
this.finishCallback();
|
|
||||||
}
|
|
||||||
this.finished = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Starts executing the queue of functions/actions.
|
|
||||||
*/
|
|
||||||
jasmine.ActionCollection.prototype.execute = function() {
|
|
||||||
if (this.actions.length > 0) {
|
|
||||||
this.next();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Gets the current action.
|
|
||||||
*/
|
|
||||||
jasmine.ActionCollection.prototype.getCurrentAction = function() {
|
|
||||||
return this.actions[this.index];
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Executes the next queued function/action. If there are no more in the queue, calls #finish.
|
|
||||||
*/
|
|
||||||
jasmine.ActionCollection.prototype.next = function() {
|
|
||||||
if (this.index >= this.actions.length) {
|
|
||||||
this.finish();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
var currentAction = this.getCurrentAction();
|
|
||||||
|
|
||||||
currentAction.execute(this);
|
|
||||||
|
|
||||||
if (currentAction.afterCallbacks) {
|
|
||||||
for (var i = 0; i < currentAction.afterCallbacks.length; i++) {
|
|
||||||
try {
|
|
||||||
currentAction.afterCallbacks[i]();
|
|
||||||
} catch (e) {
|
|
||||||
alert(e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this.waitForDone(currentAction);
|
|
||||||
};
|
|
||||||
|
|
||||||
jasmine.ActionCollection.prototype.waitForDone = function(action) {
|
|
||||||
var self = this;
|
|
||||||
var afterExecute = function afterExecute() {
|
|
||||||
self.index++;
|
|
||||||
self.next();
|
|
||||||
};
|
|
||||||
|
|
||||||
if (action.finished) {
|
|
||||||
var now = new Date().getTime();
|
|
||||||
if (this.env.updateInterval && now - this.env.lastUpdate > this.env.updateInterval) {
|
|
||||||
this.env.lastUpdate = now;
|
|
||||||
this.env.setTimeout(afterExecute, 0);
|
|
||||||
} else {
|
|
||||||
afterExecute();
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
var id = this.env.setInterval(function() {
|
|
||||||
if (action.finished) {
|
|
||||||
self.env.clearInterval(id);
|
|
||||||
afterExecute();
|
|
||||||
}
|
|
||||||
}, 150);
|
|
||||||
};
|
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
/**
|
||||||
|
* Blocks are functions with executable code that make up a spec.
|
||||||
|
*
|
||||||
|
* @constructor
|
||||||
|
* @param {jasmine.Env} env
|
||||||
|
* @param {Function} func
|
||||||
|
* @param {jasmine.Spec} spec
|
||||||
|
*/
|
||||||
|
jasmine.Block = function(env, func, spec) {
|
||||||
|
this.env = env;
|
||||||
|
this.func = func;
|
||||||
|
this.spec = spec;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Block.prototype.execute = function(onComplete) {
|
||||||
|
try {
|
||||||
|
this.func.apply(this.spec);
|
||||||
|
} catch (e) {
|
||||||
|
this.spec.fail(e);
|
||||||
|
}
|
||||||
|
onComplete();
|
||||||
|
};
|
||||||
+61
-16
@@ -6,12 +6,11 @@
|
|||||||
jasmine.Env = function() {
|
jasmine.Env = function() {
|
||||||
this.currentSpec = null;
|
this.currentSpec = null;
|
||||||
this.currentSuite = null;
|
this.currentSuite = null;
|
||||||
this.currentRunner = new jasmine.Runner(this);
|
this.currentRunner_ = new jasmine.Runner(this);
|
||||||
this.currentlyRunningTests = false;
|
|
||||||
|
|
||||||
this.reporter = new jasmine.MultiReporter();
|
this.reporter = new jasmine.MultiReporter();
|
||||||
|
|
||||||
this.updateInterval = 0;
|
this.updateInterval = jasmine.DEFAULT_UPDATE_INTERVAL;
|
||||||
this.lastUpdate = 0;
|
this.lastUpdate = 0;
|
||||||
this.specFilter = function() {
|
this.specFilter = function() {
|
||||||
return true;
|
return true;
|
||||||
@@ -20,6 +19,14 @@ jasmine.Env = function() {
|
|||||||
this.nextSpecId_ = 0;
|
this.nextSpecId_ = 0;
|
||||||
this.nextSuiteId_ = 0;
|
this.nextSuiteId_ = 0;
|
||||||
this.equalityTesters_ = [];
|
this.equalityTesters_ = [];
|
||||||
|
|
||||||
|
// wrap matchers
|
||||||
|
this.matchersClass = function() {
|
||||||
|
jasmine.Matchers.apply(this, arguments);
|
||||||
|
};
|
||||||
|
jasmine.util.inherit(this.matchersClass, jasmine.Matchers);
|
||||||
|
|
||||||
|
jasmine.Matchers.wrapInto_(jasmine.Matchers.prototype, this.matchersClass);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -28,6 +35,31 @@ jasmine.Env.prototype.clearTimeout = jasmine.clearTimeout;
|
|||||||
jasmine.Env.prototype.setInterval = jasmine.setInterval;
|
jasmine.Env.prototype.setInterval = jasmine.setInterval;
|
||||||
jasmine.Env.prototype.clearInterval = jasmine.clearInterval;
|
jasmine.Env.prototype.clearInterval = jasmine.clearInterval;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @returns an object containing jasmine version build info, if set.
|
||||||
|
*/
|
||||||
|
jasmine.Env.prototype.version = function () {
|
||||||
|
if (jasmine.version_) {
|
||||||
|
return jasmine.version_;
|
||||||
|
} else {
|
||||||
|
throw new Error('Version not set');
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @returns a sequential integer starting at 0
|
||||||
|
*/
|
||||||
|
jasmine.Env.prototype.nextSpecId = function () {
|
||||||
|
return this.nextSpecId_++;
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @returns a sequential integer starting at 0
|
||||||
|
*/
|
||||||
|
jasmine.Env.prototype.nextSuiteId = function () {
|
||||||
|
return this.nextSuiteId_++;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Register a reporter to receive status updates from Jasmine.
|
* Register a reporter to receive status updates from Jasmine.
|
||||||
* @param {jasmine.Reporter} reporter An object which will receive status updates.
|
* @param {jasmine.Reporter} reporter An object which will receive status updates.
|
||||||
@@ -37,7 +69,7 @@ jasmine.Env.prototype.addReporter = function(reporter) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Env.prototype.execute = function() {
|
jasmine.Env.prototype.execute = function() {
|
||||||
this.currentRunner.execute();
|
this.currentRunner_.execute();
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Env.prototype.describe = function(description, specDefinitions) {
|
jasmine.Env.prototype.describe = function(description, specDefinitions) {
|
||||||
@@ -45,9 +77,9 @@ jasmine.Env.prototype.describe = function(description, specDefinitions) {
|
|||||||
|
|
||||||
var parentSuite = this.currentSuite;
|
var parentSuite = this.currentSuite;
|
||||||
if (parentSuite) {
|
if (parentSuite) {
|
||||||
parentSuite.specs.push(suite);
|
parentSuite.add(suite);
|
||||||
} else {
|
} else {
|
||||||
this.currentRunner.suites.push(suite);
|
this.currentRunner_.add(suite);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.currentSuite = suite;
|
this.currentSuite = suite;
|
||||||
@@ -60,11 +92,24 @@ jasmine.Env.prototype.describe = function(description, specDefinitions) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Env.prototype.beforeEach = function(beforeEachFunction) {
|
jasmine.Env.prototype.beforeEach = function(beforeEachFunction) {
|
||||||
|
if (this.currentSuite) {
|
||||||
this.currentSuite.beforeEach(beforeEachFunction);
|
this.currentSuite.beforeEach(beforeEachFunction);
|
||||||
|
} else {
|
||||||
|
this.currentRunner_.beforeEach(beforeEachFunction);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Env.prototype.currentRunner = function () {
|
||||||
|
return this.currentRunner_;
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Env.prototype.afterEach = function(afterEachFunction) {
|
jasmine.Env.prototype.afterEach = function(afterEachFunction) {
|
||||||
|
if (this.currentSuite) {
|
||||||
this.currentSuite.afterEach(afterEachFunction);
|
this.currentSuite.afterEach(afterEachFunction);
|
||||||
|
} else {
|
||||||
|
this.currentRunner_.afterEach(afterEachFunction);
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Env.prototype.xdescribe = function(desc, specDefinitions) {
|
jasmine.Env.prototype.xdescribe = function(desc, specDefinitions) {
|
||||||
@@ -76,11 +121,11 @@ jasmine.Env.prototype.xdescribe = function(desc, specDefinitions) {
|
|||||||
|
|
||||||
jasmine.Env.prototype.it = function(description, func) {
|
jasmine.Env.prototype.it = function(description, func) {
|
||||||
var spec = new jasmine.Spec(this, this.currentSuite, description);
|
var spec = new jasmine.Spec(this, this.currentSuite, description);
|
||||||
this.currentSuite.specs.push(spec);
|
this.currentSuite.add(spec);
|
||||||
this.currentSpec = spec;
|
this.currentSpec = spec;
|
||||||
|
|
||||||
if (func) {
|
if (func) {
|
||||||
spec.addToQueue(func);
|
spec.runs(func);
|
||||||
}
|
}
|
||||||
|
|
||||||
return spec;
|
return spec;
|
||||||
@@ -88,7 +133,7 @@ jasmine.Env.prototype.it = function(description, func) {
|
|||||||
|
|
||||||
jasmine.Env.prototype.xit = function(desc, func) {
|
jasmine.Env.prototype.xit = function(desc, func) {
|
||||||
return {
|
return {
|
||||||
id: this.nextSpecId_++,
|
id: this.nextSpecId(),
|
||||||
runs: function() {
|
runs: function() {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -103,23 +148,23 @@ jasmine.Env.prototype.compareObjects_ = function(a, b, mismatchKeys, mismatchVal
|
|||||||
b.__Jasmine_been_here_before__ = a;
|
b.__Jasmine_been_here_before__ = a;
|
||||||
|
|
||||||
var hasKey = function(obj, keyName) {
|
var hasKey = function(obj, keyName) {
|
||||||
return obj != null && obj[keyName] !== undefined;
|
return obj != null && obj[keyName] !== jasmine.undefined;
|
||||||
};
|
};
|
||||||
|
|
||||||
for (var property in b) {
|
for (var property in b) {
|
||||||
if (!hasKey(a, property) && hasKey(b, property)) {
|
if (!hasKey(a, property) && hasKey(b, property)) {
|
||||||
mismatchKeys.push("expected has key '" + property + "', but missing from <b>actual</b>.");
|
mismatchKeys.push("expected has key '" + property + "', but missing from actual.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (property in a) {
|
for (property in a) {
|
||||||
if (!hasKey(b, property) && hasKey(a, property)) {
|
if (!hasKey(b, property) && hasKey(a, property)) {
|
||||||
mismatchKeys.push("<b>expected</b> missing key '" + property + "', but present in actual.");
|
mismatchKeys.push("expected missing key '" + property + "', but present in actual.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (property in b) {
|
for (property in b) {
|
||||||
if (property == '__Jasmine_been_here_before__') continue;
|
if (property == '__Jasmine_been_here_before__') continue;
|
||||||
if (!this.equals_(a[property], b[property], mismatchKeys, mismatchValues)) {
|
if (!this.equals_(a[property], b[property], mismatchKeys, mismatchValues)) {
|
||||||
mismatchValues.push("'" + property + "' was<br /><br />'" + (b[property] ? jasmine.util.htmlEscape(b[property].toString()) : b[property]) + "'<br /><br />in expected, but was<br /><br />'" + (a[property] ? jasmine.util.htmlEscape(a[property].toString()) : a[property]) + "'<br /><br />in actual.<br />");
|
mismatchValues.push("'" + property + "' was '" + (b[property] ? jasmine.util.htmlEscape(b[property].toString()) : b[property]) + "' in expected, but was '" + (a[property] ? jasmine.util.htmlEscape(a[property].toString()) : a[property]) + "' in actual.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -138,8 +183,8 @@ jasmine.Env.prototype.equals_ = function(a, b, mismatchKeys, mismatchValues) {
|
|||||||
|
|
||||||
if (a === b) return true;
|
if (a === b) return true;
|
||||||
|
|
||||||
if (a === undefined || a === null || b === undefined || b === null) {
|
if (a === jasmine.undefined || a === null || b === jasmine.undefined || b === null) {
|
||||||
return (a == undefined && b == undefined);
|
return (a == jasmine.undefined && b == jasmine.undefined);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (jasmine.isDomNode(a) && jasmine.isDomNode(b)) {
|
if (jasmine.isDomNode(a) && jasmine.isDomNode(b)) {
|
||||||
@@ -165,7 +210,7 @@ jasmine.Env.prototype.equals_ = function(a, b, mismatchKeys, mismatchValues) {
|
|||||||
for (var i = 0; i < this.equalityTesters_.length; i++) {
|
for (var i = 0; i < this.equalityTesters_.length; i++) {
|
||||||
var equalityTester = this.equalityTesters_[i];
|
var equalityTester = this.equalityTesters_[i];
|
||||||
var result = equalityTester(a, b, this, mismatchKeys, mismatchValues);
|
var result = equalityTester(a, b, this, mismatchKeys, mismatchValues);
|
||||||
if (result !== undefined) return result;
|
if (result !== jasmine.undefined) return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
//Straight check
|
//Straight check
|
||||||
|
|||||||
+60
-15
@@ -5,36 +5,48 @@
|
|||||||
jasmine.JsApiReporter = function() {
|
jasmine.JsApiReporter = function() {
|
||||||
this.started = false;
|
this.started = false;
|
||||||
this.finished = false;
|
this.finished = false;
|
||||||
this.suites = [];
|
this.suites_ = [];
|
||||||
this.results = {};
|
this.results_ = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.JsApiReporter.prototype.reportRunnerStarting = function(runner) {
|
jasmine.JsApiReporter.prototype.reportRunnerStarting = function(runner) {
|
||||||
this.started = true;
|
this.started = true;
|
||||||
|
var suites = runner.suites();
|
||||||
for (var i = 0; i < runner.suites.length; i++) {
|
for (var i = 0; i < suites.length; i++) {
|
||||||
var suite = runner.suites[i];
|
var suite = suites[i];
|
||||||
this.suites.push(this.summarize_(suite));
|
this.suites_.push(this.summarize_(suite));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.JsApiReporter.prototype.suites = function() {
|
||||||
|
return this.suites_;
|
||||||
|
};
|
||||||
|
|
||||||
jasmine.JsApiReporter.prototype.summarize_ = function(suiteOrSpec) {
|
jasmine.JsApiReporter.prototype.summarize_ = function(suiteOrSpec) {
|
||||||
|
var isSuite = suiteOrSpec instanceof jasmine.Suite;
|
||||||
var summary = {
|
var summary = {
|
||||||
id: suiteOrSpec.id,
|
id: suiteOrSpec.id,
|
||||||
name: suiteOrSpec.description,
|
name: suiteOrSpec.description,
|
||||||
type: suiteOrSpec instanceof jasmine.Suite ? 'suite' : 'spec',
|
type: isSuite ? 'suite' : 'spec',
|
||||||
children: []
|
children: []
|
||||||
};
|
};
|
||||||
|
if (isSuite) {
|
||||||
if (suiteOrSpec.specs) {
|
var specs = suiteOrSpec.specs();
|
||||||
for (var i = 0; i < suiteOrSpec.specs.length; i++) {
|
for (var i = 0; i < specs.length; i++) {
|
||||||
summary.children.push(this.summarize_(suiteOrSpec.specs[i]));
|
summary.children.push(this.summarize_(specs[i]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return summary;
|
return summary;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.JsApiReporter.prototype.results = function() {
|
||||||
|
return this.results_;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.JsApiReporter.prototype.resultsForSpec = function(specId) {
|
||||||
|
return this.results_[specId];
|
||||||
|
};
|
||||||
|
|
||||||
//noinspection JSUnusedLocalSymbols
|
//noinspection JSUnusedLocalSymbols
|
||||||
jasmine.JsApiReporter.prototype.reportRunnerResults = function(runner) {
|
jasmine.JsApiReporter.prototype.reportRunnerResults = function(runner) {
|
||||||
this.finished = true;
|
this.finished = true;
|
||||||
@@ -46,9 +58,9 @@ jasmine.JsApiReporter.prototype.reportSuiteResults = function(suite) {
|
|||||||
|
|
||||||
//noinspection JSUnusedLocalSymbols
|
//noinspection JSUnusedLocalSymbols
|
||||||
jasmine.JsApiReporter.prototype.reportSpecResults = function(spec) {
|
jasmine.JsApiReporter.prototype.reportSpecResults = function(spec) {
|
||||||
this.results[spec.id] = {
|
this.results_[spec.id] = {
|
||||||
messages: spec.results.getItems(),
|
messages: spec.results().getItems(),
|
||||||
result: spec.results.failedCount > 0 ? "failed" : "passed"
|
result: spec.results().failedCount > 0 ? "failed" : "passed"
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -56,3 +68,36 @@ jasmine.JsApiReporter.prototype.reportSpecResults = function(spec) {
|
|||||||
jasmine.JsApiReporter.prototype.log = function(str) {
|
jasmine.JsApiReporter.prototype.log = function(str) {
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.JsApiReporter.prototype.resultsForSpecs = function(specIds){
|
||||||
|
var results = {};
|
||||||
|
for (var i = 0; i < specIds.length; i++) {
|
||||||
|
var specId = specIds[i];
|
||||||
|
results[specId] = this.summarizeResult_(this.results_[specId]);
|
||||||
|
}
|
||||||
|
return results;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.JsApiReporter.prototype.summarizeResult_ = function(result){
|
||||||
|
var summaryMessages = [];
|
||||||
|
var messagesLength = result.messages.length
|
||||||
|
for (var messageIndex = 0; messageIndex < messagesLength; messageIndex++) {
|
||||||
|
var resultMessage = result.messages[messageIndex];
|
||||||
|
summaryMessages.push({
|
||||||
|
text: resultMessage.text,
|
||||||
|
passed: resultMessage.passed ? resultMessage.passed() : true,
|
||||||
|
type: resultMessage.type,
|
||||||
|
message: resultMessage.message,
|
||||||
|
trace: {
|
||||||
|
stack: resultMessage.passed && !resultMessage.passed() ? resultMessage.trace.stack : jasmine.undefined
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
var summaryResult = {
|
||||||
|
result : result.result,
|
||||||
|
messages : summaryMessages
|
||||||
|
};
|
||||||
|
|
||||||
|
return summaryResult;
|
||||||
|
};
|
||||||
|
|
||||||
|
|||||||
+171
-122
@@ -1,247 +1,296 @@
|
|||||||
jasmine.Matchers = function(env, actual, results) {
|
/**
|
||||||
|
* @constructor
|
||||||
|
* @param {jasmine.Env} env
|
||||||
|
* @param actual
|
||||||
|
* @param {jasmine.Spec} spec
|
||||||
|
*/
|
||||||
|
jasmine.Matchers = function(env, actual, spec) {
|
||||||
this.env = env;
|
this.env = env;
|
||||||
this.actual = actual;
|
this.actual = actual;
|
||||||
this.passing_message = 'Passed.';
|
this.spec = spec;
|
||||||
this.results = results || new jasmine.NestedResults();
|
this.reportWasCalled_ = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Matchers.pp = function(str) {
|
jasmine.Matchers.pp = function(str) {
|
||||||
return jasmine.util.htmlEscape(jasmine.pp(str));
|
return jasmine.util.htmlEscape(jasmine.pp(str));
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Matchers.prototype.getResults = function() {
|
/** @deprecated */
|
||||||
return this.results;
|
|
||||||
};
|
|
||||||
|
|
||||||
jasmine.Matchers.prototype.report = function(result, failing_message, details) {
|
jasmine.Matchers.prototype.report = function(result, failing_message, details) {
|
||||||
this.results.addResult(new jasmine.ExpectationResult(result, result ? this.passing_message : failing_message, details));
|
// todo first: report deprecation warning [xw]
|
||||||
|
// todo later: throw new Error("As of jasmine 0.xx, custom matchers must be implemented differently -- please see jasmine docs");
|
||||||
|
this.reportWasCalled_ = true;
|
||||||
|
var expectationResult = new jasmine.ExpectationResult({
|
||||||
|
passed: result,
|
||||||
|
message: failing_message,
|
||||||
|
details: details
|
||||||
|
});
|
||||||
|
this.spec.addMatcherResult(expectationResult);
|
||||||
return result;
|
return result;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.Matchers.wrapInto_ = function(prototype, matchersClass) {
|
||||||
|
for (var methodName in prototype) {
|
||||||
|
if (methodName == 'report') continue;
|
||||||
|
var orig = prototype[methodName];
|
||||||
|
matchersClass.prototype[methodName] = jasmine.Matchers.matcherFn_(methodName, orig);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Matchers.matcherFn_ = function(matcherName, matcherFunction) {
|
||||||
|
return function() {
|
||||||
|
var matcherArgs = jasmine.util.argsToArray(arguments);
|
||||||
|
var result = matcherFunction.apply(this, arguments);
|
||||||
|
if (this.reportWasCalled_) return result;
|
||||||
|
|
||||||
|
var message;
|
||||||
|
if (!result) {
|
||||||
|
if (this.message) {
|
||||||
|
message = this.message.apply(this, arguments);
|
||||||
|
} else {
|
||||||
|
var englishyPredicate = matcherName.replace(/[A-Z]/g, function(s) { return ' ' + s.toLowerCase(); });
|
||||||
|
message = "Expected " + jasmine.pp(this.actual) + " " + englishyPredicate;
|
||||||
|
if (matcherArgs.length > 0) {
|
||||||
|
for (var i = 0; i < matcherArgs.length; i++) {
|
||||||
|
if (i > 0) message += ",";
|
||||||
|
message += " " + jasmine.pp(matcherArgs[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
message += ".";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var expectationResult = new jasmine.ExpectationResult({
|
||||||
|
matcherName: matcherName,
|
||||||
|
passed: result,
|
||||||
|
expected: matcherArgs.length > 1 ? matcherArgs : matcherArgs[0],
|
||||||
|
actual: this.actual,
|
||||||
|
message: message
|
||||||
|
});
|
||||||
|
this.spec.addMatcherResult(expectationResult);
|
||||||
|
return result;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that compares the actual to the expected using ===.
|
* toBe: compares the actual to the expected using ===
|
||||||
*
|
|
||||||
* @param expected
|
* @param expected
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toBe = function(expected) {
|
jasmine.Matchers.prototype.toBe = function(expected) {
|
||||||
return this.report(this.actual === expected, 'Expected<br /><br />' + jasmine.Matchers.pp(expected)
|
return this.actual === expected;
|
||||||
+ '<br /><br />to be the same object as<br /><br />' + jasmine.Matchers.pp(this.actual)
|
|
||||||
+ '<br />');
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that compares the actual to the expected using !==
|
* toNotBe: compares the actual to the expected using !==
|
||||||
* @param expected
|
* @param expected
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toNotBe = function(expected) {
|
jasmine.Matchers.prototype.toNotBe = function(expected) {
|
||||||
return this.report(this.actual !== expected, 'Expected<br /><br />' + jasmine.Matchers.pp(expected)
|
return this.actual !== expected;
|
||||||
+ '<br /><br />to be a different object from actual, but they were the same.');
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that compares the actual to the expected using common sense equality. Handles Objects, Arrays, etc.
|
* toEqual: compares the actual to the expected using common sense equality. Handles Objects, Arrays, etc.
|
||||||
*
|
*
|
||||||
* @param expected
|
* @param expected
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toEqual = function(expected) {
|
jasmine.Matchers.prototype.toEqual = function(expected) {
|
||||||
var mismatchKeys = [];
|
return this.env.equals_(this.actual, expected);
|
||||||
var mismatchValues = [];
|
|
||||||
|
|
||||||
var formatMismatches = function(name, array) {
|
|
||||||
if (array.length == 0) return '';
|
|
||||||
var errorOutput = '<br /><br />Different ' + name + ':<br />';
|
|
||||||
for (var i = 0; i < array.length; i++) {
|
|
||||||
errorOutput += array[i] + '<br />';
|
|
||||||
}
|
|
||||||
return errorOutput;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return this.report(this.env.equals_(this.actual, expected, mismatchKeys, mismatchValues),
|
|
||||||
'Expected<br /><br />' + jasmine.Matchers.pp(expected)
|
|
||||||
+ '<br /><br />but got<br /><br />' + jasmine.Matchers.pp(this.actual)
|
|
||||||
+ '<br />'
|
|
||||||
+ formatMismatches('Keys', mismatchKeys)
|
|
||||||
+ formatMismatches('Values', mismatchValues), {
|
|
||||||
matcherName: 'toEqual', expected: expected, actual: this.actual
|
|
||||||
});
|
|
||||||
};
|
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.should_equal = jasmine.Matchers.prototype.toEqual;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that compares the actual to the expected using the ! of jasmine.Matchers.toEqual
|
* toNotEqual: compares the actual to the expected using the ! of jasmine.Matchers.toEqual
|
||||||
* @param expected
|
* @param expected
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toNotEqual = function(expected) {
|
jasmine.Matchers.prototype.toNotEqual = function(expected) {
|
||||||
return this.report(!this.env.equals_(this.actual, expected),
|
return !this.env.equals_(this.actual, expected);
|
||||||
'Expected ' + jasmine.Matchers.pp(expected) + ' to not equal ' + jasmine.Matchers.pp(this.actual) + ', but it does.');
|
|
||||||
};
|
};
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.should_not_equal = jasmine.Matchers.prototype.toNotEqual;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that compares the actual to the expected using a regular expression. Constructs a RegExp, so takes
|
* Matcher that compares the actual to the expected using a regular expression. Constructs a RegExp, so takes
|
||||||
* a pattern or a String.
|
* a pattern or a String.
|
||||||
*
|
*
|
||||||
* @param reg_exp
|
* @param expected
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toMatch = function(reg_exp) {
|
jasmine.Matchers.prototype.toMatch = function(expected) {
|
||||||
return this.report((new RegExp(reg_exp).test(this.actual)),
|
return new RegExp(expected).test(this.actual);
|
||||||
'Expected ' + jasmine.Matchers.pp(this.actual) + ' to match ' + reg_exp + '.');
|
|
||||||
};
|
};
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.should_match = jasmine.Matchers.prototype.toMatch;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that compares the actual to the expected using the boolean inverse of jasmine.Matchers.toMatch
|
* Matcher that compares the actual to the expected using the boolean inverse of jasmine.Matchers.toMatch
|
||||||
* @param reg_exp
|
* @param expected
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toNotMatch = function(reg_exp) {
|
jasmine.Matchers.prototype.toNotMatch = function(expected) {
|
||||||
return this.report((!new RegExp(reg_exp).test(this.actual)),
|
return !(new RegExp(expected).test(this.actual));
|
||||||
'Expected ' + jasmine.Matchers.pp(this.actual) + ' to not match ' + reg_exp + '.');
|
|
||||||
};
|
};
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.should_not_match = jasmine.Matchers.prototype.toNotMatch;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that compares the acutal to undefined.
|
* Matcher that compares the actual to jasmine.undefined.
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toBeDefined = function() {
|
jasmine.Matchers.prototype.toBeDefined = function() {
|
||||||
return this.report((this.actual !== undefined),
|
return (this.actual !== jasmine.undefined);
|
||||||
'Expected a value to be defined but it was undefined.');
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Matcher that compares the actual to jasmine.undefined.
|
||||||
|
*/
|
||||||
|
jasmine.Matchers.prototype.toBeUndefined = function() {
|
||||||
|
return (this.actual === jasmine.undefined);
|
||||||
};
|
};
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.should_be_defined = jasmine.Matchers.prototype.toBeDefined;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that compares the actual to null.
|
* Matcher that compares the actual to null.
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toBeNull = function() {
|
jasmine.Matchers.prototype.toBeNull = function() {
|
||||||
return this.report((this.actual === null),
|
return (this.actual === null);
|
||||||
'Expected a value to be null but it was ' + jasmine.Matchers.pp(this.actual) + '.');
|
|
||||||
};
|
};
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.should_be_null = jasmine.Matchers.prototype.toBeNull;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that boolean not-nots the actual.
|
* Matcher that boolean not-nots the actual.
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toBeTruthy = function() {
|
jasmine.Matchers.prototype.toBeTruthy = function() {
|
||||||
return this.report(!!this.actual,
|
return !!this.actual;
|
||||||
'Expected a value to be truthy but it was ' + jasmine.Matchers.pp(this.actual) + '.');
|
|
||||||
};
|
};
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.should_be_truthy = jasmine.Matchers.prototype.toBeTruthy;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that boolean nots the actual.
|
* Matcher that boolean nots the actual.
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toBeFalsy = function() {
|
jasmine.Matchers.prototype.toBeFalsy = function() {
|
||||||
return this.report(!this.actual,
|
return !this.actual;
|
||||||
'Expected a value to be falsy but it was ' + jasmine.Matchers.pp(this.actual) + '.');
|
|
||||||
};
|
};
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.should_be_falsy = jasmine.Matchers.prototype.toBeFalsy;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that checks to see if the acutal, a Jasmine spy, was called.
|
* Matcher that checks to see if the actual, a Jasmine spy, was called.
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.wasCalled = function() {
|
jasmine.Matchers.prototype.wasCalled = function() {
|
||||||
if (!this.actual || !this.actual.isSpy) {
|
|
||||||
return this.report(false, 'Expected a spy, but got ' + jasmine.Matchers.pp(this.actual) + '.');
|
|
||||||
}
|
|
||||||
if (arguments.length > 0) {
|
if (arguments.length > 0) {
|
||||||
return this.report(false, 'wasCalled matcher does not take arguments');
|
throw new Error('wasCalled does not take arguments, use wasCalledWith');
|
||||||
}
|
}
|
||||||
return this.report((this.actual.wasCalled),
|
|
||||||
'Expected spy "' + this.actual.identity + '" to have been called, but it was not.');
|
if (!jasmine.isSpy(this.actual)) {
|
||||||
|
throw new Error('Expected a spy, but got ' + jasmine.Matchers.pp(this.actual) + '.');
|
||||||
|
}
|
||||||
|
|
||||||
|
this.message = function() {
|
||||||
|
return "Expected spy " + this.actual.identity + " to have been called.";
|
||||||
|
};
|
||||||
|
|
||||||
|
return this.actual.wasCalled;
|
||||||
};
|
};
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.was_called = jasmine.Matchers.prototype.wasCalled;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that checks to see if the acutal, a Jasmine spy, was not called.
|
* Matcher that checks to see if the actual, a Jasmine spy, was not called.
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.wasNotCalled = function() {
|
jasmine.Matchers.prototype.wasNotCalled = function() {
|
||||||
if (!this.actual || !this.actual.isSpy) {
|
if (arguments.length > 0) {
|
||||||
return this.report(false, 'Expected a spy, but got ' + jasmine.Matchers.pp(this.actual) + '.');
|
throw new Error('wasNotCalled does not take arguments');
|
||||||
}
|
}
|
||||||
return this.report((!this.actual.wasCalled),
|
|
||||||
'Expected spy "' + this.actual.identity + '" to not have been called, but it was.');
|
if (!jasmine.isSpy(this.actual)) {
|
||||||
|
throw new Error('Expected a spy, but got ' + jasmine.Matchers.pp(this.actual) + '.');
|
||||||
|
}
|
||||||
|
|
||||||
|
this.message = function() {
|
||||||
|
return "Expected spy " + this.actual.identity + " to not have been called.";
|
||||||
|
};
|
||||||
|
|
||||||
|
return !this.actual.wasCalled;
|
||||||
};
|
};
|
||||||
/** @deprecated */
|
|
||||||
jasmine.Matchers.prototype.was_not_called = jasmine.Matchers.prototype.wasNotCalled;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that checks to see if the acutal, a Jasmine spy, was called with a set of parameters.
|
* Matcher that checks to see if the actual, a Jasmine spy, was called with a set of parameters.
|
||||||
*
|
*
|
||||||
* @example
|
* @example
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.wasCalledWith = function() {
|
jasmine.Matchers.prototype.wasCalledWith = function() {
|
||||||
if (!this.actual || !this.actual.isSpy) {
|
var expectedArgs = jasmine.util.argsToArray(arguments);
|
||||||
return this.report(false, 'Expected a spy, but got ' + jasmine.Matchers.pp(this.actual) + '.', {
|
if (!jasmine.isSpy(this.actual)) {
|
||||||
matcherName: 'wasCalledWith'
|
throw new Error('Expected a spy, but got ' + jasmine.Matchers.pp(this.actual) + '.');
|
||||||
});
|
}
|
||||||
|
this.message = function() {
|
||||||
|
if (this.actual.callCount == 0) {
|
||||||
|
return "Expected spy to have been called with " + jasmine.pp(expectedArgs) + " but it was never called.";
|
||||||
|
} else {
|
||||||
|
return "Expected spy to have been called with " + jasmine.pp(expectedArgs) + " but was called with " + jasmine.pp(this.actual.argsForCall);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
return this.env.contains_(this.actual.argsForCall, expectedArgs);
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Matchers.prototype.wasNotCalledWith = function() {
|
||||||
|
var expectedArgs = jasmine.util.argsToArray(arguments);
|
||||||
|
if (!jasmine.isSpy(this.actual)) {
|
||||||
|
throw new Error('Expected a spy, but got ' + jasmine.Matchers.pp(this.actual) + '.');
|
||||||
}
|
}
|
||||||
|
|
||||||
var args = jasmine.util.argsToArray(arguments);
|
this.message = function() {
|
||||||
|
return "Expected spy not to have been called with " + jasmine.pp(expectedArgs) + " but it was";
|
||||||
|
};
|
||||||
|
|
||||||
return this.report(this.env.contains_(this.actual.argsForCall, args),
|
return !this.env.contains_(this.actual.argsForCall, expectedArgs);
|
||||||
'Expected ' + jasmine.Matchers.pp(this.actual.argsForCall) + ' to contain ' + jasmine.Matchers.pp(args) + ', but it does not.', {
|
|
||||||
matcherName: 'wasCalledWith', expected: args, actual: this.actual.argsForCall
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that checks that the expected item is an element in the actual Array.
|
* Matcher that checks that the expected item is an element in the actual Array.
|
||||||
*
|
*
|
||||||
* @param {Object} item
|
* @param {Object} expected
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toContain = function(item) {
|
jasmine.Matchers.prototype.toContain = function(expected) {
|
||||||
return this.report(this.env.contains_(this.actual, item),
|
return this.env.contains_(this.actual, expected);
|
||||||
'Expected ' + jasmine.Matchers.pp(this.actual) + ' to contain ' + jasmine.Matchers.pp(item) + ', but it does not.', {
|
|
||||||
matcherName: 'toContain', expected: item, actual: this.actual
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that checks that the expected item is NOT an element in the actual Array.
|
* Matcher that checks that the expected item is NOT an element in the actual Array.
|
||||||
*
|
*
|
||||||
* @param {Object} item
|
* @param {Object} expected
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toNotContain = function(item) {
|
jasmine.Matchers.prototype.toNotContain = function(expected) {
|
||||||
return this.report(!this.env.contains_(this.actual, item),
|
return !this.env.contains_(this.actual, expected);
|
||||||
'Expected ' + jasmine.Matchers.pp(this.actual) + ' not to contain ' + jasmine.Matchers.pp(item) + ', but it does.');
|
};
|
||||||
|
|
||||||
|
jasmine.Matchers.prototype.toBeLessThan = function(expected) {
|
||||||
|
return this.actual < expected;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Matchers.prototype.toBeGreaterThan = function(expected) {
|
||||||
|
return this.actual > expected;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Matcher that checks that the expected exception was thrown by the actual.
|
* Matcher that checks that the expected exception was thrown by the actual.
|
||||||
*
|
*
|
||||||
* @param {String} expectedException
|
* @param {String} expected
|
||||||
*/
|
*/
|
||||||
jasmine.Matchers.prototype.toThrow = function(expectedException) {
|
jasmine.Matchers.prototype.toThrow = function(expected) {
|
||||||
var exception = null;
|
var result = false;
|
||||||
|
var exception;
|
||||||
|
if (typeof this.actual != 'function') {
|
||||||
|
throw new Error('Actual is not a function');
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
this.actual();
|
this.actual();
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
exception = e;
|
exception = e;
|
||||||
}
|
}
|
||||||
if (expectedException !== undefined) {
|
if (exception) {
|
||||||
if (exception == null) {
|
result = (expected === jasmine.undefined || this.env.equals_(exception.message || exception, expected.message || expected));
|
||||||
return this.report(false, "Expected function to throw " + jasmine.Matchers.pp(expectedException) + ", but it did not.");
|
|
||||||
}
|
}
|
||||||
return this.report(
|
|
||||||
this.env.equals_(
|
this.message = function() {
|
||||||
exception.message || exception,
|
if (exception && (expected === jasmine.undefined || !this.env.equals_(exception.message || exception, expected.message || expected))) {
|
||||||
expectedException.message || expectedException),
|
return ["Expected function to throw", expected.message || expected, ", but it threw", exception.message || exception].join(' ');
|
||||||
"Expected function to throw " + jasmine.Matchers.pp(expectedException) + ", but it threw " + jasmine.Matchers.pp(exception) + ".");
|
|
||||||
} else {
|
} else {
|
||||||
return this.report(exception != null, "Expected function to throw an exception, but it did not.");
|
return "Expected function to throw an exception.";
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
return result;
|
||||||
|
};
|
||||||
|
|
||||||
jasmine.Matchers.Any = function(expectedClass) {
|
jasmine.Matchers.Any = function(expectedClass) {
|
||||||
this.expectedClass = expectedClass;
|
this.expectedClass = expectedClass;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ jasmine.NestedResults.prototype.addResult = function(result) {
|
|||||||
this.rollupCounts(result);
|
this.rollupCounts(result);
|
||||||
} else {
|
} else {
|
||||||
this.totalCount++;
|
this.totalCount++;
|
||||||
if (result.passed) {
|
if (result.passed()) {
|
||||||
this.passedCount++;
|
this.passedCount++;
|
||||||
} else {
|
} else {
|
||||||
this.failedCount++;
|
this.failedCount++;
|
||||||
@@ -75,6 +75,6 @@ jasmine.NestedResults.prototype.addResult = function(result) {
|
|||||||
/**
|
/**
|
||||||
* @returns {Boolean} True if <b>everything</b> below passed
|
* @returns {Boolean} True if <b>everything</b> below passed
|
||||||
*/
|
*/
|
||||||
jasmine.NestedResults.prototype.__defineGetter__('passed', function() {
|
jasmine.NestedResults.prototype.passed = function() {
|
||||||
return this.passedCount === this.totalCount;
|
return this.passedCount === this.totalCount;
|
||||||
});
|
};
|
||||||
|
|||||||
@@ -9,17 +9,15 @@ jasmine.PrettyPrinter = function() {
|
|||||||
* Formats a value in a nice, human-readable string.
|
* Formats a value in a nice, human-readable string.
|
||||||
*
|
*
|
||||||
* @param value
|
* @param value
|
||||||
* @returns {String}
|
|
||||||
*/
|
*/
|
||||||
jasmine.PrettyPrinter.prototype.format = function(value) {
|
jasmine.PrettyPrinter.prototype.format = function(value) {
|
||||||
if (this.ppNestLevel_ > 40) {
|
if (this.ppNestLevel_ > 40) {
|
||||||
// return '(jasmine.pp nested too deeply!)';
|
|
||||||
throw new Error('jasmine.PrettyPrinter: format() nested too deeply!');
|
throw new Error('jasmine.PrettyPrinter: format() nested too deeply!');
|
||||||
}
|
}
|
||||||
|
|
||||||
this.ppNestLevel_++;
|
this.ppNestLevel_++;
|
||||||
try {
|
try {
|
||||||
if (value === undefined) {
|
if (value === jasmine.undefined) {
|
||||||
this.emitScalar('undefined');
|
this.emitScalar('undefined');
|
||||||
} else if (value === null) {
|
} else if (value === null) {
|
||||||
this.emitScalar('null');
|
this.emitScalar('null');
|
||||||
@@ -29,6 +27,10 @@ jasmine.PrettyPrinter.prototype.format = function(value) {
|
|||||||
this.emitScalar(value.toString());
|
this.emitScalar(value.toString());
|
||||||
} else if (typeof value === 'string') {
|
} else if (typeof value === 'string') {
|
||||||
this.emitString(value);
|
this.emitString(value);
|
||||||
|
} else if (jasmine.isSpy(value)) {
|
||||||
|
this.emitScalar("spy on " + value.identity);
|
||||||
|
} else if (value instanceof RegExp) {
|
||||||
|
this.emitScalar(value.toString());
|
||||||
} else if (typeof value === 'function') {
|
} else if (typeof value === 'function') {
|
||||||
this.emitScalar('Function');
|
this.emitScalar('Function');
|
||||||
} else if (typeof value.nodeType === 'number') {
|
} else if (typeof value.nodeType === 'number') {
|
||||||
@@ -56,7 +58,7 @@ jasmine.PrettyPrinter.prototype.format = function(value) {
|
|||||||
jasmine.PrettyPrinter.prototype.iterateObject = function(obj, fn) {
|
jasmine.PrettyPrinter.prototype.iterateObject = function(obj, fn) {
|
||||||
for (var property in obj) {
|
for (var property in obj) {
|
||||||
if (property == '__Jasmine_been_here_before__') continue;
|
if (property == '__Jasmine_been_here_before__') continue;
|
||||||
fn(property, obj.__lookupGetter__(property) != null);
|
fn(property, obj.__lookupGetter__ ? (obj.__lookupGetter__(property) != null) : false);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,94 @@
|
|||||||
|
jasmine.Queue = function(env) {
|
||||||
|
this.env = env;
|
||||||
|
this.blocks = [];
|
||||||
|
this.running = false;
|
||||||
|
this.index = 0;
|
||||||
|
this.offset = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Queue.prototype.addBefore = function(block) {
|
||||||
|
this.blocks.unshift(block);
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Queue.prototype.add = function(block) {
|
||||||
|
this.blocks.push(block);
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Queue.prototype.insertNext = function(block) {
|
||||||
|
this.blocks.splice((this.index + this.offset + 1), 0, block);
|
||||||
|
this.offset++;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Queue.prototype.start = function(onComplete) {
|
||||||
|
this.running = true;
|
||||||
|
this.onComplete = onComplete;
|
||||||
|
this.next_();
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Queue.prototype.isRunning = function() {
|
||||||
|
return this.running;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Queue.LOOP_DONT_RECURSE = true;
|
||||||
|
|
||||||
|
jasmine.Queue.prototype.next_ = function() {
|
||||||
|
var self = this;
|
||||||
|
var goAgain = true;
|
||||||
|
|
||||||
|
while (goAgain) {
|
||||||
|
goAgain = false;
|
||||||
|
|
||||||
|
if (self.index < self.blocks.length) {
|
||||||
|
var calledSynchronously = true;
|
||||||
|
var completedSynchronously = false;
|
||||||
|
|
||||||
|
var onComplete = function () {
|
||||||
|
if (jasmine.Queue.LOOP_DONT_RECURSE && calledSynchronously) {
|
||||||
|
completedSynchronously = true;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
self.offset = 0;
|
||||||
|
self.index++;
|
||||||
|
|
||||||
|
var now = new Date().getTime();
|
||||||
|
if (self.env.updateInterval && now - self.env.lastUpdate > self.env.updateInterval) {
|
||||||
|
self.env.lastUpdate = now;
|
||||||
|
self.env.setTimeout(function() {
|
||||||
|
self.next_();
|
||||||
|
}, 0);
|
||||||
|
} else {
|
||||||
|
if (jasmine.Queue.LOOP_DONT_RECURSE && completedSynchronously) {
|
||||||
|
goAgain = true;
|
||||||
|
} else {
|
||||||
|
self.next_();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
self.blocks[self.index].execute(onComplete);
|
||||||
|
|
||||||
|
calledSynchronously = false;
|
||||||
|
if (completedSynchronously) {
|
||||||
|
onComplete();
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
self.running = false;
|
||||||
|
if (self.onComplete) {
|
||||||
|
self.onComplete();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Queue.prototype.results = function() {
|
||||||
|
var results = new jasmine.NestedResults();
|
||||||
|
for (var i = 0; i < this.blocks.length; i++) {
|
||||||
|
if (this.blocks[i].results) {
|
||||||
|
results.addResult(this.blocks[i].results());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return results;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -1,84 +0,0 @@
|
|||||||
/**
|
|
||||||
* QueuedFunction is how ActionCollections' actions are implemented
|
|
||||||
*
|
|
||||||
* @constructor
|
|
||||||
* @param {jasmine.Env} env
|
|
||||||
* @param {Function} func
|
|
||||||
* @param {Number} timeout
|
|
||||||
* @param {Function} latchFunction
|
|
||||||
* @param {jasmine.Spec} spec
|
|
||||||
*/
|
|
||||||
jasmine.QueuedFunction = function(env, func, timeout, latchFunction, spec) {
|
|
||||||
this.env = env;
|
|
||||||
this.func = func;
|
|
||||||
this.timeout = timeout;
|
|
||||||
this.latchFunction = latchFunction;
|
|
||||||
this.spec = spec;
|
|
||||||
|
|
||||||
this.totalTimeSpentWaitingForLatch = 0;
|
|
||||||
this.latchTimeoutIncrement = 100;
|
|
||||||
};
|
|
||||||
|
|
||||||
jasmine.QueuedFunction.prototype.next = function() {
|
|
||||||
this.spec.finish(); // default value is to be done after one function
|
|
||||||
};
|
|
||||||
|
|
||||||
jasmine.QueuedFunction.prototype.safeExecute = function() {
|
|
||||||
this.env.reporter.log('>> Jasmine Running ' + this.spec.suite.description + ' ' + this.spec.description + '...');
|
|
||||||
|
|
||||||
try {
|
|
||||||
this.func.apply(this.spec);
|
|
||||||
} catch (e) {
|
|
||||||
this.fail(e);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
jasmine.QueuedFunction.prototype.execute = function() {
|
|
||||||
var self = this;
|
|
||||||
var executeNow = function() {
|
|
||||||
self.safeExecute();
|
|
||||||
self.next();
|
|
||||||
};
|
|
||||||
|
|
||||||
var executeLater = function() {
|
|
||||||
self.env.setTimeout(executeNow, self.timeout);
|
|
||||||
};
|
|
||||||
|
|
||||||
var executeNowOrLater = function() {
|
|
||||||
var latchFunctionResult;
|
|
||||||
|
|
||||||
try {
|
|
||||||
latchFunctionResult = self.latchFunction.apply(self.spec);
|
|
||||||
} catch (e) {
|
|
||||||
self.fail(e);
|
|
||||||
self.next();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (latchFunctionResult) {
|
|
||||||
executeNow();
|
|
||||||
} else if (self.totalTimeSpentWaitingForLatch >= self.timeout) {
|
|
||||||
var message = 'timed out after ' + self.timeout + ' msec waiting for ' + (self.latchFunction.description || 'something to happen');
|
|
||||||
self.fail({
|
|
||||||
name: 'timeout',
|
|
||||||
message: message
|
|
||||||
});
|
|
||||||
self.next();
|
|
||||||
} else {
|
|
||||||
self.totalTimeSpentWaitingForLatch += self.latchTimeoutIncrement;
|
|
||||||
self.env.setTimeout(executeNowOrLater, self.latchTimeoutIncrement);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
if (this.latchFunction !== undefined) {
|
|
||||||
executeNowOrLater();
|
|
||||||
} else if (this.timeout > 0) {
|
|
||||||
executeLater();
|
|
||||||
} else {
|
|
||||||
executeNow();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
jasmine.QueuedFunction.prototype.fail = function(e) {
|
|
||||||
this.spec.results.addResult(new jasmine.ExpectationResult(false, jasmine.util.formatException(e), null));
|
|
||||||
};
|
|
||||||
+11
-1
@@ -1,10 +1,20 @@
|
|||||||
/* JasmineReporters.reporter
|
/** JasmineReporters.reporter
|
||||||
* Base object that will get called whenever a Spec, Suite, or Runner is done. It is up to
|
* Base object that will get called whenever a Spec, Suite, or Runner is done. It is up to
|
||||||
* descendants of this object to do something with the results (see json_reporter.js)
|
* descendants of this object to do something with the results (see json_reporter.js)
|
||||||
|
*
|
||||||
|
* @deprecated
|
||||||
*/
|
*/
|
||||||
jasmine.Reporters = {};
|
jasmine.Reporters = {};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated
|
||||||
|
* @param callbacks
|
||||||
|
*/
|
||||||
jasmine.Reporters.reporter = function(callbacks) {
|
jasmine.Reporters.reporter = function(callbacks) {
|
||||||
|
/**
|
||||||
|
* @deprecated
|
||||||
|
* @param callbacks
|
||||||
|
*/
|
||||||
var that = {
|
var that = {
|
||||||
callbacks: callbacks || {},
|
callbacks: callbacks || {},
|
||||||
|
|
||||||
|
|||||||
+49
-12
@@ -5,27 +5,64 @@
|
|||||||
* @param {jasmine.Env} env
|
* @param {jasmine.Env} env
|
||||||
*/
|
*/
|
||||||
jasmine.Runner = function(env) {
|
jasmine.Runner = function(env) {
|
||||||
jasmine.ActionCollection.call(this, env);
|
var self = this;
|
||||||
|
self.env = env;
|
||||||
this.suites = this.actions;
|
self.queue = new jasmine.Queue(env);
|
||||||
|
self.before_ = [];
|
||||||
|
self.after_ = [];
|
||||||
|
self.suites_ = [];
|
||||||
};
|
};
|
||||||
jasmine.util.inherit(jasmine.Runner, jasmine.ActionCollection);
|
|
||||||
|
|
||||||
jasmine.Runner.prototype.execute = function() {
|
jasmine.Runner.prototype.execute = function() {
|
||||||
if (this.env.reporter.reportRunnerStarting) {
|
var self = this;
|
||||||
this.env.reporter.reportRunnerStarting(this);
|
if (self.env.reporter.reportRunnerStarting) {
|
||||||
|
self.env.reporter.reportRunnerStarting(this);
|
||||||
}
|
}
|
||||||
jasmine.ActionCollection.prototype.execute.call(this);
|
self.queue.start(function () {
|
||||||
|
self.finishCallback();
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.Runner.prototype.beforeEach = function(beforeEachFunction) {
|
||||||
|
beforeEachFunction.typeName = 'beforeEach';
|
||||||
|
this.before_.push(beforeEachFunction);
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Runner.prototype.afterEach = function(afterEachFunction) {
|
||||||
|
afterEachFunction.typeName = 'afterEach';
|
||||||
|
this.after_.push(afterEachFunction);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
jasmine.Runner.prototype.finishCallback = function() {
|
jasmine.Runner.prototype.finishCallback = function() {
|
||||||
this.env.reporter.reportRunnerResults(this);
|
this.env.reporter.reportRunnerResults(this);
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Runner.prototype.getResults = function() {
|
jasmine.Runner.prototype.addSuite = function(suite) {
|
||||||
var results = new jasmine.NestedResults();
|
this.suites_.push(suite);
|
||||||
for (var i = 0; i < this.suites.length; i++) {
|
};
|
||||||
results.rollupCounts(this.suites[i].getResults());
|
|
||||||
|
jasmine.Runner.prototype.add = function(block) {
|
||||||
|
if (block instanceof jasmine.Suite) {
|
||||||
|
this.addSuite(block);
|
||||||
}
|
}
|
||||||
return results;
|
this.queue.add(block);
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Runner.prototype.specs = function () {
|
||||||
|
var suites = this.suites();
|
||||||
|
var specs = [];
|
||||||
|
for (var i = 0; i < suites.length; i++) {
|
||||||
|
specs = specs.concat(suites[i].specs());
|
||||||
|
}
|
||||||
|
return specs;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
jasmine.Runner.prototype.suites = function() {
|
||||||
|
return this.suites_;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Runner.prototype.results = function() {
|
||||||
|
return this.queue.results();
|
||||||
};
|
};
|
||||||
+96
-96
@@ -7,82 +7,89 @@
|
|||||||
* @param {String} description
|
* @param {String} description
|
||||||
*/
|
*/
|
||||||
jasmine.Spec = function(env, suite, description) {
|
jasmine.Spec = function(env, suite, description) {
|
||||||
this.id = env.nextSpecId_++;
|
if (!env) {
|
||||||
this.env = env;
|
throw new Error('jasmine.Env() required');
|
||||||
this.suite = suite;
|
}
|
||||||
this.description = description;
|
if (!suite) {
|
||||||
this.queue = [];
|
throw new Error('jasmine.Suite() required');
|
||||||
this.currentTimeout = 0;
|
}
|
||||||
this.currentLatchFunction = undefined;
|
var spec = this;
|
||||||
this.finished = false;
|
spec.id = env.nextSpecId ? env.nextSpecId() : null;
|
||||||
this.afterCallbacks = [];
|
spec.env = env;
|
||||||
this.spies_ = [];
|
spec.suite = suite;
|
||||||
|
spec.description = description;
|
||||||
|
spec.queue = new jasmine.Queue(env);
|
||||||
|
|
||||||
this.results = new jasmine.NestedResults();
|
spec.afterCallbacks = [];
|
||||||
this.results.description = description;
|
spec.spies_ = [];
|
||||||
this.runs = this.addToQueue;
|
|
||||||
this.matchersClass = null;
|
spec.results_ = new jasmine.NestedResults();
|
||||||
|
spec.results_.description = description;
|
||||||
|
spec.matchersClass = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.getFullName = function() {
|
jasmine.Spec.prototype.getFullName = function() {
|
||||||
return this.suite.getFullName() + ' ' + this.description + '.';
|
return this.suite.getFullName() + ' ' + this.description + '.';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
jasmine.Spec.prototype.results = function() {
|
||||||
|
return this.results_;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Spec.prototype.log = function(message) {
|
||||||
|
return this.results_.log(message);
|
||||||
|
};
|
||||||
|
|
||||||
|
/** @deprecated */
|
||||||
jasmine.Spec.prototype.getResults = function() {
|
jasmine.Spec.prototype.getResults = function() {
|
||||||
return this.results;
|
return this.results_;
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.addToQueue = function(func) {
|
jasmine.Spec.prototype.runs = function (func) {
|
||||||
var queuedFunction = new jasmine.QueuedFunction(this.env, func, this.currentTimeout, this.currentLatchFunction, this);
|
var block = new jasmine.Block(this.env, func, this);
|
||||||
this.queue.push(queuedFunction);
|
this.addToQueue(block);
|
||||||
|
return this;
|
||||||
if (this.queue.length > 1) {
|
|
||||||
var previousQueuedFunction = this.queue[this.queue.length - 2];
|
|
||||||
previousQueuedFunction.next = function() {
|
|
||||||
queuedFunction.execute();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.Spec.prototype.addToQueue = function (block) {
|
||||||
|
if (this.queue.isRunning()) {
|
||||||
|
this.queue.insertNext(block);
|
||||||
|
} else {
|
||||||
|
this.queue.add(block);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.resetTimeout();
|
|
||||||
return this;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
jasmine.Spec.prototype.addMatcherResult = function(result) {
|
||||||
* @private
|
this.results_.addResult(result);
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
jasmine.Spec.prototype.expects_that = function(actual) {
|
|
||||||
return this.expect(actual);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
|
||||||
* @private
|
|
||||||
*/
|
|
||||||
jasmine.Spec.prototype.expect = function(actual) {
|
jasmine.Spec.prototype.expect = function(actual) {
|
||||||
return new (this.getMatchersClass_())(this.env, actual, this.results);
|
return new (this.getMatchersClass_())(this.env, actual, this);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
|
||||||
* @private
|
|
||||||
*/
|
|
||||||
jasmine.Spec.prototype.waits = function(timeout) {
|
jasmine.Spec.prototype.waits = function(timeout) {
|
||||||
this.currentTimeout = timeout;
|
var waitsFunc = new jasmine.WaitsBlock(this.env, timeout, this);
|
||||||
this.currentLatchFunction = undefined;
|
this.addToQueue(waitsFunc);
|
||||||
return this;
|
return this;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
jasmine.Spec.prototype.waitsFor = function(timeout, latchFunction, timeoutMessage) {
|
||||||
* @private
|
var waitsForFunc = new jasmine.WaitsForBlock(this.env, timeout, latchFunction, timeoutMessage, this);
|
||||||
*/
|
this.addToQueue(waitsForFunc);
|
||||||
jasmine.Spec.prototype.waitsFor = function(timeout, latchFunction, message) {
|
|
||||||
this.currentTimeout = timeout;
|
|
||||||
this.currentLatchFunction = latchFunction;
|
|
||||||
this.currentLatchFunction.description = message;
|
|
||||||
return this;
|
return this;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.Spec.prototype.fail = function (e) {
|
||||||
|
var expectationResult = new jasmine.ExpectationResult({
|
||||||
|
passed: false,
|
||||||
|
message: e ? jasmine.util.formatException(e) : 'Exception'
|
||||||
|
});
|
||||||
|
this.results_.addResult(expectationResult);
|
||||||
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.getMatchersClass_ = function() {
|
jasmine.Spec.prototype.getMatchersClass_ = function() {
|
||||||
return this.matchersClass || jasmine.Matchers;
|
return this.matchersClass || this.env.matchersClass;
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.addMatchers = function(matchersPrototype) {
|
jasmine.Spec.prototype.addMatchers = function(matchersPrototype) {
|
||||||
@@ -91,76 +98,69 @@ jasmine.Spec.prototype.addMatchers = function(matchersPrototype) {
|
|||||||
parent.apply(this, arguments);
|
parent.apply(this, arguments);
|
||||||
};
|
};
|
||||||
jasmine.util.inherit(newMatchersClass, parent);
|
jasmine.util.inherit(newMatchersClass, parent);
|
||||||
for (var method in matchersPrototype) {
|
jasmine.Matchers.wrapInto_(matchersPrototype, newMatchersClass);
|
||||||
newMatchersClass.prototype[method] = matchersPrototype[method];
|
|
||||||
}
|
|
||||||
this.matchersClass = newMatchersClass;
|
this.matchersClass = newMatchersClass;
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.resetTimeout = function() {
|
|
||||||
this.currentTimeout = 0;
|
|
||||||
this.currentLatchFunction = undefined;
|
|
||||||
};
|
|
||||||
|
|
||||||
jasmine.Spec.prototype.finishCallback = function() {
|
jasmine.Spec.prototype.finishCallback = function() {
|
||||||
this.env.reporter.reportSpecResults(this);
|
this.env.reporter.reportSpecResults(this);
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.finish = function() {
|
jasmine.Spec.prototype.finish = function(onComplete) {
|
||||||
this.safeExecuteAfters();
|
|
||||||
|
|
||||||
this.removeAllSpies();
|
this.removeAllSpies();
|
||||||
this.finishCallback();
|
this.finishCallback();
|
||||||
this.finished = true;
|
if (onComplete) {
|
||||||
|
onComplete();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.after = function(doAfter) {
|
jasmine.Spec.prototype.after = function(doAfter, test) {
|
||||||
|
|
||||||
|
if (this.queue.isRunning()) {
|
||||||
|
this.queue.add(new jasmine.Block(this.env, doAfter, this));
|
||||||
|
} else {
|
||||||
this.afterCallbacks.unshift(doAfter);
|
this.afterCallbacks.unshift(doAfter);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.execute = function() {
|
jasmine.Spec.prototype.execute = function(onComplete) {
|
||||||
if (!this.env.specFilter(this)) {
|
var spec = this;
|
||||||
this.results.skipped = true;
|
if (!spec.env.specFilter(spec)) {
|
||||||
this.finishCallback();
|
spec.results_.skipped = true;
|
||||||
this.finished = true;
|
spec.finish(onComplete);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
this.env.reporter.log('>> Jasmine Running ' + this.suite.description + ' ' + this.description + '...');
|
||||||
|
|
||||||
this.env.currentSpec = this;
|
spec.env.currentSpec = spec;
|
||||||
this.env.currentlyRunningTests = true;
|
|
||||||
|
|
||||||
this.safeExecuteBefores();
|
spec.addBeforesAndAftersToQueue();
|
||||||
|
|
||||||
if (this.queue[0]) {
|
spec.queue.start(function () {
|
||||||
this.queue[0].execute();
|
spec.finish(onComplete);
|
||||||
} else {
|
});
|
||||||
this.finish();
|
|
||||||
}
|
|
||||||
this.env.currentlyRunningTests = false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.safeExecuteBefores = function() {
|
jasmine.Spec.prototype.addBeforesAndAftersToQueue = function() {
|
||||||
var befores = [];
|
var runner = this.env.currentRunner();
|
||||||
for (var suite = this.suite; suite; suite = suite.parentSuite) {
|
for (var suite = this.suite; suite; suite = suite.parentSuite) {
|
||||||
if (suite.beforeEachFunction) befores.push(suite.beforeEachFunction);
|
for (var i = 0; i < suite.before_.length; i++) {
|
||||||
|
this.queue.addBefore(new jasmine.Block(this.env, suite.before_[i], this));
|
||||||
}
|
}
|
||||||
|
|
||||||
while (befores.length) {
|
|
||||||
this.safeExecuteBeforeOrAfter(befores.pop());
|
|
||||||
}
|
}
|
||||||
};
|
for (var i = 0; i < runner.before_.length; i++) {
|
||||||
|
this.queue.addBefore(new jasmine.Block(this.env, runner.before_[i], this));
|
||||||
jasmine.Spec.prototype.safeExecuteAfters = function() {
|
|
||||||
for (var suite = this.suite; suite; suite = suite.parentSuite) {
|
|
||||||
if (suite.afterEachFunction) this.safeExecuteBeforeOrAfter(suite.afterEachFunction);
|
|
||||||
}
|
}
|
||||||
};
|
for (i = 0; i < this.afterCallbacks.length; i++) {
|
||||||
|
this.queue.add(new jasmine.Block(this.env, this.afterCallbacks[i], this));
|
||||||
jasmine.Spec.prototype.safeExecuteBeforeOrAfter = function(func) {
|
}
|
||||||
try {
|
for (suite = this.suite; suite; suite = suite.parentSuite) {
|
||||||
func.apply(this);
|
for (var i = 0; i < suite.after_.length; i++) {
|
||||||
} catch (e) {
|
this.queue.add(new jasmine.Block(this.env, suite.after_[i], this));
|
||||||
this.results.addResult(new jasmine.ExpectationResult(false, func.typeName + '() fail: ' + jasmine.util.formatException(e), null));
|
}
|
||||||
|
}
|
||||||
|
for (var i = 0; i < runner.after_.length; i++) {
|
||||||
|
this.queue.add(new jasmine.Block(this.env, runner.after_[i], this));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -169,11 +169,11 @@ jasmine.Spec.prototype.explodes = function() {
|
|||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Spec.prototype.spyOn = function(obj, methodName, ignoreMethodDoesntExist) {
|
jasmine.Spec.prototype.spyOn = function(obj, methodName, ignoreMethodDoesntExist) {
|
||||||
if (obj == undefined) {
|
if (obj == jasmine.undefined) {
|
||||||
throw "spyOn could not find an object to spy upon for " + methodName + "()";
|
throw "spyOn could not find an object to spy upon for " + methodName + "()";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ignoreMethodDoesntExist && obj[methodName] === undefined) {
|
if (!ignoreMethodDoesntExist && obj[methodName] === jasmine.undefined) {
|
||||||
throw methodName + '() method does not exist';
|
throw methodName + '() method does not exist';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+35
-20
@@ -8,17 +8,16 @@
|
|||||||
* @param {jasmine.Suite} parentSuite
|
* @param {jasmine.Suite} parentSuite
|
||||||
*/
|
*/
|
||||||
jasmine.Suite = function(env, description, specDefinitions, parentSuite) {
|
jasmine.Suite = function(env, description, specDefinitions, parentSuite) {
|
||||||
jasmine.ActionCollection.call(this, env);
|
var self = this;
|
||||||
|
self.id = env.nextSuiteId ? env.nextSuiteId() : null;
|
||||||
this.id = env.nextSuiteId_++;
|
self.description = description;
|
||||||
this.description = description;
|
self.queue = new jasmine.Queue(env);
|
||||||
this.specs = this.actions;
|
self.parentSuite = parentSuite;
|
||||||
this.parentSuite = parentSuite;
|
self.env = env;
|
||||||
|
self.before_ = [];
|
||||||
this.beforeEachFunction = null;
|
self.after_ = [];
|
||||||
this.afterEachFunction = null;
|
self.specs_ = [];
|
||||||
};
|
};
|
||||||
jasmine.util.inherit(jasmine.Suite, jasmine.ActionCollection);
|
|
||||||
|
|
||||||
jasmine.Suite.prototype.getFullName = function() {
|
jasmine.Suite.prototype.getFullName = function() {
|
||||||
var fullName = this.description;
|
var fullName = this.description;
|
||||||
@@ -28,28 +27,44 @@ jasmine.Suite.prototype.getFullName = function() {
|
|||||||
return fullName;
|
return fullName;
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Suite.prototype.finishCallback = function() {
|
jasmine.Suite.prototype.finish = function(onComplete) {
|
||||||
this.env.reporter.reportSuiteResults(this);
|
this.env.reporter.reportSuiteResults(this);
|
||||||
|
this.finished = true;
|
||||||
|
if (typeof(onComplete) == 'function') {
|
||||||
|
onComplete();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Suite.prototype.beforeEach = function(beforeEachFunction) {
|
jasmine.Suite.prototype.beforeEach = function(beforeEachFunction) {
|
||||||
beforeEachFunction.typeName = 'beforeEach';
|
beforeEachFunction.typeName = 'beforeEach';
|
||||||
this.beforeEachFunction = beforeEachFunction;
|
this.before_.push(beforeEachFunction);
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Suite.prototype.afterEach = function(afterEachFunction) {
|
jasmine.Suite.prototype.afterEach = function(afterEachFunction) {
|
||||||
afterEachFunction.typeName = 'afterEach';
|
afterEachFunction.typeName = 'afterEach';
|
||||||
this.afterEachFunction = afterEachFunction;
|
this.after_.push(afterEachFunction);
|
||||||
};
|
};
|
||||||
|
|
||||||
jasmine.Suite.prototype.getResults = function() {
|
jasmine.Suite.prototype.results = function() {
|
||||||
var results = new jasmine.NestedResults();
|
return this.queue.results();
|
||||||
results.description = this.description;
|
};
|
||||||
results.id = this.id;
|
|
||||||
|
|
||||||
for (var i = 0; i < this.specs.length; i++) {
|
jasmine.Suite.prototype.add = function(block) {
|
||||||
results.rollupCounts(this.specs[i].getResults());
|
if (block instanceof jasmine.Suite) {
|
||||||
|
this.env.currentRunner().addSuite(block);
|
||||||
|
} else {
|
||||||
|
this.specs_.push(block);
|
||||||
}
|
}
|
||||||
return results;
|
this.queue.add(block);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jasmine.Suite.prototype.specs = function() {
|
||||||
|
return this.specs_;
|
||||||
|
};
|
||||||
|
|
||||||
|
jasmine.Suite.prototype.execute = function(onComplete) {
|
||||||
|
var self = this;
|
||||||
|
this.queue.start(function () {
|
||||||
|
self.finish(onComplete);
|
||||||
|
});
|
||||||
|
};
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user