Ghost/package.json
Katharina Irrgang 75fbd272c9
Separated test env into: acceptance, regression and unit tests (#10411)
refs #9178

`yarn test` only runs acceptance and unit tests.
We will setup a cronjob in Travis and run the regression tests once per day.
You can manually run them with `yarn test:regression`

This separation is just a first step into the right direction.
Travis will no longer run for 10-13minutes.
The goal is to run common API use cases and unit tests in Travis and locally by default.

## After this separation we still need to:

- re-work our test utility
- remove some tests
- define which tests are our common API use cases
- rewrite some tests
- make testing easier (starting/stopping Ghost, fixtures and resetting services or event listeners, it's a pain and takes sometimes ages to fix tests)


---

**Acceptance:**
- common/basic API use cases against the current **stable** API

**Unit:**
- all unit tests (no database access)
- proper mocking

**Regression:**
- packages we don't want to run for each PR or commit
- tests which protect Ghost from breaking components and behaviour
- it is wishful that regression tests are using Ghost's API's (frontend, apps, core)

---

**This PR requires an update to our docs.**
2019-01-22 17:54:50 +01:00

173 lines
4.5 KiB
JSON

{
"name": "ghost",
"version": "2.12.0",
"description": "The professional publishing platform",
"author": "Ghost Foundation",
"homepage": "https://ghost.org",
"keywords": [
"ghost",
"blog",
"cms",
"headless",
"content",
"markdown"
],
"repository": {
"type": "git",
"url": "git://github.com/TryGhost/Ghost.git"
},
"bugs": "https://github.com/TryGhost/Ghost/issues",
"contributors": "https://github.com/TryGhost/Ghost/graphs/contributors",
"license": "MIT",
"main": "./core/index",
"scripts": {
"start": "node index",
"dev": "DEBUG=ghost:* grunt dev",
"test": "grunt validate --verbose",
"test:regression": "grunt test-regression --verbose",
"setup": "yarn install && knex-migrator init && grunt symlink && grunt init || true",
"lint": "grunt lint"
},
"engines": {
"node": "^6.9.0 || ^8.9.0 || ^10.13.0",
"cli": "^1.9.0"
},
"dependencies": {
"@nexes/nql": "0.2.1",
"amperize": "0.3.8",
"analytics-node": "3.3.0",
"archiver": "3.0.0",
"bcryptjs": "2.4.3",
"bluebird": "3.5.3",
"body-parser": "1.18.3",
"bookshelf": "0.14.2",
"bookshelf-relations": "0.2.1",
"brute-knex": "3.0.0",
"bson-objectid": "1.2.4",
"chalk": "2.4.2",
"cheerio": "0.22.0",
"compression": "1.7.3",
"connect-slashes": "1.3.1",
"cookie": "0.3.1",
"cookie-session": "1.3.2",
"cors": "2.8.5",
"csv-parser": "2.1.0",
"downsize": "0.0.8",
"express": "4.16.4",
"express-brute": "1.0.1",
"express-hbs": "1.0.4",
"express-jwt": "5.3.1",
"express-query-boolean": "2.0.0",
"express-session": "1.15.6",
"extract-zip": "1.6.7",
"fs-extra": "3.0.1",
"ghost-ignition": "2.9.6",
"ghost-storage-base": "0.0.3",
"glob": "5.0.15",
"got": "8.3.2",
"gscan": "2.2.1",
"html-to-text": "4.0.0",
"image-size": "0.6.3",
"intl": "1.2.5",
"intl-messageformat": "1.3.0",
"js-yaml": "3.12.1",
"jsonpath": "1.0.0",
"jsonwebtoken": "8.4.0",
"keypair": "1.0.1",
"knex": "0.14.6",
"knex-migrator": "3.2.5",
"lodash": "4.17.11",
"markdown-it": "8.4.2",
"markdown-it-footnote": "3.0.1",
"markdown-it-lazy-headers": "0.1.3",
"markdown-it-mark": "2.0.0",
"mobiledoc-dom-renderer": "0.6.5",
"moment": "2.24.0",
"moment-timezone": "0.5.23",
"multer": "1.4.1",
"mysql": "2.16.0",
"nconf": "0.10.0",
"netjet": "1.3.0",
"node-jose": "1.1.0",
"nodemailer": "0.7.1",
"oauth2orize": "1.11.0",
"oembed-parser": "https://github.com/kevinansfield/oembed-parser/tarball/80af3dc41059bcc0caa80db010265a811a4267c7",
"passport": "0.4.0",
"passport-http-bearer": "1.0.1",
"passport-oauth2-client-password": "0.1.2",
"path-match": "1.2.4",
"rss": "1.2.2",
"sanitize-html": "1.20.0",
"semver": "5.6.0",
"simple-dom": "0.3.2",
"simple-html-tokenizer": "0.5.7",
"superagent": "4.1.0",
"unidecode": "0.1.8",
"uuid": "3.3.2",
"validator": "6.3.0",
"xml": "1.0.1"
},
"optionalDependencies": {
"sharp": "0.21.3",
"sqlite3": "4.0.6"
},
"devDependencies": {
"eslint": "5.12.1",
"eslint-plugin-ghost": "0.1.0",
"grunt": "1.0.3",
"grunt-bg-shell": "2.3.3",
"grunt-cli": "1.3.2",
"grunt-contrib-clean": "2.0.0",
"grunt-contrib-compress": "1.4.3",
"grunt-contrib-copy": "1.0.0",
"grunt-contrib-symlink": "^1.0.0",
"grunt-contrib-uglify": "4.0.0",
"grunt-contrib-watch": "1.1.0",
"grunt-cssnano": "2.1.0",
"grunt-eslint": "21.0.0",
"grunt-express-server": "0.5.4",
"grunt-mocha-cli": "4.0.0",
"grunt-mocha-istanbul": "5.0.2",
"grunt-shell": "3.0.1",
"grunt-subgrunt": "1.3.0",
"grunt-update-submodules": "0.4.1",
"istanbul": "0.4.5",
"matchdep": "2.0.0",
"minimist": "1.2.0",
"mocha": "5.2.0",
"mock-knex": "0.4.3",
"nock": "10.0.6",
"proxyquire": "2.1.0",
"rewire": "4.0.1",
"should": "13.2.3",
"should-http": "0.1.1",
"sinon": "7.2.3",
"supertest": "3.4.1",
"tmp": "0.0.33"
},
"greenkeeper": {
"ignore": [
"glob",
"nodemailer",
"grunt",
"grunt-bg-shell",
"grunt-cli",
"grunt-contrib-clean",
"grunt-contrib-compress",
"grunt-contrib-copy",
"grunt-contrib-jshint",
"grunt-contrib-uglify",
"grunt-contrib-watch",
"grunt-docker",
"grunt-express-server",
"grunt-jscs",
"grunt-mocha-cli",
"grunt-mocha-istanbul",
"grunt-shell",
"grunt-subgrunt",
"grunt-update-submodules",
"sinon"
]
}
}