| { |
| "name": "sinon", |
| "description": "JavaScript test spies, stubs and mocks.", |
| "keywords": [ |
| "sinon", |
| "test", |
| "testing", |
| "unit", |
| "stub", |
| "spy", |
| "fake", |
| "time", |
| "clock", |
| "mock", |
| "xhr", |
| "assert" |
| ], |
| "version": "22.0.0", |
| "homepage": "https://sinonjs.org/", |
| "author": "Christian Johansen", |
| "repository": { |
| "type": "git", |
| "url": "http://github.com/sinonjs/sinon.git" |
| }, |
| "bugs": { |
| "url": "http://github.com/sinonjs/sinon/issues" |
| }, |
| "funding": { |
| "type": "opencollective", |
| "url": "https://opencollective.com/sinon" |
| }, |
| "license": "BSD-3-Clause", |
| "scripts": { |
| "build-artifacts": "node ./build.cjs", |
| "pretest-node": "npm run build-artifacts", |
| "test-node": "mocha --recursive -R dot \"test/{src,issues,scripts}/**/*-test.js\"", |
| "pretest-headless": "npm run build-artifacts", |
| "test-dev": "CHOKIDAR_USEPOLLING=1 npm run test-node -- --watch", |
| "test-headless": "node ./scripts/run-browser-suite.mjs headless", |
| "test-coverage": "npm run build-artifacts && nyc nyc --exclude-after-remap false mochify --driver puppeteer --bundle 'node coverage.cjs'", |
| "test-cloud": "npm run build-artifacts && ./scripts/test-cloud.sh", |
| "test-distribution": "node ./scripts/test-distribution.mjs", |
| "test-webworker": "node ./scripts/run-browser-suite.mjs webworker", |
| "test-esm-support": "mocha test/es2015/module-support-assessment-test.mjs", |
| "test-esm-browser-build": "node test/es2015/check-esm-bundle-is-runnable.mjs", |
| "test-pkg-browser-global": "node test/distribution/browser-global-smoke.mjs", |
| "test-pkg-browser-esm": "node test/es2015/check-esm-bundle-is-runnable.mjs", |
| "pretest-contract": "run-s build-artifacts", |
| "test-contract": "run-s test-distribution test-pkg-browser-esm test-pkg-browser-global", |
| "verify-esm-migration": "run-p lint test-contract test-node", |
| "test-runnable-examples": "docs/release-source/release/examples/run-test.sh", |
| "test-docs": "cd docs; make check-links", |
| "test": "npm run build-artifacts && npm run test-node && node ./scripts/run-browser-suite.mjs headless && node ./scripts/run-browser-suite.mjs webworker", |
| "check-dependencies": "knip --dependencies", |
| "update-compatibility": "node ./scripts/update-compatibility.cjs", |
| "build": "npm run build-artifacts", |
| "build-docs": "cd docs; make build", |
| "serve-docs": "cd docs; make livereload", |
| "lint": "eslint --max-warnings 0 \"**/*.{js,cjs,mjs}\"", |
| "pretest-webworker": "npm run build-artifacts", |
| "prebuild": "rimraf pkg && npm run update-compatibility", |
| "postbuild": "run-s test-esm-support test-esm-browser-build test-contract check-dependencies", |
| "prepublishOnly": "npm run build", |
| "prettier:check": "prettier --check '**/*.{js,css,md}'", |
| "prettier:write": "prettier --write '**/*.{js,css,md}'", |
| "preversion": "./scripts/preversion.sh", |
| "version": "./scripts/version.sh", |
| "postversion": "./scripts/postversion.sh" |
| }, |
| "nyc": { |
| "instrument": false, |
| "temp-dir": "coverage/.nyc_output", |
| "reporter": [ |
| "text", |
| "lcovonly" |
| ], |
| "include": [ |
| "src/**/*.js" |
| ], |
| "check-coverage": true, |
| "branches": 92, |
| "lines": 97 |
| }, |
| "lint-staged": { |
| "**/*.{js,css,md}": "prettier --write", |
| "*.js": "eslint --quiet", |
| "*.mjs": "eslint --quiet --ext mjs --parser-options=sourceType:module" |
| }, |
| "mochify": { |
| "reporter": "dot", |
| "timeout": 10000, |
| "bundle": "esbuild --bundle --sourcemap=inline --define:process.env.NODE_DEBUG=\"\" --external:fs", |
| "bundle_stdin": "require", |
| "spec": "test/{src,issues}/**/*-test.js" |
| }, |
| "knip": { |
| "entry": [ |
| "src/sinon.js", |
| "src/sinon-esm.js", |
| "src/create-sinon-api.js", |
| "test/{src,issues,distribution,es2015,webworker}/**/*.{js,mjs,cjs}", |
| "scripts/*.{js,mjs,cjs}", |
| "test/scripts/**/*.{js,mjs,cjs}", |
| "*.{js,mjs,cjs}" |
| ], |
| "project": [ |
| "src/**/*.js", |
| "test/**/*.{js,mjs,cjs}", |
| "scripts/**/*.{js,mjs,cjs}", |
| "*.{js,mjs,cjs}" |
| ], |
| "ignoreFiles": [ |
| "lib/**", |
| "pkg/**" |
| ], |
| "ignoreBinaries": [ |
| "eslint", |
| "make", |
| "docs/release-source/release/examples/run-test.sh" |
| ], |
| "ignoreDependencies": [ |
| "@mochify/cli", |
| "@mochify/driver-puppeteer", |
| "@mochify/driver-webdriver", |
| "@sinonjs/eslint-config", |
| "@sinonjs/eslint-plugin-no-prototype-methods", |
| "@studio/changes", |
| "lint-staged" |
| ] |
| }, |
| "dependencies": { |
| "@sinonjs/commons": "^3.0.1", |
| "@sinonjs/fake-timers": "^15.4.0", |
| "@sinonjs/samsam": "^10.0.2", |
| "diff": "^9.0.0" |
| }, |
| "devDependencies": { |
| "@mochify/cli": "^1.0.0", |
| "@mochify/driver-puppeteer": "^1.0.1", |
| "@mochify/driver-webdriver": "^1.0.0", |
| "@rollup/plugin-commonjs": "^29.0.2", |
| "@rollup/plugin-json": "^6.1.0", |
| "@rollup/plugin-node-resolve": "^16.0.3", |
| "@sinonjs/eslint-config": "^7.0.3", |
| "@sinonjs/eslint-plugin-no-prototype-methods": "^0.1.1", |
| "@sinonjs/referee": "^11.0.2", |
| "@studio/changes": "^3.0.0", |
| "debug": "^4.4.3", |
| "esbuild": "^0.28.0", |
| "esbuild-plugin-istanbul": "^0.3.0", |
| "esbuild-plugin-umd-wrapper": "^3.0.0", |
| "eslint": "^10.3.0", |
| "get-stdin": "^10.0.0", |
| "js-yaml": "^4.1.1", |
| "knip": "^6.11.0", |
| "lint-staged": "^16.4.0", |
| "mocha": "^11.7.5", |
| "npm-run-all2": "^8.0.4", |
| "nyc": "^18.0.0", |
| "prettier": "^3.8.3", |
| "puppeteer": "^24.42.0", |
| "rimraf": "^6.1.3", |
| "rollup": "^4.60.3", |
| "semver": "^7.7.4", |
| "shelljs": "^0.10.0" |
| }, |
| "overrides": { |
| "@isaacs/brace-expansion": "^5.0.1", |
| "basic-ftp": "^5.2.0", |
| "fast-xml-parser": "^5.3.8", |
| "undici": "^6.23.0" |
| }, |
| "files": [ |
| "lib", |
| "pkg", |
| "scripts/support-sinon.js", |
| "AUTHORS", |
| "CONTRIBUTING.md", |
| "CHANGELOG.md", |
| "LICENSE", |
| "README.md" |
| ], |
| "browser": "./lib/sinon.js", |
| "main": "./lib/sinon.js", |
| "module": "./pkg/sinon-esm.js", |
| "exports": { |
| ".": { |
| "browser": "./pkg/sinon-esm.js", |
| "require": "./lib/sinon.js", |
| "import": "./pkg/sinon-esm.js" |
| }, |
| "./*": "./*" |
| }, |
| "type": "module", |
| "cdn": "./pkg/sinon.js", |
| "jsdelivr": "./pkg/sinon.js", |
| "esm": { |
| "cjs": { |
| "mutableNamespace": false, |
| "cache": true |
| }, |
| "mode": "auto" |
| } |
| } |