forked from Mirrors/doipjs
1596 lines
57 KiB
Markdown
1596 lines
57 KiB
Markdown
|
||
9.2.0 / 2020-10-06
|
||
==================
|
||
|
||
* Update dependencies (#2299)
|
||
* Update sandbox docs with missing comma
|
||
* Add minor markdown formatting to release docs for sandbox
|
||
* Minor formatting improvements to legacy sandbox documentation
|
||
|
||
9.1.0 / 2020-09-29
|
||
==================
|
||
|
||
* Add a calledOnceWithMatch assertion (#2294)
|
||
|
||
9.0.3 / 2020-08-11
|
||
==================
|
||
|
||
* Upgrade nise to latest
|
||
* Upgrade @sinonjs/samsam to latest
|
||
|
||
9.0.2 / 2020-04-08
|
||
==================
|
||
|
||
* Bump @sinonjs/fake-timers (fix error when using Node's util/promisify with setTimeout)
|
||
* Upgrade @sinonjs/commons (fix error when trying to calculate function name from generators)
|
||
|
||
9.0.1 / 2020-03-10
|
||
==================
|
||
|
||
* Fix #2226: restore props defined on prototype chain by deleting
|
||
|
||
9.0.0 / 2020-02-19
|
||
==================
|
||
|
||
* Ignore errors on thisValue property accesses (#2216)
|
||
* Add firstArg to spy calls and fakes. (#2150)
|
||
* Drop Node 8 support
|
||
|
||
8.1.1 / 2020-01-22
|
||
==================
|
||
|
||
* Fundraiser for better docs: https://www.gofundme.com/f/sinon-docs
|
||
|
||
8.1.0 / 2020-01-16
|
||
==================
|
||
|
||
* Support negative indices in getCall (#2199)
|
||
|
||
8.0.4 / 2020-01-06
|
||
==================
|
||
|
||
* Remove misleading 'own' from exception message
|
||
|
||
8.0.3 / 2020-01-06
|
||
==================
|
||
|
||
* Move .printf to proxy
|
||
|
||
8.0.2 / 2019-12-30
|
||
==================
|
||
|
||
* Upgrade @sinonjs/samsam to latest
|
||
* Upgrade nise to 3.0.1
|
||
|
||
8.0.1 / 2019-12-23
|
||
==================
|
||
|
||
* Force upgrade @sinonjs/commons (#2181)
|
||
* Update `docs/changelog.md` and set new release id in `docs/_config.yml`
|
||
* Add release documentation for v8.0.0
|
||
|
||
8.0.0 / 2019-12-22
|
||
==================
|
||
|
||
The major release is caused by removing old mistakes and upgrading dependencies that themselves have had new major releases.
|
||
|
||
* Upgrade nise, @sinonjs/formatio, @sinonjs/samsam and @sinonjs/referee
|
||
* Update lolex and nise to get new async timer methods (see https://github.com/sinonjs/lolex/blob/master/CHANGELOG.md)
|
||
* Remove `sinon.spyCall`
|
||
* Remove `sinon.sandbox.create`
|
||
* Remove obsolete `deprecated.printWarning` stubbing from test
|
||
|
||
7.5.0 / 2019-09-23
|
||
==================
|
||
|
||
* Add sinon.assert.calledOnceWithExactly
|
||
* Feature parity: support _spying_ all methods on an object
|
||
|
||
7.4.2 / 2019-09-02
|
||
==================
|
||
|
||
* Restore sinon.createStubInstance() behaviour (#2073)
|
||
* Fix Typo in migration 6 and updated migration docs for migration from… (#2074)
|
||
|
||
7.4.1 / 2019-08-06
|
||
==================
|
||
|
||
* Update nise and lolex (minor versions)
|
||
* add callThroughWithNew method
|
||
* add browser field
|
||
* Create COMPATIBILITY.md (#2051)
|
||
* Fix sinon.resetHistory() does not reset history (#2022)
|
||
|
||
7.4.0
|
||
=====
|
||
* Was unpublished (see #2071)
|
||
|
||
7.3.2 / 2019-04-17
|
||
==================
|
||
|
||
* Update Lolex to bring in fix for sinonjs/lolex#232 (queueMicrotask warning)
|
||
|
||
7.3.1 / 2019-03-27
|
||
==================
|
||
|
||
* Fix security issues
|
||
* Update @sinonjs/samsam to v3.3.1
|
||
|
||
7.3.0 / 2019-03-20
|
||
==================
|
||
|
||
* Simplify Circle CI setup
|
||
* Add a Docker Compose config file for testing the setup locally
|
||
* Inject createStubInstance and fake functionality
|
||
* Remove unused prop 'injectIntoThis'
|
||
* Fix #1974 by upgrading to @sinonjs/samsam@3.3.0
|
||
|
||
7.2.7 / 2019-03-04
|
||
==================
|
||
|
||
* Retain spy function names and fix spy.named(name) (#1987)
|
||
* Document spying on accessors (#1976)
|
||
|
||
7.2.6 / 2019-03-01
|
||
==================
|
||
|
||
* Upgrade @sinonjs/formatio
|
||
* Set `fake.lastArg` to last argument regardless of type
|
||
|
||
7.2.5 / 2019-02-27
|
||
==================
|
||
|
||
* don't call extends.nonEnum in spy.resetHistory (#1984)
|
||
|
||
7.2.4 / 2019-02-18
|
||
==================
|
||
|
||
* minor package updates
|
||
* Update eslint-plugin-mocha
|
||
* Fix high prio audit warnings
|
||
* Update nise to use @sinonjs/text-encoding
|
||
* Make all properties non-enumerable in spies, stubs, mocks and fakes
|
||
* docs(sandbox): add example for default sandbox
|
||
|
||
7.2.3 / 2019-01-19
|
||
==================
|
||
|
||
* Update @sinonjs/nise
|
||
* Fix stubbing function objects (#1968)
|
||
|
||
7.2.2 / 2018-12-12
|
||
==================
|
||
|
||
* Fix mock.withArgs using matchers (#1961)
|
||
|
||
7.2.1 / 2018-12-12
|
||
==================
|
||
|
||
* #1957: check for truthiness before checking whether optional override is a stub
|
||
* Upgrade @sinonjs/samsam
|
||
* Upgrade @sinonjs/referee to v3
|
||
|
||
7.2.0 / 2018-12-10
|
||
==================
|
||
|
||
* Upgrade to samsam 3 (#1955)
|
||
* Rename History.md to CHANGELOG.md
|
||
|
||
7.1.1 / 2018-10-31
|
||
==================
|
||
|
||
* Make the spy functions non enumerable so that printing it is more concise (#1936)
|
||
|
||
7.1.0 / 2018-10-25
|
||
==================
|
||
|
||
* Issue #1852: Add a way to pass a global context to lolex when calling useFakeTimers
|
||
* Get latest 'nise' patch
|
||
|
||
7.0.0 / 2018-10-14
|
||
==================
|
||
|
||
* Update to Lolex 3: no negative ticks allowed
|
||
|
||
6.3.5 / 2018-10-03
|
||
==================
|
||
|
||
* Upgrade lolex
|
||
* Upgrade @sinonjs/samsam - fixes minor issue with IE11 introduced in 6.3.4
|
||
|
||
6.3.4 / 2018-09-18
|
||
==================
|
||
|
||
* Update samsam, puppeteer and rollup
|
||
* Fix #1850 (keep context in fakes)
|
||
|
||
6.3.3 / 2018-09-14
|
||
==================
|
||
|
||
* Upgrade formatio, samsam, nise and referee
|
||
|
||
6.3.2 / 2018-09-13
|
||
==================
|
||
|
||
* Adds guard for empty properties in deepEqual when a matcher is provided (#1901)
|
||
|
||
6.3.1 / 2018-09-12
|
||
==================
|
||
|
||
* Fix use of non-cached reference to forEach
|
||
|
||
6.3.0 / 2018-09-12
|
||
==================
|
||
|
||
* Allow providing stubs overrides for sinon.createStubInstance (#1864)
|
||
* Bump Lolex to 2.7.4 to include IE fixes for performance.mark
|
||
|
||
6.2.0 / 2018-09-04
|
||
==================
|
||
|
||
* Add mock.usingPromise to set the Promise library for mock expectations
|
||
|
||
6.1.6 / 2018-09-04
|
||
==================
|
||
|
||
* Upgrade Lolex, Nise and other dependencies
|
||
|
||
6.1.5 / 2018-08-09
|
||
==================
|
||
|
||
* Fix #1796, failing to stub Array.prototype.sort
|
||
|
||
6.1.4 / 2018-07-21
|
||
==================
|
||
|
||
* Update lolex and nise dependencies to latest versions
|
||
|
||
6.1.3 / 2018-07-07
|
||
==================
|
||
|
||
* Fix issue with matchers and cyclic references (#1709)
|
||
|
||
6.1.2 / 2018-07-06
|
||
==================
|
||
|
||
* Made callsArg, returnsArg, and throwsArg more strict (#1848)
|
||
|
||
6.1.1 / 2018-07-06
|
||
==================
|
||
|
||
* Restore useFakeXMLHttpRequest correctly in default sandbox (#1840)
|
||
|
||
6.1.0 / 2018-07-03
|
||
==================
|
||
|
||
* Syntax sugar for resolvesArg (#1846)
|
||
|
||
6.0.1 / 2018-06-24
|
||
==================
|
||
|
||
* Add fake behaviors to sandbox (#1815)
|
||
|
||
6.0.0 / 2018-06-11
|
||
==================
|
||
|
||
* Export Sinon and its functions as an EcmaScript module (#1809 and #1835)
|
||
* Document/test call ordering checks
|
||
|
||
5.1.1 / 2018-06-07
|
||
==================
|
||
|
||
* Remove ES2015 'module' field for 5x branch (fix in seperate branch - see tag)
|
||
|
||
5.1.0 / 2018-06-06
|
||
==================
|
||
|
||
* Add `in` matcher (#1811)
|
||
|
||
5.0.10 / 2018-05-24
|
||
==================
|
||
|
||
* Remove functions shadowing time related sandbox methods (#1802)
|
||
|
||
5.0.9 / 2018-05-24
|
||
==================
|
||
|
||
* Upgrade `@std/esm` to `esm`.
|
||
|
||
5.0.8 / 2018-05-24
|
||
==================
|
||
|
||
* Add isSealed check to is-es-module to make certain ESM mocks possible
|
||
|
||
5.0.7 / 2018-05-07
|
||
==================
|
||
|
||
* Fix stub id prefix (#1786)
|
||
|
||
5.0.6 / 2018-05-07
|
||
==================
|
||
|
||
* Remove support-sinon.js as postinstall banner
|
||
|
||
5.0.5 / 2018-05-07
|
||
==================
|
||
|
||
* Refuse to replace already replaced values (#1779)
|
||
|
||
5.0.4 / 2018-05-05
|
||
==================
|
||
|
||
* Fix #1781: Reject non-function values a f argument to fake
|
||
|
||
5.0.3 / 2018-05-02
|
||
==================
|
||
|
||
* Fix #1775: Default sandbox does not restore stubs, spies, mocks
|
||
|
||
5.0.2 / 2018-05-01
|
||
==================
|
||
|
||
* Reset history on sandbox reset (#1770)
|
||
|
||
5.0.1 / 2018-04-27
|
||
==================
|
||
|
||
* Remove deprecated spy.reset method
|
||
* Add sinon.replace, sinon.replaceGetter and sinon.replaceSetter
|
||
* Add `fake`
|
||
* Use `sinon` as a default sandbox
|
||
|
||
4.5.0 / 2018-03-30
|
||
==================
|
||
|
||
* Add .lastArg and .callback to spy call
|
||
|
||
4.4.9 / 2018-03-27
|
||
==================
|
||
|
||
* Fix #1746: Remove dependency on ES2015 code from post-install script
|
||
|
||
4.4.8 / 2018-03-21
|
||
==================
|
||
|
||
* Fix 1743: Add scripts/support-sinon.js to package
|
||
|
||
4.4.7 / 2018-03-21
|
||
==================
|
||
|
||
* Improve the post-install script: remove noise, add :heart:
|
||
|
||
4.4.6 / 2018-03-15
|
||
==================
|
||
|
||
* Return returned value of invokant when using yields* and callsArg* (#1724)
|
||
|
||
4.4.5 / 2018-03-13
|
||
==================
|
||
|
||
* Add postinstall banner pointing to Open Collective
|
||
|
||
4.4.4 / 2018-03-13
|
||
==================
|
||
|
||
* Make @std/esm a devDependency
|
||
|
||
4.4.3 / 2018-03-12
|
||
==================
|
||
|
||
* Fix inconsistent newline usage for %D in spy.printf (#1717)
|
||
|
||
4.4.2 / 2018-02-25
|
||
==================
|
||
|
||
* Add descriptive error message on attempt to call argument that is not a function (#1695)
|
||
|
||
4.4.1 / 2018-02-24
|
||
==================
|
||
|
||
* Docs: make it clear that it is possible to use assert with spy calls (#1688)
|
||
|
||
4.4.0 / 2018-02-23
|
||
==================
|
||
|
||
* Change return value of yield and callArg
|
||
|
||
4.3.0 / 2018-02-10
|
||
==================
|
||
|
||
* add calledOnceWithExactly assertion (#1247)
|
||
|
||
4.2.3 / 2018-02-10
|
||
==================
|
||
|
||
* Replace formatio with @sinonjs/formatio
|
||
|
||
4.2.2 / 2018-01-26
|
||
==================
|
||
|
||
* Fix #1638: Make resetHistory work for props
|
||
|
||
4.2.1 / 2018-01-23
|
||
==================
|
||
|
||
* Performance: spend less time stubbing methods (#1627)
|
||
|
||
4.2.0 / 2018-01-21
|
||
==================
|
||
|
||
* Add match.every and match.some (#1624) (#1661)
|
||
|
||
4.1.6 / 2018-01-16
|
||
==================
|
||
|
||
* Fix bad build, missing nise@1.2.0 (#1656)
|
||
* Upgrade dependency supports-color
|
||
|
||
4.1.5 / 2018-01-13
|
||
==================
|
||
|
||
* Use nise.fakeServer as the sandbox serverPrototype (#1534)
|
||
|
||
4.1.4 / 2018-01-08
|
||
==================
|
||
|
||
* Fix: assertion error messages did not handle Symbol names (#1640)
|
||
* Deprecate spy.reset(), use spy.resetHistory() instead (#1446)
|
||
|
||
4.1.3 / 2017-12-07
|
||
==================
|
||
|
||
* Spy passes through calling with `new` (#1626)
|
||
|
||
4.1.2 / 2017-11-07
|
||
==================
|
||
|
||
* Update Lolex to include fix for #872
|
||
* Remove deprecated methods from documentation (#1613)
|
||
|
||
4.1.1 / 2017-11-03
|
||
==================
|
||
|
||
* Remove "engines" from package.json
|
||
|
||
4.1.0 / 2017-11-02
|
||
==================
|
||
|
||
* Add sandbox.createStubInstance (#1598)
|
||
|
||
4.0.2 / 2017-10-25
|
||
==================
|
||
|
||
* Update 'nise' to latest version (#1593)
|
||
* Use supports-color module to test if system supports colors
|
||
* Upgrade mocha to v4.0.0
|
||
* Make samsam a development dependency
|
||
* Make native-promise-only a development dependency
|
||
|
||
4.0.1 / 2017-10-04
|
||
==================
|
||
|
||
* Upgrade nise and lolex versions (#1579)
|
||
|
||
4.0.0 / 2017-09-26
|
||
==================
|
||
|
||
* Explicitly update fake xhr lib 'nise'
|
||
* Remove accidental dependency to "build"
|
||
* Remove support for stubbing undefined props (#1557)
|
||
|
||
3.3.0 / 2017-09-18
|
||
==================
|
||
|
||
* Adds sinon.match.hasNested
|
||
* fix 'callThrough with a mock expectation' (#1442)
|
||
* Documentation updates
|
||
* Allow custom defined instance checks if supported
|
||
|
||
3.2.1 / 2017-08-17
|
||
==================
|
||
|
||
* resolvesThis should override previous throws
|
||
* preserve context of functions from nise: fakeServer, fakeServerWithClock
|
||
* Fix regression for issue #1526 regarding onFirstCall().throws()
|
||
* Fix docs regression introduced by #1523
|
||
|
||
3.2.0 / 2017-08-10
|
||
==================
|
||
|
||
* Fix #1521 by caching references to Array.prototype.filter (#1523)
|
||
* Fix #1368 by adding stub#resolvesThis (#1517)
|
||
|
||
3.1.0 / 2017-08-08
|
||
==================
|
||
|
||
* Lots of documentation updates
|
||
* Fix regression on sandbox.stub(obj,protoMethod)
|
||
* Add factory functions for sandbox and fake server
|
||
* Add support for passing a function to stub.throws(...). (#1511)
|
||
|
||
3.0.0 / 2017-08-03
|
||
==================
|
||
|
||
* Remove deprecated exports (see migration guide)
|
||
* Fix #1432: add details around expectations.withArgs behavior to docs (#1501)
|
||
* Fix #1487: incorrect withArgs().returnValue
|
||
* add format.setFormatter
|
||
* Upgrade lolex to 2.1.2
|
||
* Extract fakeXhr, fakeServer and fakeServerWithClock into own module `nise` and re-import it to keep api the same
|
||
|
||
2.4.1 / 2017-07-26
|
||
==================
|
||
|
||
* stub#withArgs: set promiseLibrary correctly (#1497)
|
||
|
||
2.4.0 / 2017-07-26
|
||
==================
|
||
|
||
* Allow anonymous mock functions to be named
|
||
|
||
2.3.8 / 2017-07-13
|
||
==================
|
||
|
||
* Fix 1474: propagates promiseLibrary to new stub behaviors (#1484)
|
||
|
||
2.3.7 / 2017-07-10
|
||
==================
|
||
|
||
* Fix #1476: spy.withArgs(args...).firstCall is broken
|
||
|
||
2.3.6 / 2017-06-28
|
||
==================
|
||
|
||
* Fix #1274: spy.withArgs(args...).callCount is incorrect
|
||
|
||
2.3.5 / 2017-06-20
|
||
==================
|
||
|
||
* Check configurable on a prop before creating (fixes #1456) (#1462)
|
||
|
||
2.3.4 / 2017-06-10
|
||
==================
|
||
|
||
* Fix #1372: make sandbox.resetHistory also reset spies (#1424)
|
||
|
||
2.3.3 / 2017-06-10
|
||
==================
|
||
|
||
* Fix #1445: make stubbing of static function properties possible
|
||
|
||
2.3.2 / 2017-05-26
|
||
==================
|
||
|
||
* Fix failing sandbox.resetBehavior() (#1428)
|
||
* Fix restoring getters/setters/values for previously unexisting props (#1419)
|
||
* Called in order takes callCount into account. Closes #1398.
|
||
|
||
2.3.1 / 2017-05-23
|
||
==================
|
||
|
||
* Make calledAfter symetric with calledBefore (#1407)
|
||
|
||
2.3.0 / 2017-05-22
|
||
==================
|
||
|
||
* Allow stubbing of accessors with and without sandbox (#1416)
|
||
* add throwsArg(index) to stubs (#1319)
|
||
* Fix: forEach() requires 'this' argument (#1356)
|
||
* Only reset history when calling resetHistory()
|
||
|
||
2.2.0 / 2017-05-02
|
||
==================
|
||
|
||
* Added `usingPromise` method to stub and sandbox.
|
||
* Added support for React Native window location format Fixes sinonjs/sinon#1362
|
||
* Fix error on call.toString() where stack has fewer than 4 lines.
|
||
|
||
2.1.0 / 2017-03-20
|
||
==================
|
||
|
||
* Redesign the template (#1339)
|
||
* [feature] adds spy.calledImmediatelyBefore and spy.calledImmediatelyAfter
|
||
* Fix issue #1332: little bug correction in spy.printf "%*" formatter.
|
||
|
||
2.0.0 / 2017-03-15
|
||
==================
|
||
|
||
* Add restore method for stubbed property descriptors
|
||
* Allow stubbing getters and setters for function properties
|
||
* Add getters/setters stub behaviors
|
||
* Refactor xhr and xhr.upload to use the same EventTargetHandler
|
||
* Remove SSL part of base url
|
||
|
||
v2.0.0-pre.6 / 2017-02-27
|
||
=========================
|
||
|
||
* Add sinon.addBehavior, use it to add the default behaviors
|
||
* Use Node instead of Ruby in the build script
|
||
* Lots of documentation updates
|
||
* Many dependency updates
|
||
* Add a simple implementation og ANSI colors and boot out chalk
|
||
* No circular dependencies, thank you very much
|
||
* Replace homegrowns with ES5
|
||
* Remove legacy IE bits from code
|
||
* Fire onload event on non-2xx HTTP statuses in FakeXDomainRequest
|
||
* Extract throwOnFalsyObject to own function
|
||
* Stop polluting the test console with a "test" string
|
||
* Complete internalization of `extend` and `typeOf`
|
||
* Allow calling original function from stub. Closes #989 (#1234)
|
||
* Matcher for Set type
|
||
* Matcher for Map type
|
||
* Fix set iterableToString test on IE11
|
||
* add test-dev npm script to run tests in watch mode
|
||
|
||
v2.0.0-pre.5 / 2016-12-31
|
||
=========================
|
||
|
||
* 2.0.0-pre.5
|
||
* Update Changelog.txt and AUTHORS for new release
|
||
* Update changelog for pre.4
|
||
* Remove polyfill for Promise
|
||
* Remove old, unused, ci script for BusterJS
|
||
* Abort pre-commit script when no files are changed
|
||
* Check for required arguments
|
||
* Make SED in-place update switch work on BSD
|
||
* Upgrade text-encoding to the latest version
|
||
* Improve rendering of sandbox.create(config) example
|
||
* Remove sinon.test from sandbox documentation
|
||
* Use baseurl to render links correctly on github pages
|
||
* Specify same version of github-pages as github
|
||
* Remove release_id from front matter
|
||
* Update Gemfile.lock to use latest supported Jekyll
|
||
* Fix #614: Add missing documentation for sandbox methods
|
||
* Add missing documentation for stubs
|
||
* Fix #1026: stub watch method on object
|
||
* Fix invalid test for "does not walk the same property twice"
|
||
* Add test for issue #1026
|
||
* Fix 810 - Added documentation for sinon.restore()
|
||
* Add docs for new array matchers
|
||
* Array contains matcher fails when actual is not an array
|
||
* Array endsWith matcher fails when actual is not an array
|
||
* Array startsWith matcher fails when actual is not an array
|
||
* Array deepEquals matcher fails when actual is not an array
|
||
* Add .resolves and .rejects to stub (#1211)
|
||
* Accept routing DSLs on fake server
|
||
* Convert remaining calledWith methods to use diff color formatting
|
||
* Color diffs for sinon matchers
|
||
* Print diffs for multiple spy calls
|
||
* Add new spy output formatter for handling diffs
|
||
* Add contains array matcher
|
||
* Add endsWith array matcher
|
||
* Add startsWith array matcher
|
||
* Add deepEquals array matcher
|
||
* Add more array matchers
|
||
* Extract deprecated.printWarning
|
||
* Move empty stub creation to avoid unnecessary stub.create
|
||
* Fix typo on property name called 'matchingAguments'
|
||
* Soften migration path with deprecation warning
|
||
* Update docs and migration guide
|
||
* Convert 3 arg stub to callsFake
|
||
* Update format docs to refer to formatio
|
||
* Fix being able to spy Error
|
||
* Prepare documentation using site in GitHub Pages
|
||
* Add link to LICENSE in README.md
|
||
* Add documentation for accessor method support for stubs and spies
|
||
* Previous expectation failures are checked and re-thrown again in mock.verify()
|
||
* Expose XHR.setStatus to simplify asynchronous answers
|
||
* Fix typo
|
||
* Add a how-to article about using links seams for CommonJS modules
|
||
* stub() will fail if passed an empty property descriptor
|
||
* Rename func argument to funcOrDescriptor
|
||
* Add documentation for sinon.assert.match
|
||
* XHR: test for readystatechange not dispatching after .abort() in DONE state
|
||
* XHR: fix readystatechange event after .abort() in DONE state
|
||
* Add tests for xhr.readyState after abort()
|
||
* Test that demonstrates that a mock can be called more times than expected without failing (if the exception is silenced).
|
||
|
||
n.n.n / 2017-02-27
|
||
==================
|
||
|
||
|
||
|
||
v2.0.0-pre.6 / 2017-02-27
|
||
=========================
|
||
|
||
* Merge pull request #1303 from dougo/docs-fixups
|
||
Docs fixups
|
||
* Merge pull request #1302 from sinonjs/add-behavior
|
||
addBehavior
|
||
* Merge pull request #1300 from Gvozd/optimize_performance
|
||
Optimize performance of call-stack getting
|
||
* Merge pull request #1301 from fatso83/1299-redirect-traffic-to-releases
|
||
Redirect /docs and /downloads to /releases
|
||
* Merge pull request #1296 from sinonjs/remove-deal-links
|
||
Remove dead links
|
||
* Merge pull request #1295 from mroderick/add-bithound-config
|
||
Add .bithoundrc
|
||
* Merge branch 'bouk-server-aint-xhr'
|
||
|
||
* Merge pull request #1293 from mroderick/update-v1-docs-with-bundler-warnings
|
||
Update 1.x documentation to say that it doesn't work with
|
||
bundlers
|
||
* Merge pull request #1294 from sinonjs/browserify-build
|
||
Use Node instead of Ruby in the build script
|
||
* Merge pull request #1292 from mroderick/update-readme
|
||
Update readme
|
||
* Merge pull request #1291 from mroderick/update-phantomjs
|
||
Use phantomjs-prebuilt
|
||
* Merge pull request #1289 from mroderick/fix-invalid-release-version-in-docs
|
||
Fix invalid release number in v1.17.7.md front matter
|
||
* Merge pull request #1290 from sinonjs/common-eslint
|
||
Use common Sinon.JS eslint config
|
||
* Merge pull request #1288 from mroderick/improve-documentation
|
||
Improve documentation
|
||
* Merge pull request #1283 from lucasfcosta/docs-stub-callThrough
|
||
Add docs for stub.callThrough()
|
||
* Merge pull request #1285 from sinonjs/uncycle-server-deps
|
||
Uncycle server deps
|
||
* Merge pull request #1282 from sinonjs/mochify-3
|
||
Use mocaccino 2 and mochify 3
|
||
* Merge pull request #1281 from mroderick/add-missing-documentation
|
||
Add missing documentation
|
||
* Merge pull request #1277 from mroderick/remove-copyright-comments
|
||
Remove copyright comments
|
||
* Merge pull request #1271 from mroderick/use-es5-features
|
||
Refactoring: use ES5.1 features
|
||
* Merge pull request #1273 from melinath/patch-1
|
||
Update text-encoding version
|
||
* Merge pull request #1255 from fatso83/remove-legacy-ie
|
||
Remove traces of legacy IE
|
||
* Merge pull request #1266 from duclet/chalk
|
||
Switch to using "chalk" from "colors"
|
||
* Merge pull request #1260 from JoshuaCWebDeveloper/ajax_events
|
||
Fire onload event on non-2xx HTTP statuses in
|
||
FakeXDomainRequest - fixes #1259
|
||
* Merge pull request #1257 from piamancini/patch-1
|
||
Add backers and sponsors from Open Collective
|
||
* Merge pull request #1256 from sprzybylski/download-page
|
||
Create downloads page (#1218)
|
||
* Merge pull request #1252 from mroderick/update-bundle-for-ruby-2.4.0
|
||
Update Gemfile for ruby 2.4.0
|
||
* Merge pull request #1254 from mroderick/refute-issue-1245-in-sinon-2
|
||
Add test to disprove issue 1245 in Sinon 2.x
|
||
* Merge pull request #1253 from BenBrostoff/error-equality
|
||
Add error equality to deepEqual
|
||
* Merge pull request #1243 from sprzybylski/changelog-page
|
||
Update changelog page in postversion.sh
|
||
* Merge pull request #1239 from mroderick/refactor-stub-method
|
||
Refactor stub methods
|
||
* Merge pull request #1242 from Floby/add-documentation-for-promise-stub
|
||
Add documentation for .rejects() and .resolves()
|
||
* Merge pull request #1241 from mroderick/cleanup-test-console
|
||
Stop polluting the test console with a "test" string
|
||
* Merge pull request #1238 from tarjei/patch-1
|
||
Document server.requests
|
||
* Merge pull request #1235 from jonnyreeves/feature/internalize
|
||
Internalise `typeOf` and `extends`
|
||
* Merge pull request #1233 from lucasfcosta/fix-deepEqual-for-matchers
|
||
Ensures different matchers won't be called against each
|
||
other. Closes…
|
||
* Merge pull request #1232 from lucasfcosta/sets-matchers
|
||
Sets matchers
|
||
* Merge pull request #1227 from zuzusik/zuzusik-always_chain_behavior_with_stub
|
||
Always chain behavior with stub
|
||
* Merge pull request #1215 from lucasfcosta/maps-matchers
|
||
Maps matchers
|
||
* Merge pull request #1226 from lucasfcosta/improve-site-readability
|
||
Improve site readability
|
||
* Merge pull request #1225 from lucasfcosta/resolve-reject-promise-upon-invoke
|
||
Resolve/reject promise only upon invoke
|
||
|
||
v2.0.0-pre.5 / 2016-12-31
|
||
=========================
|
||
|
||
* Merge pull request #1223 from fatso83/release-script-improvements
|
||
Minor fixes to the release scripts
|
||
* Merge pull request #1222 from Gothdo/patch-1
|
||
Upgrade text-encoding to the latest version
|
||
* Merge pull request #1216 from mroderick/improve-documentation
|
||
Improve documentation for stubs and sandboxes
|
||
* Merge pull request #1217 from mroderick/make-docs-run-on-github-pages
|
||
Update Gemfile.lock to use latest supported Jekyll
|
||
* Merge pull request #1213 from tiemevanveen/docs-restore
|
||
Added documentation for sinon.restore()
|
||
* Merge pull request #1214 from mroderick/fix-1026-in-2.x
|
||
Fix 1026 in 2.x
|
||
* Merge pull request #1210 from lucasfcosta/document-new-array-matchers
|
||
Add docs for new array matchers
|
||
* Merge pull request #1203 from jdgreenberger/add-expectation-diff-logs
|
||
Add expectation diff logs
|
||
* Merge pull request #1208 from lucasfcosta/array-matchers
|
||
Array matchers
|
||
* Merge pull request #1209 from lucasfcosta/avoid-unnecessary-empty-stub-creation
|
||
Avoid unnecessary empty stub creation
|
||
* Merge pull request #1207 from hurrymaplelad/calls-fake
|
||
Replace `stub(o, 'm', fn)` with `stub(o, 'm').callsFake(fn)`
|
||
* Merge pull request #1162 from dottedmag/master
|
||
XHR spec conformance: abort() should not dispatch
|
||
readystatechange event in DONE state
|
||
* Merge pull request #1184 from mroderick/fail-on-empty-property-descriptor
|
||
Fail on empty property descriptor
|
||
* Merge pull request #1206 from fatso83/sinon-format-docs
|
||
Update format docs to refer to formatio
|
||
* Merge pull request #1204 from estobbart/master
|
||
Fix being able to spy Error
|
||
* Merge pull request #1189 from mroderick/docs-in-github-pages
|
||
Prepare documentation using site in GitHub Pages
|
||
* Merge pull request #1180 from mroderick/add-documentation-for-assert.match
|
||
Add documentation for sinon.assert.match
|
||
* Merge pull request #1182 from mroderick/document-accessor-support
|
||
Add documentation for accessor method support for stubs and
|
||
spies
|
||
* Merge pull request #1191 from LostArchives/master
|
||
Add link to LICENSE in README.md
|
||
* Merge pull request #1188 from DanReyLop/verify-silenced-exceptions
|
||
Mock expectation errors are now re-thrown when calling
|
||
mock.verify()
|
||
* Merge pull request #1186 from mroderick/add-how-to-link-seam-commonjs
|
||
Add a how-to article about using links seams for CommonJS
|
||
modules
|
||
* Merge pull request #1178 from dottedmag/feature-xhr-set-status
|
||
Expose XHR.setStatus to simplify asynchronous answers
|
||
|
||
2.0.0-pre.5/ 2016-12-31
|
||
==================
|
||
|
||
* Upgrade text-encoding to the latest version
|
||
* Remove sinon.test from sandbox documentation
|
||
* Fix #1026: stub watch method on object
|
||
* Add .resolves and .rejects to stub (#1211)
|
||
* Accept routing DSLs on fake server
|
||
* Color diffs for sinon matchers
|
||
* Add new spy output formatter for handling diffs
|
||
* Add various array matchers
|
||
* Convert 3 arg stub to callsFake
|
||
* Fix being able to spy Error
|
||
* Prepare documentation using site in GitHub Pages
|
||
* Various documentation additions and fixes
|
||
* Previous expectation failures are checked and re-thrown again in mock.verify()
|
||
* Expose XHR.setStatus to simplify asynchronous answers
|
||
* XHR: test for readystatechange not dispatching after .abort() in DONE state
|
||
* XHR: fix readystatechange event after .abort() in DONE state
|
||
|
||
2.0.0-pre.4 / 2016-11-10
|
||
==================
|
||
* Use last matching withArgs declaration when using matchers (#1183)
|
||
* Implement XHR.overrideMimeType
|
||
* Fire .onprogress event handler in fake XHR
|
||
* Expose readyState constants on XHR instances
|
||
* add configurable unsafe header checks (#1061)
|
||
|
||
2.0.0-pre.3 / 2016-09-19
|
||
==================
|
||
* Add assertion check for too many args with calledOnce/Twice/Thrice
|
||
* Much internal refactoring relating to CommonJS
|
||
|
||
2.0.0-pre.2 / 2016-07-07
|
||
==================
|
||
|
||
* CJSify sinon.call tests (#1079)
|
||
* CJSify sinon.calledInOrder tests (#1080)
|
||
* CJSify get-config tests (#1081)
|
||
* CJSify sinon.assert tests (#1078)
|
||
* Resolve test failure in node 0.10.x (#1073)
|
||
* Expose `sinon.assert` on sandbox instances. (#1076)
|
||
* Add resetBehavior and resetHistory to sandbox API (#1072)
|
||
* Fix incorrect inline function names
|
||
* Fix calledOnce on tests for #283. This closes #283.
|
||
* Add sandbox.reset() docs
|
||
* Add a line recommending how to pronounce.
|
||
* Improve tests based on PR feedback
|
||
* Allow xhr.respond(0) to simulate a network failure and call onerror
|
||
* Use event loaded instead of error event for code like 403, 500, etc.
|
||
* Fix invalid markdown in fake-timers.ms (#1054)
|
||
* Do not invoke getters in walk (#1059)
|
||
* ReactNative compatibility. Allow sinon fakeServer to run in React Native (#1052)
|
||
* added timeouts to ensure tests pass
|
||
* Run tests on stable Node 6 instead of unstable Node 5
|
||
* added tests to ensure only expected events are fired (#1043)
|
||
* Fixed formatting of issue template
|
||
* Added note on using latest version
|
||
* Fix onerror event triggering for fake xhr requests (#1041)
|
||
* Add missing mocaccino and phantomic to package.json (#1029)
|
||
* Pull request and issue templates (#1012)
|
||
* Fix capturing of stack traces in Phantom.js.
|
||
* Allow sinon.calledInOrder to be called either with an array of spies or multiple spies as parameters. Add explicit test cases for sinon.calledInOrder
|
||
* Fix typos found by codespell
|
||
* Document faking of setImmediate and clearImmediate
|
||
* Add feature detection guard for tests containing es6 Symbols
|
||
* Add support for es6 Symbol to wrapMethod method
|
||
* Convert values to strings with toString instead of String()
|
||
* Add typeOf matcher for symbol type
|
||
* Make expectetation fail as expected when called with wrong Symbol
|
||
* Make mock report expected TypeError when expecting number and given symbol
|
||
* Add support for es6 Symbol to match.has method
|
||
* Make error message when failing to stub method support es6 symbol
|
||
* Make yieldToOn fail as expected when yielding an es6 Symbol
|
||
* Add support for es6 Symbol to match.same method
|
||
* Make yieldTo fail as expected when yielding an es6 Symbol
|
||
* Add support for es6 Symbol to match method
|
||
* Work around SauceLabs security limitations
|
||
* Declare test specific eslint configs in test/.eslintrc
|
||
* Add test-coverage script
|
||
* Add eslint-plugin-mocha
|
||
* Remove browserify-shim
|
||
* Setup saucelabs tests and adjust travis config
|
||
* Feature detect __proto__ to exclude a timer test in IE 10
|
||
* Convert webworker test to mocha
|
||
* Remove buster
|
||
* Replace npm test script with mocha / mochify invocations
|
||
* Fix async fake-xml-http-request tests
|
||
* Convert issues tests to mocha
|
||
* Convert util tests to mocha
|
||
* Convert core tests to mocha
|
||
* Convert stub tests to mocha
|
||
* Convert typeof tests to mocha
|
||
* Convert spy tests to mocha
|
||
* Convert sandbox tests to mocha
|
||
* Convert mock tests to mocha
|
||
* Convert hello world test to mocha
|
||
* Convert extend tests to mocha
|
||
* Convert collection tests to mocha
|
||
* Convert call tests to mocha
|
||
* Convert assert tests to mocha
|
||
* Convert matcher tests to mocha
|
||
* Update docs/TODO.md to reflect plan to Jekyll
|
||
* CJSify Spy and Stub Tests.
|
||
* CJSify Core Util Tests.
|
||
* Migrate Packaged Tests to use a Browserified Build.
|
||
* fix non enumerable methods stub restore
|
||
* Improve Blob support detection logics
|
||
* Fix a typo in Contributing.md
|
||
* Update Node versions on Travis
|
||
* Use PhantomJS 2.
|
||
* Fix #835: make err.message writable
|
||
* Remove linting errors in switch cases
|
||
* Add spy.notCalled to documentation
|
||
* Remove `sinon.test()` and `sinon.testCase`.
|
||
* Remove `sinon.log` and `sinon.logError`
|
||
* De-fluff
|
||
* Remove `sinon-test` module.
|
||
* Extract `get-config` tests from `sinon-test`.
|
||
* Extract `function-to-string` tests from `sinon-test`.
|
||
* Extract `restore` tests from `sinon-test`.
|
||
* Extract `createStubInstance` tests from `sinon-test`
|
||
* Extract `deep-equal` tests from `sinon-test`.
|
||
* Extract `wrap-method` tests from `sinon-test`.
|
||
* Extract `extend` tests from `sinon-test` to `extend-test`
|
||
* Move 'lib/util/core' tests into 'test/util/core'
|
||
* Remove the use of `sinon.format` from the codebase
|
||
* Require sinon.deepEqual in a more modular way
|
||
* Fix 648: test for this.proxy before trying toString on it
|
||
* use the correct sinon.deepEqual to test sinon matcher
|
||
* add stub test to ensure sinon matcher is recognized within stub.withArgs
|
||
* update repo link
|
||
* Remove unused dependency util
|
||
* Update samsam
|
||
* Update lolex
|
||
* Update browserify
|
||
* Update dependency pre-commit
|
||
* Update buster-istanbul to 0.1.15
|
||
* ignore webstorm configs
|
||
* fix async issues and increase buster timeout
|
||
* test on node 5
|
||
* Fixes typo error in docs
|
||
* fix typo in lib/sinon.js
|
||
* Fixes typo error in docs
|
||
* Adding comment to warn against using eval
|
||
* fix linting
|
||
* Get rid of eval in sinon spy
|
||
* Update README URLs based on HTTP redirects
|
||
|
||
2.0.0-pre / 2015-12-02
|
||
==================
|
||
|
||
* 2.0.0 pre-release
|
||
* Extract `sandbox` into a CommonJS module.
|
||
* Clarify documentation on creating stubs and spies
|
||
* Extract `util/fake_server_with_clock` into a CommonJS module
|
||
* Extract `util/fake_server` into a CommonJS module.
|
||
* Extract `util/fake_timers` into a CommonJS module.
|
||
* Extract `util/fake_xml_http_request` into a CommonJS module.
|
||
* Extract `util/fake_xdomain_request` into a CommonJS module.
|
||
* Extract `util/event` into a CommonJS module.
|
||
* Extract `sinon.logError` into a CommonJS module.
|
||
* Extract (most of) sinon.collection into a CommonJS module
|
||
* Extract `sinon.mock` into a CommonJS module.
|
||
* Import mock's dependencies are CommonJS modules.
|
||
* Extract `createSpyCall` into a CommonJS module.
|
||
* Extract `sinon.assert` into a CommonJS module.
|
||
* Remove `walk` from sinon's public API.
|
||
* Patch up linting errors
|
||
* Remove `sinon` import from stub
|
||
* Extract `sinon.behavior` into a CommonJS module
|
||
* Extract `sinon.walk` into a CommonJS module.
|
||
* Export stub as a CommonJS module
|
||
* Import `wrapMethod` as a CommonJS module
|
||
* Import core dependencies as CommonJS modules
|
||
* Delete .jscsrc
|
||
* Ensure sinon can run in a WebWorker
|
||
* Updated docs to reflect that calledOn accepts a matcher
|
||
* simplified test and added a note
|
||
* updated to require spy in its new cjs form
|
||
* ./commonjs
|
||
* expose sinon.spy and sinon.spyCall
|
||
* converted spy to commonjs format
|
||
* moved sinon.format() to core
|
||
* fixed spy tests
|
||
* added missing test (pushes spy coverage to 100%)
|
||
* added spy getter/setter tests
|
||
* updated sinon.spy() to properly handle getters and setters
|
||
* Remove unnecessary error variable
|
||
* Prevent stubbed getter from being called during restore() - fixes #897
|
||
* Allowed GET requests to have request bodies
|
||
* Remove JSCS from devDependencies
|
||
* Add Gitter badge
|
||
* Allow yieldsOn, callsArgOn, callsArgOnWith, yieldsToOn to use any context
|
||
* Add bithound badge to README.md
|
||
* removed switch statement in favor of object lookup
|
||
* Use immediate exceptions
|
||
* lib/sinon/util: Remove window conditionals from IE files.
|
||
* Add docs for sandbox and utils
|
||
* Add documentation for matchers
|
||
* Add docs for assertions
|
||
* Add docs for JSON-P
|
||
* Add docs for fake server
|
||
* Add docs for fake timers
|
||
* Add mock api descriptions
|
||
* Add mocks introduction
|
||
* Add stubs api
|
||
* Update TODO
|
||
* Use Object.prototype.hasOwnProperty in deepEqual to cope with cases where hasOwnProperty doesn't exist, ie. Object.create(null), or has been overridden on an object. With tests.
|
||
* Add docs TODO to track outstanding tasks
|
||
* Add stubs.md with introduction to stubs
|
||
* Import docs
|
||
* Fix #875 Proper support UTF8 payloads * introduced new dependency "text-encoding" * delegate encoding operations to TextEncoder/TextDecoder * added unit test to verify proper utf-8 encoding
|
||
* finished eslint'ing
|
||
* upgraded ESLint to 1.7.1 (latest and greatest)
|
||
* Run tests in node 4.2 LTS (Argon)
|
||
* removed unneeded path resolution
|
||
* Let npm install handle buster again, now that we have caching of node_modules
|
||
* Make travis cache node_modules to speed up builds
|
||
* removed duplicate implementation of sinon.timesInWords
|
||
* fix travis-ci build svg in README
|
||
* reviewer comments
|
||
* cleaning up left over blank lines
|
||
* CommonJS-ified *some* of the things
|
||
* updated readyStateChange to align to the w3c spec (somewhat)
|
||
* cleaned up a few unreleated tests
|
||
* updated tests to reflect reality
|
||
* added some additional progress event verification
|
||
* added a test to ensure load is not fired before abort
|
||
* added test to ensure event ordering
|
||
* allow progress events with loaded/total values of 0
|
||
* Fix #867: Walk properties only once
|
||
* Removed unnecessary module wrappers and double test run in NodeJS.
|
||
* null-check the object passed to sinon.stub
|
||
* implemented stub#resetHistory method - fixes #863
|
||
* Fix #851: Do not attempt to re-stub constructors
|
||
* Fix #847: Ensure walk invokes accessors directly on target
|
||
* Run tests in node 4.1.x also
|
||
* stub.reset also resets behavior
|
||
|
||
1.17.0 / 2015-09-22
|
||
==================
|
||
|
||
* Fix #821 where Sinon.JS would leak a setImmdiate into global scope
|
||
* Removed sinon-timers from the build. refs #811
|
||
* Added flag that, when set to true, makes sinon.logError throw errors synchronously.
|
||
* Fix #777: Support non-enumerable props when stubbing objects
|
||
* Made the sinon.test() function pass on errors to the callback
|
||
* Expand conversion from ArrayBuffer to binary string
|
||
* Add support for ArrayBuffer, blob responseTypes
|
||
|
||
1.16.1 / 2015-08-20
|
||
===================
|
||
* Bump Lolex to stop throwing an error when faking Date but not setTimeout
|
||
|
||
1.16.0 / 2015-08-19
|
||
===================
|
||
* Capture the stack on each spy call
|
||
* fakeServer.create accepts configuration settings
|
||
* Update Lolex to 1.3.0
|
||
* Fire onreadystatechange with event argument
|
||
* Returns supersedes previous throws
|
||
* Bunch of bug fixes
|
||
|
||
1.15.0 / 2015-05-30
|
||
==================
|
||
* Fixed bug where assertions don't handle functions that have a property named proxy
|
||
* update license attribute
|
||
* Add test coverage report
|
||
* responseHeaders on abort are empty object
|
||
* Fix pre-existing style error
|
||
* Update documentation to cover testing built version
|
||
* Update CONTRIBUTING.md with section about "Making a pull request"
|
||
* Improve RELEASE.md to reduce effort when cutting a new release
|
||
* Deprecate mock
|
||
* Release.md
|
||
* Make `npm docs sinon` work.
|
||
* Run unit tests against packaged version in CI environment
|
||
* Remove unused Gruntfile
|
||
* Use Vanilla Buster.JS
|
||
* Use `files` in package.json
|
||
* Fix code style
|
||
* Don't stub getter properties
|
||
* Event listeners for `progress`, `load` and `readystatechange` in the `readyStateChange` function in `FakeXMLHttpRequest` are dispatched in a different order in comparison to a browser. Reorder the events dispatched to reflect general browser behaviour.
|
||
* Update linting instructions in CONTRIBUTING.md
|
||
* Lint all files with new linter
|
||
* Update JSCS to 1.11.3 and make npm lint task verify all files
|
||
* Cleanup .restore()
|
||
|
||
== 1.14.1 / 2015-03-16
|
||
* Fallback for .restore() native code functions on Chrome & PhantomJS (なつき)
|
||
* Restore support for sinon in IE<9 (Harry Wolff)
|
||
|
||
== 1.14.0 / 2015-03-13
|
||
* Stub & spy getters & setters (Simon Zack)
|
||
* Fix #702 async sinon.test using mocha interface (Mohayonao)
|
||
* Add respondImmediately to fake servers (Jonathan Freeman)
|
||
|
||
== 1.13.0 / 2015-03-04
|
||
* fix @depends-require mismatches (fixes AMD issues) (Ben Hockey)
|
||
* Fix spy.calledWith(undefined) to return false if it was called without args
|
||
* yieldsRight (Alexander Schmidt)
|
||
* stubs retain function arity (Charlie Rudolph)
|
||
* (AMD) use explicit define in built version
|
||
* spy().reset() returns this (Ali Shakiba)
|
||
* Add lengthComputable and download progress (Tamas Szebeni)
|
||
* Don't setContent-type when sending FormData (AJ Ortega)
|
||
* sinon.assert with spyCall (Alex Urbano)
|
||
* fakeXHR requests in Node. (Jmeas)
|
||
* Enhancement: run builds on docker (till@php.net)
|
||
* Use FakeXDomainRequest when XHR does not support CORS. Fixes #584 (Eric Wendelin)
|
||
* More lenient check for ActiveXObject
|
||
* aligned sandbox.useFakeXMLHttpRequest API to documentation (Phred)
|
||
* Fix #643. Returns supersedes previous throws (Adam Hull)
|
||
* Safely overwrite properties in IE - no more IE files!
|
||
* Add check for setInterval/clearInterval (kdpecker)
|
||
* Add safety check for document.createElement (kdpecker)
|
||
* Fix #633. Use a try/catch when deleting a property in IE8. (Garrick Cheung)
|
||
|
||
== 1.12.1 / 2014-11-16
|
||
* Fixed lolex issue on node
|
||
|
||
== 1.12.0 / 2014-11-16
|
||
* Fake timers are now extracted as lolex: http://github.com/sinonjs/lolex
|
||
* Improved setImmediate fake
|
||
* Proper AMD solution
|
||
|
||
== 1.11.1 / 2014-10-27
|
||
|
||
* Expose match on returned sandbox (Duncan Beevers)
|
||
* Fix issue #586 (Antonio D'Ettole)
|
||
* Declare log_error dependency (Kurt Ruppel)
|
||
|
||
== 1.11.0 / 2014-10-26
|
||
|
||
* Proper AMD support
|
||
* Don't call sinon.expectation.pass if there aren't any expectations (Jeffrey Falgout)
|
||
* Throw error when reset-ing while calling fake
|
||
* Added xhr.response property (Gyandeep Singh)
|
||
* Fixed premature sandbox destruction (Andrew Gurinovich)
|
||
* Add sandbox reset method (vitalets)
|
||
* A bunch of bug fixes (git log)
|
||
* Various source organizational improvements (Morgan Roderick and others)
|
||
|
||
== 1.10.3 / 2014-07-11
|
||
|
||
* Fix loading in Web Workers (Victor Costan)
|
||
* Allow null as argument to clearTimeout and clearInterval (Lars Thorup)
|
||
|
||
== 1.10.2 / 2014-06-02
|
||
|
||
* Fix `returnValue` and `exception` regression on spy calls (Maximilian Antoni)
|
||
|
||
== 1.10.1 / 2014-05-30
|
||
|
||
* Improved mocha compatibility for async tests (Ming Liu)
|
||
* Make the fakeServer log function overloadable (Brian M Hunt)
|
||
|
||
== 1.10.0 / 2014-05-19
|
||
|
||
* Ensure that spy createCallProperties is set before function invocation (James Barwell)
|
||
* XDomainRequest support (Søren Enemærke, Jonathan Sokolowski)
|
||
* Correct AMD behavior (Tim Branyen)
|
||
* Allow explicit naming of spies and stubs (Glen Mailer)
|
||
* deepEqual test for unequal objects in calledWithExactly (Bryan Donovan)
|
||
* Fix clearTimeout() for Node.js (Xiao Ma)
|
||
* fix fakeServer.respond() in IE8 (John Bernardo)
|
||
* Fix #448 (AMD require.amd)
|
||
* Fix wrapMethod error handling (Nikita Litvin)
|
||
|
||
== 1.9.1 / 2014-04-03
|
||
|
||
* Fix an issue passing `NaN` to `calledWith` (Blake Israel)
|
||
* Explicate dependency on util package (Kris Kowal)
|
||
* Fake timers return an object with `ref` and `unref` properties on Node (Ben Fleis)
|
||
|
||
== 1.9.0 / 2014-03-05
|
||
|
||
* Add sinon.assert.match (Robin Pedersen)
|
||
* Added ProgressEvent and CustomEvent. Fixes bug with progress events on IE. (Geries Handal)
|
||
* prevent setRequestHeaders from being called twice (Phred)
|
||
* Fix onload call, 'this' should be equal to XHR object (Niklas Andreasson)
|
||
* Remove sandbox injected values on restore (Marcus Hüsgen)
|
||
* Coerce matcher.or/and arguments into matchers (Glen Mailer)
|
||
* Don't use buster.format any more
|
||
* Fix comparison for regexp deepEqual (Matt Kern)
|
||
|
||
== 1.8.2 / 2014-02-11
|
||
|
||
* Fixes an edge case with calledWithNew and spied native functions, and other
|
||
functions that lack a .prototype
|
||
* Add feature detection for the new ProgressEvent support
|
||
|
||
== 1.8.1 / 2014-02-02
|
||
|
||
* Screwed up NPM release of 1.8.0, unable to replace it
|
||
|
||
== 1.8.0 / 2014-02-02
|
||
|
||
* Add clearImmediate mocking support to the timers API (Tim Perry)
|
||
* Mirror custom Date properties when faking time
|
||
* Improved Weinre support
|
||
* Update call properties even if exceptions are thrown (Tim Perry)
|
||
* Update call properties even if exceptions are thrown (Tim Perry)
|
||
* Reverse matching order for fake server (Gordon L. Hempton)
|
||
* Fix restoring globals on another frame fails on Firefox (Burak Yiğit Kaya)
|
||
* Handle stubbing falsey properties (Tim Perry)
|
||
* Set returnValues correctly when the spied function is called as a constructor (Tim Perry)
|
||
* When creating a sandbox, do not overwrite existing properties when inject
|
||
properties into an object (Sergio Cinos)
|
||
* Added withCredentials property to fake xhr (Geries)
|
||
* Refine behavior withArgs error message (Tim Fischbach)
|
||
* Auto-respond to successive requests made with a single XHR object (Jan Suchý)
|
||
* Add the ability for mock to accept sinon.match matchers as expected arguments (Zcicala)
|
||
* Adding support for XMLHttpRequest.upload to FakeXMLHttpRequest (Benjamin Coe)
|
||
* Allow onCall to be combined with returns* and throwsException in stub behavior
|
||
sequences (Tim Fischbach)
|
||
* Fixed deepEqual to detect properties on array objects
|
||
* Fixed problem with chained timers with delay=0 (Ian Lewis)
|
||
* Use formatio in place of buster-format (Devin Weaver)
|
||
|
||
== 1.7.3 / 2013-06-20
|
||
|
||
* Removed use of array forEach, breaks in older browsers (Martin Hansen)
|
||
* sinon.deepEqual(new Date(0), new Date()) returns true (G.Serebryanskyi)
|
||
|
||
== 1.7.2 / 2013-05-08
|
||
|
||
* Sinon 1.7 has split calls out to a separate file. This caused some problems,
|
||
so 1.7.2 ships with spyCall as part of spy.js like it used to be.
|
||
|
||
== 1.7.1 / 2013-05-07
|
||
|
||
* Fake XMLHttpRequest updated to call onerror and onsuccess callbacks, fixing
|
||
jQuery 2.0 problems (Roman Potashow)
|
||
* Implement XMLHttpRequest progress event api (Marten Lienen)
|
||
* Added sinon.restore() (Jonny Reeves)
|
||
* Fix bug where throwing a string was handled incorrectly by Sinon (Brandon Heyer)
|
||
* Web workers support (Victor Costan)
|
||
|
||
== 1.7.0
|
||
|
||
* Failed release, see 1.7.1
|
||
|
||
== 1.6.0 / 2013-02-18
|
||
* Add methods to spyCall interface: callArgOn, callArgOnWith, yieldOn,
|
||
yieldToOn (William Sears)
|
||
* sinon.createStubInstance creates a fully stubbed instance from a constructor
|
||
(Shawn Krisman)
|
||
* resetBehavior resets fakes created by withArgs (Martin Sander)
|
||
* The fake server now logs to sinon.log, if set (Luis Cardoso)
|
||
* Cleaner npm package that also includes pkg/sinon.js and
|
||
pkg/sinon-ie.js for cases where npm is used to install Sinon for
|
||
browser usage (Domenic Denicola)
|
||
* Improved spy formatter %C output (Farid Neshat)
|
||
* clock.tick returns clock.now (Michael Jackson)
|
||
* Fixed issue #248 with callOrder assertion
|
||
Did not fail if the last given spy was never called (Maximilian Antoni)
|
||
* Fixed issue with setResponseHeader for synchronous requests (goligo)
|
||
* Remove msSetImmediate; it only existed in IE10 previews (Domenic Denicola)
|
||
* Fix #231: not always picking up the latest calls to callsArgWith, etc.
|
||
(Domenic Denicola)
|
||
* Fix failing anonymous mock expectations
|
||
|
||
== 1.5.2 / 2012-11-28
|
||
* Revert stub.reset changes that caused existing tests to fail.
|
||
|
||
== 1.5.1 / 2012-11-27
|
||
* Ensure window.Image can be stubbed. (Adrian Phinney)
|
||
* Fix spy() in IE 8 (Scott Andrews)
|
||
* Fix sinon base in IE 8 (Scott Andrews)
|
||
* Format arguments ouput when mock excpetation is not met (kbackowski)
|
||
* Calling spy.reset directly from stub.reset (Thomas Meyer)
|
||
|
||
== 1.5.0 / 2012-10-19
|
||
* Don't force "use strict" on Sinon consumers
|
||
* Don't assume objects have hasOwnProperties. Fixes problem with e.g.
|
||
stubbing properties on process.env
|
||
* Preserve function length for spy (Maximilian Antoni)
|
||
* Add 'invokeCallback' alias for 'yield' on calls (Maximilian Antoni)
|
||
* Added matcher support for calledOn (Maximilian Antoni)
|
||
* Retain original expectation messages, for failed mocks under sinon.test
|
||
(Giorgos Giannoutsos)
|
||
* Allow yields* and callsArg* to create sequences of calls. (Domenic Denicola)
|
||
* sinon.js can catch itself in endless loop while filling stub prototype
|
||
with asynch methods (Jan Kopriva)
|
||
|
||
== 1.4.2 / 2012-07-11
|
||
* sinon.match for arrays (Maximilian Antoni)
|
||
|
||
== 1.4.1 / 2012-07-11
|
||
* Strengthen a Node.JS inference to avoid quirky behavior with Mocha
|
||
(which provides a shim process object)
|
||
|
||
== 1.4.0 / 2012-07-09
|
||
* Argument matchers (Maximillian Antoni)
|
||
sinon.match.{any, same, typeOf, instanceOf, has, hasOwn, defined, truthy,
|
||
falsy} as well as typeOf shortcuts for boolean, number, string, object,
|
||
function, array, regexp and date. The result of a call can be used with
|
||
spy.calledWith.
|
||
* spy.returned now works with matchers and compares objects deeply.
|
||
* Matcher assertions: calledWithMatch, alwaysCalledWithMatch and
|
||
neverCalledWithMatch
|
||
* calledWithNew and alwaysCalledWithNew for assert (Maximilian Antoni)
|
||
* Easier stubbed fluent interfaces: stub.returnsThis() (Glen Mailer)
|
||
* allow yields() and family to be used along with returns()/throws() and
|
||
family (Glen Mailer)
|
||
* Async versions `callsArg*` and `yields*` for stubs (TEHEK)
|
||
* Format args when doing `spy.printf("%*")` (Domenic Denicola)
|
||
* Add notCalled property to spies
|
||
* Fix: spy.reset did not reset fakes created by spy.withArgs (Maximilian Antoni)
|
||
* Properly restore stubs when stubbing entire objects through the sandbox
|
||
(Konrad Holowinski)
|
||
* Restore global methods properly - delete properties that where not own
|
||
properties (Keith Cirkel)
|
||
* setTimeout and setInterval pass arguments (Rodion Vynnychenko)
|
||
* Timer callbacks that contain a clock.tick no longer fails (Wesley Waser)
|
||
* spy(undefined, "property") now throws
|
||
* Prevent multiple restore for fake timers (Kevin Decker)
|
||
* Fix toString format under Node (Kevin Decker)
|
||
* Mock expectations emit success and failure events (Kevin Decker)
|
||
* Development improvement: Use Buster.JS to test Sinon
|
||
* Fix bug where expect.atLeast failed when minimum calls where received
|
||
* Make fake server safe to load on node.js
|
||
* Add support for no args on .withArgs and .withExactArgs (Tek Nynja)
|
||
* Avoid hasOwnProperty for host objects
|
||
|
||
== 1.3.2 / 2012-03-11
|
||
* Stronger Node inference in sandbox
|
||
* Fixed issue with sinon.useFakeTimers() and Rhino.js 1.7R3
|
||
* Formatting brush-up
|
||
* FIX Internet Explorer misreporting the type of Function objects
|
||
originating in an external window as "object" instead of "function".
|
||
* New methods stub.callsArgOn, stub.callsArgOnWith,
|
||
stub.yieldsOn, stub.yieldsToOn
|
||
* Implemented
|
||
* Fixing `clearTimeout` to not throw when called for nonexistent IDs.
|
||
* Spys that are created using 'withArgs' now get initialized with previous
|
||
calls to the original spy.
|
||
* Minor bug fixes and docs cleanup.
|
||
|
||
== 1.3.1 / 2012-01-04
|
||
* Fix bug in core sinon: isNode was used for both a variable and a function,
|
||
causing load errors and lots of bugs. Should have never left the door.
|
||
|
||
== 1.3.0 / 2012-01-01
|
||
* Support using bare functions as fake server response handlers (< 1.3.0
|
||
required URL and/or method matcher too)
|
||
* Log some internal errors to sinon.log (defaults to noop). Set sinon.log
|
||
to your logging utility of choice for better feedback when.
|
||
* White-list fake XHRs: Allows some fake requests and some that fall through to
|
||
the backend server (Tim Ruffles)
|
||
* Decide Date.now support at fake-time. Makes it possible to load something that
|
||
polyfills Date.now after Sinon loaded and still have Date.now on fake Dates.
|
||
* Mirror properties on replaced function properties
|
||
* New methods: spy.yield(), spy.yieldTo(), spy.callArg() and spy.callArgWith()
|
||
can be used to invoke callbacks passed to spies (while avoiding the mock-like
|
||
upfront yields() and friends). invokeCallback is available as an alias for
|
||
yield for people working with strict mode. (Maximilian Antoni)
|
||
* New properties: spy.firstCall, spy.secondCall, spy.thirdCall and spy.lastCall.
|
||
(Maximilian Antoni)
|
||
* New method: stub.returnsArg(), causes stub to return one of its arguments.
|
||
(Gavin Huang)
|
||
* Stubs now work for inherited methods. This was previously prohibited to avoid
|
||
stubbing not-yet-implemented methods. (Felix Geisendörfer)
|
||
* server.respond() can now accept the same arguments as server.respondWith() for
|
||
quick-and-dirty respondWith+respond. (Gavin Huang)
|
||
* Format objects with buster-format in the default bundle. Default to
|
||
util.inspect on node unless buster-format is available (not a hard dependency,
|
||
more like a 'preference').
|
||
|
||
* Bug fix: Make sure XHRs can complete even if onreadystatechange handler fails
|
||
* Bug fix: Mirror entire Date.prototype, including toUTCString when faking
|
||
* Bug fix: Default this object to global in exposed asserts
|
||
* Bug fix: sinon.test: use try/finally instead of catch and throw - preserves
|
||
stack traces (Kevin Turner)
|
||
* Bug fix: Fake `setTimeout` now returns ids greater than 0. (Domenic Denicola)
|
||
* Bug fix: NPM install warning (Felix Geisendörfer)
|
||
* Bug fix: Fake timers no longer swallows exceptions (Felix Geisendörfer)
|
||
* Bug fix: Properly expose all needed asserts for node
|
||
* Bug fix: wrapMethod on window property (i.e. when stubbing/spying on global
|
||
functions)
|
||
* Bug fix: Quote "yield" (Ben Hockey)
|
||
* Bug fix: callOrder works correctly when spies have been called multiple times
|
||
|
||
== 1.2.0 / 2011-09-27
|
||
* Bug fix: abort() switches state to DONE when OPENED and sent. Fix by
|
||
Tristan Koch.
|
||
* Bug fix: Mootools uses MSXML2.XMLHTTP as objectId, which Sinon matched with
|
||
different casing. Fix by Olmo Maldonado.
|
||
* Bug fix: When wrapping a non-owned property, restore now removes the wrapper
|
||
instead of replacing it. Fix by Will Butler.
|
||
* Bug fix: Make it possibly to stub Array.prototype.push by not using that
|
||
method directly inside Sinon.
|
||
* Bug fix: Don't assume that req.requestBody is a string in the fake server.
|
||
* Added spy.printf(format) to print a nicely formatted message with details
|
||
about a spy.
|
||
* Garbage collection: removing fakes from collections when restoring the
|
||
original methods. Fix by Tristan Koch.
|
||
* Add spy.calledWithNew to check if a function was used as a constructor
|
||
* Add spy.notCalledWith(), spy.neverCalledWith() and
|
||
sinon.assert.neverCalledWith. By Max Antoni
|
||
* Publicly expose sinon.expectation.fail to allow tools to integrate with mock
|
||
expectations.
|
||
* Fake XMLHttpRequests now support a minimal portion of the events API, making
|
||
them work seamlessly with e.g. SproutCode (which uses
|
||
xhr.addEventListener("readystatechange"). Partially by Sven Fuchs.
|
||
|
||
== 1.1.1 / 2011-05-17
|
||
* Fix broken mock verification in CommonJS when not including the full Sinon
|
||
package.
|
||
|
||
== 1.1.0 / 2011-05-04
|
||
* The fake server now has a autoRespond method which allows it to respond to
|
||
requests on the fly (asynchronously), making it a good fit for mockup
|
||
development
|
||
* Stubs and spies now has a withArgs method. Using it allows you to create
|
||
several spies/stubs for the same method, filtered by received arguments
|
||
* Stubs now has yields and yieldsTo methods for fuzzily invoking callbacks.
|
||
They work like callsArgAt only by inferring what callback to invoke, and
|
||
yieldsTo can invoke callbacks in object "options" arguments.
|
||
* Allow sandboxes/collections to stub any property so long as the object
|
||
has the property as an own property
|
||
* Significantly improve error reporting from failed mock expecations. Now prints
|
||
all met and unmet expectations with expected and received arguments
|
||
* Allow mock expectations to be consumed in any order
|
||
* Add pretty printing of all calls when assertions fail
|
||
* Fix bug: Stub exception message ended up as "undefined" (string) if not
|
||
specified
|
||
* Pass capture groups in URLs to fakeServer function handlers
|
||
* Pass through return value from test function in testCase
|
||
* typeof require is not enough to assume node, also use typeof module
|
||
* Don't use Object.create in sinon.create. In the off chance that someone stubs
|
||
it, sinon will fail mysteriously (Thanks to Espen Dalløkken)
|
||
* Catch exceptions when parsing DOM elements "on a hunch"
|
||
When responding to XHRs, Sinon acts like most browsers and try to parse the
|
||
response into responseXML if Content-Type indicates XML or HTML. However, it
|
||
also does this if the type is not set. Obviously, this may misfire and
|
||
should be caught.
|
||
* Fix fakeServer.respond() to not drop requests when they are queued during the
|
||
processing of an existing queue. (Sven Fuchs)
|
||
* Clean up module loading in CommonJS environments (Node.js still the only
|
||
tested such environment). No longer (temporarily) modifies require.paths,
|
||
always loads all modules.
|
||
|
||
== 1.0.2 / 2011-02-22
|
||
* Fix JSON bug in package.json
|
||
* Sandbox no longer tries to use a fake server if config says so, but
|
||
server is not loaded
|
||
|
||
== 1.0.1 / 2010-12-20
|
||
* Make sure sinon.sandbox is exposed in node.js (fix by Gord Tanner)
|
||
|
||
== 1.0.0 / 2010-12-08
|
||
* Switched indentation from 2 to 4 spaces :)
|
||
* Node.js compatibility improvements
|
||
* Remove magic booleans from sinon.assert.expose, replace with option object
|
||
* Put QUnit adapter in its own repository
|
||
* Update build script to build standalone timers and server files
|
||
* Breaking change: thisObj -> thisValue
|
||
Change brings consistency to the code-base, always use thisValue
|
||
* Add sinon.assert.pass callback for successful assertions
|
||
* Extract sandbox configuration from sinon.test
|
||
|
||
Refactored sinon.test to not do all the heavy lifting in creating sandbox
|
||
objects from sinon.config. Now sinon.sandbox.create accepts an optional
|
||
configuration that can be retrieved through sinon.getConfig({ ... }) - or, to
|
||
match previous behavior, through sinon.getConfig(sinon.config);
|
||
|
||
The default configuration now lives in sinon.defaultConfig rather than the
|
||
previous sinon.test.
|
||
|
||
This change enables external tools, such as test framework adapters, to easily
|
||
create configurable sandboxes without going through sinon.test
|
||
* Rewrite sinon.clock.tick to fix bug and make implementation clearer
|
||
* Test config load correct files
|
||
* Make timers and XHR truly standalone by splitting the IE work-around in two files
|
||
* Don't fail when comparing DOM elements in sinon.deepEqual (used in calledWith(...))
|
||
* Should mirror properties on Date when faking it
|
||
* Added and updated configuration for both JsLint and JavaScript lint
|
||
* [August Lilleaas] The build script can optionally build a file without the
|
||
version name in it, by passing 'plain', i.e. './build plain'.
|
||
|
||
Useful when using the build script to build and use sinon programatically, so
|
||
one can 'cp path/to/sinon/pkg/sinon.js my/scripts/'
|
||
* [August Lilleaas] Checking and warning if we got a load error and rubygems
|
||
isn't present.
|
||
* [August Lilleaas] Updating build script to be runnable from any
|
||
directory. Current working directory doesn't have to be repo root.
|
||
|
||
== 0.8.0 / 2010-10-30
|
||
* sinon.wrapMethod no longer accepts faking already faked methods
|
||
* sinon-qunit 'plugin'
|
||
* sinon.test / sinon.config can now expose the sandbox object
|
||
|
||
== 0.7.2 / 2010-10-25
|
||
* Add sinon.sandbox.create back in
|
||
* Fix bug where clock.tick would fire timeouts in intervals when
|
||
setInterval was also called
|
||
|
||
== 0.7.1 / 2010-10-16
|
||
* The fake server will now match paths against full URLs, meaning that
|
||
server.respondWith("/", "OK"); will match requests for
|
||
"http://currentHost/".
|
||
* Improved toString method for spies and stubs which leads to more
|
||
precise error messages from sinon.assert.*
|
||
|
||
== 0.7.0 / 2010-09-19
|
||
* sinon.useFakeTimers now fakes the Date constructor by default
|
||
* sinon.testCase now fakes XHR and timers by default
|
||
* sinon.config controls the behavior of sinon.testCase
|
||
* Fixed bug in clock.tick - now fires timers in correct order
|
||
* Added the ability to tick a clock string for longer ticks.
|
||
Passing a number causes the clock to tick the specified amount of
|
||
milliseconds, passing a string like "12:32" ticks 12 minutes and 32
|
||
seconds.
|
||
* calledBefore and calledAfter for individual calls
|
||
* New assertions
|
||
sinon.assert.notCalled
|
||
sinon.assert.calledOnce
|
||
sinon.assert.calledTwice
|
||
sinon.assert.calledThrice
|
||
* sinon.test now throws if passed anything other than a function
|
||
* sinon.testCase now throws if passed anything other than an object
|
||
* sinon.{spy,stub}(obj, method) now throws if the property is not an
|
||
existing function - helps avoid perpetuating typo bugs
|
||
* Vastly improved error messages from assertions
|
||
* Spies/stubs/expectations can have their names resolved in many cases
|
||
* Removed feature where sinon.testCase allowed for nested test cases
|
||
(does not belong in Sinon.JS)
|
||
* Organizational change: src/ becomes lib/ Helps npm compatibility
|
||
* Thanks to Cory Flanigan for help on npm compatibility
|
||
|
||
== 0.6.2 / 2010-08-12
|
||
* Fixed another bug in sinon.fakeServerWithClock where consecutive
|
||
respond() calls did not trigger timeouts.
|
||
|
||
== 0.6.1 / 2010-08-12
|
||
* Fixed a bug in sinon.fakeServerWithClock where the clock was ticked
|
||
before the server had responded to all requests, resulting in
|
||
objects not having been responded to by the time the timeout ran.
|
||
|
||
== 0.6.0 / 2010-08-10
|
||
* FakeXMLHttpRequest
|
||
* sinon.useFakeXMLHttpRequest
|
||
* sinon.fakeServer
|
||
* sinon.fakeServerWithClock
|
||
* Improved fake timers implementation, made them work properly in IE 6-8
|
||
* Improved sinon.sandbox
|
||
* Added useFakeServer
|
||
* Added inject method
|
||
* Improved sinon.test method
|
||
* Made configuration aware
|
||
* Now uses sinon.sandbox in place of sinon.collection
|
||
* Changed default configuration for sinon.test, breaking compatibility
|
||
with 0.5.0 - can be changed through sinon.config
|
||
|
||
== 0.5.0 / 2010-06-09
|
||
* Initial release
|
||
* Spies, stubs, mocks
|
||
* Assertions
|
||
* collections, test, testCase
|
||
* Fake timers (half-baked)
|