Steve Gravrock 472f61ab37 Provide better diffs for object graphs that include objectContaining
Turns this output:
    Expected $[0].foo = Object({ a: 4, b: 5 }) to equal <jasmine.objectContaining(Object({ a: 1, c: 3 }))>.

into this:
    Expected $[0].foo.a = 4 to equal 1.
    Expected $[0].foo.c = undefined to equal 3.

And turns this output:
    Expected spy jasmineDone to have been called with:
       [ ... snipped very long expected call ]
    but actual calls were:
       [ ... snipped very long actual call ]

    Call 0:
      Expected $[0] = Object({ overallStatus: 'failed', totalTime: 1, incompleteReason: undefined, order: Order({ random: true, seed: '88732', sort: Function }), failedExpectations: [ Object({ matcherName: 'toBeResolved', passed: false, message: 'Suite "a suite" ran a "toBeResolved" expectation after it finished.
      Did you forget to return or await the result of expectAsync?', error: undefined, errorForStack: Error, actual: [object Promise], expected: [  ], globalErrorType: 'lateExpeztation' }) ], deprecationWarnings: [  ] }) to equal <jasmine.objectContaining(Object({ failedExpectations: [ <jasmine.objectContaining(Object({ passed: false, globalErrorType: 'lateExpectation', message: 'Suite "a suite" ran a "toBeResolved" expectation after it finished.
      Did you forget to return or await the result of expectAsync?', matcherName: 'toBeResolved' }))> ] }))>.

into this:
    Expected spy jasmineDone to have been called with:
       [ ... snipped very long expected call ]
    but actual calls were:
       [ ... snipped very long actual call ]

    Call 0:
      Expected $[0].failedExpectations[0].globalErrorType = 'lateExpeztation' to equal 'lateExpectation'.
2019-09-28 18:03:12 -07:00
2019-05-21 18:23:48 -07:00
2014-06-06 23:09:08 -07:00
2019-09-20 16:57:20 -07:00
2016-02-28 18:33:39 +01:00
2019-06-20 06:46:51 -04:00
2012-12-03 09:38:54 -08:00
2019-09-03 15:40:53 -07:00
2017-06-04 00:40:53 -03:00
2017-08-10 10:38:05 -07:00
2019-05-21 18:23:48 -07:00
2019-09-20 16:57:20 -07:00
2019-09-03 15:40:53 -07:00
2018-01-16 17:29:34 -08:00

Build Status Open Source Helpers FOSSA Status

A JavaScript Testing Framework

Jasmine is a Behavior Driven Development testing framework for JavaScript. It does not rely on browsers, DOM, or any JavaScript framework. Thus it's suited for websites, Node.js projects, or anywhere that JavaScript can run.

Documentation & guides live here: http://jasmine.github.io For a quick start guide of Jasmine, see the beginning of http://jasmine.github.io/edge/introduction.html

Upgrading from Jasmine 2.x? Check out the 3.0 release notes for a list of what's new (including breaking changes).

Contributing

Please read the contributors' guide

Installation

For the Jasmine NPM module:
https://github.com/jasmine/jasmine-npm

For the Jasmine Ruby Gem:
https://github.com/jasmine/jasmine-gem

For the Jasmine Python Egg:
https://github.com/jasmine/jasmine-py

For the Jasmine headless browser gulp plugin:
https://github.com/jasmine/gulp-jasmine-browser

To install Jasmine standalone on your local box (where {#.#.#} below is substituted by the release number downloaded):

  • Download the standalone distribution for your desired release from the releases page
  • Create a Jasmine directory in your project - mkdir my-project/jasmine
  • Move the dist to your project directory - mv jasmine/dist/jasmine-standalone-{#.#.#}.zip my-project/jasmine
  • Change directory - cd my-project/jasmine
  • Unzip the dist - unzip jasmine-standalone-{#.#.#}.zip

Add the following to your HTML file:

<link rel="shortcut icon" type="image/png" href="jasmine/lib/jasmine-{#.#.#}/jasmine_favicon.png">
<link rel="stylesheet" type="text/css" href="jasmine/lib/jasmine-{#.#.#}/jasmine.css">

<script type="text/javascript" src="jasmine/lib/jasmine-{#.#.#}/jasmine.js"></script>
<script type="text/javascript" src="jasmine/lib/jasmine-{#.#.#}/jasmine-html.js"></script>
<script type="text/javascript" src="jasmine/lib/jasmine-{#.#.#}/boot.js"></script>

Supported environments

Jasmine tests itself across many browsers (Safari, Chrome, Firefox, Microsoft Edge, and new Internet Explorer) as well as nodejs. To see the exact version tests are run against look at our .travis.yml

Sauce Test Status

Support

Maintainers

Maintainers Emeritus

Copyright (c) 2008-2018 Pivotal Labs. This software is licensed under the MIT License.

License

FOSSA Status

Description
No description provided
Readme 28 KiB