This commit is contained in:
Balena CI 2022-08-24 17:33:20 -04:00 committed by VersionBot
parent 222c097d4b
commit ba66b10c0e
6 changed files with 193 additions and 146 deletions

View File

@ -1,3 +1,44 @@
- commits:
- subject: Create `test/unit` and `test/integration` folders
hash: c1e6dadeb47c3c52958383a2fc775a821362f853
body: |
This sets up the new `test/unit` and `test/integration` folders
and starts classification of some of the test files.
Note that unit tests include, `fs-utils` and `system-info` tests.
While these tests interact with the filesystem, the implementation
of these modules is simple enough, and the tests are fast enough to
allow these tests to fall under the `unit` test category (according to
test/README)
footer:
Change-type: patch
change-type: patch
author: Felipe Lalanne
nested: []
- subject: Move the current test suite under `test/legacy`
hash: e1e35eb83b738040150ced1ee9500d780de4b632
body: |
We are refactoring the supervisor test suite into unit tests (for
algorithms an domain model tests) and integration
tests (for interaction with out-of-process dependencies).
This means the current test suite needs to be classified into
these two categories, and fixed whenever possible.
This commit moves the test suite under the `test/legacy` folder, this
folder should be progressively migrated and eventually removed.
Subsequent commits will begin to split these files into unit and
integration whenever possible.
footer:
Depends-on: "#1996"
depends-on: "#1996"
Change-type: patch
change-type: patch
author: Felipe Lalanne
nested: []
version: 14.0.15
title: "'Split test suite into unit and integration tests'"
date: 2022-08-24T20:09:59.828Z
- commits:
- subject: Simplify test commands in package.json
hash: 274503feb3f2f9cd5a8db551fd93b9cce8ae9b39

View File

@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file
automatically by Versionist. DO NOT EDIT THIS FILE MANUALLY!
This project adheres to [Semantic Versioning](http://semver.org/).
# v14.0.15
## (2022-08-24)
* Create `test/unit` and `test/integration` folders [Felipe Lalanne]
* Move the current test suite under `test/legacy` [Felipe Lalanne]
# v14.0.14
## (2022-08-22)

View File

@ -1 +1 @@
14.0.14
14.0.15

View File

@ -2,6 +2,6 @@ name: balena-supervisor
description: 'Balena Supervisor: balena''s agent on devices.'
joinable: false
type: sw.application
version: 14.0.14
version: 14.0.15
provides:
- slug: sw.compose.long-volume-syntax

2
package-lock.json generated
View File

@ -1,6 +1,6 @@
{
"name": "balena-supervisor",
"version": "14.0.14",
"version": "14.0.15",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@ -1,145 +1,145 @@
{
"name": "balena-supervisor",
"description": "This is balena's Supervisor, a program that runs on IoT devices and has the task of running user Apps (which are Docker containers), and updating them as the balena API informs it to.",
"version": "14.0.14",
"license": "Apache-2.0",
"repository": {
"type": "git",
"url": "https://github.com/balena-os/balena-supervisor.git"
},
"scripts": {
"start": "./entry.sh",
"build": "npm run clean && npm run release && webpack",
"lint": "balena-lint -e ts -e js --typescript src/ test/ typings/ build-utils/ webpack.config.js",
"test:build": "tsc --noEmit && tsc --noEmit --project tsconfig.js.json",
"test:unit": "mocha --config test/unit/.mocharc.js",
"test:integration": "mocha --config test/integration/.mocharc.js",
"test:legacy": "mocha --config test/legacy/.mocharc.js",
"test:node": "npm run test:unit && npm run test:integration && npm run test:legacy",
"test:env": "docker-compose -f docker-compose.test.yml -f docker-compose.dev.yml up --build; npm run compose:down",
"test:compose": "docker-compose -f docker-compose.yml -f docker-compose.test.yml up --build --remove-orphans --exit-code-from=sut ; npm run compose:down",
"test:base": "npm run lint && npm run test:build && npm run test:unit && npm run test:legacy",
"test": "npm run lint && npm run test:build && npm run test:node",
"compose:down": "docker-compose -f docker-compose.test.yml down",
"prettify": "balena-lint -e ts -e js --typescript --fix src/ test/ typings/ build-utils/ webpack.config.js",
"release": "tsc --project tsconfig.release.json && mv build/src/* build",
"sync": "ts-node --files sync/sync.ts",
"clean": "rimraf build"
},
"private": true,
"dependencies": {
"@balena/happy-eyeballs": "0.0.6",
"dbus": "^1.0.7",
"mdns-resolver": "^1.0.0",
"semver": "^7.3.2",
"sqlite3": "^4.1.1",
"systeminformation": "^5.6.10"
},
"engines": {
"node": "^12.16.2",
"npm": "^6.14.4"
},
"devDependencies": {
"@balena/contrato": "^0.6.0",
"@balena/lint": "^5.1.0",
"@types/bluebird": "^3.5.32",
"@types/chai": "^4.2.16",
"@types/chai-as-promised": "^7.1.3",
"@types/chai-like": "^1.1.0",
"@types/chai-things": "0.0.34",
"@types/common-tags": "^1.8.0",
"@types/copy-webpack-plugin": "^6.0.0",
"@types/dbus": "^1.0.0",
"@types/dockerode": "^2.5.34",
"@types/event-stream": "^3.3.34",
"@types/express": "^4.17.3",
"@types/lodash": "^4.14.159",
"@types/memoizee": "^0.4.4",
"@types/mocha": "^8.2.2",
"@types/mock-fs": "^4.13.0",
"@types/morgan": "^1.9.0",
"@types/node": "^12.12.54",
"@types/request": "^2.48.5",
"@types/rewire": "^2.5.28",
"@types/rimraf": "^2.0.4",
"@types/rwlock": "^5.0.2",
"@types/semver": "^7.3.3",
"@types/shell-quote": "^1.7.0",
"@types/sinon": "^10.0.11",
"@types/sinon-chai": "^3.2.5",
"@types/supertest": "^2.0.11",
"@types/terser-webpack-plugin": "^3.0.0",
"@types/tmp": "^0.1.0",
"@types/webpack": "^4.41.21",
"@types/yargs": "^15.0.12",
"balena-register-device": "^7.2.0",
"blinking": "^0.0.4",
"bluebird": "^3.7.2",
"chai": "^4.3.4",
"chai-as-promised": "^7.1.1",
"chai-like": "^1.1.1",
"chai-things": "^0.2.0",
"chokidar": "^3.5.1",
"common-tags": "^1.8.0",
"copy-webpack-plugin": "^6.0.3",
"deep-object-diff": "^1.1.0",
"docker-delta": "^2.2.11",
"docker-progress": "^4.0.3",
"dockerode": "^2.5.8",
"duration-js": "^4.0.0",
"event-stream": "3.3.4",
"express": "^4.17.1",
"fork-ts-checker-webpack-plugin": "^5.1.0",
"fp-ts": "^2.8.1",
"husky": "^4.2.5",
"io-ts": "^2.2.10",
"io-ts-reporters": "^1.2.2",
"json-mask": "^0.3.9",
"knex": "^0.20.13",
"lint-staged": "^10.2.11",
"livepush": "^3.5.1",
"lodash": "^4.17.21",
"memoizee": "^0.4.14",
"mixpanel": "^0.10.3",
"mocha": "^8.3.2",
"mocha-pod": "^0.6.0",
"mock-fs": "^4.14.0",
"morgan": "^1.10.0",
"network-checker": "^0.1.1",
"nock": "^13.1.2",
"nodemon": "^2.0.4",
"pinejs-client-request": "^7.2.1",
"pretty-ms": "^7.0.1",
"request": "^2.88.2",
"resin-docker-build": "^1.1.6",
"resumable-request": "^2.0.1",
"rewire": "^5.0.0",
"rimraf": "^2.7.1",
"rwlock": "^5.0.0",
"shell-quote": "^1.7.2",
"sinon": "^11.1.2",
"sinon-chai": "^3.6.0",
"strict-event-emitter-types": "^2.0.0",
"supertest": "^6.1.3",
"tar-stream": "^2.1.3",
"terser-webpack-plugin": "^4.1.0",
"tmp": "^0.1.0",
"ts-loader": "^7.0.5",
"ts-node": "^8.10.2",
"tsconfig-paths": "^4.1.0",
"typed-error": "^3.2.1",
"typescript": "^4.2.4",
"webpack": "^4.44.1",
"webpack-cli": "^3.3.12",
"winston": "^3.3.3",
"yargs": "^15.4.1"
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"versionist": {
"publishedAt": "2022-08-22T20:24:43.507Z"
}
"name": "balena-supervisor",
"description": "This is balena's Supervisor, a program that runs on IoT devices and has the task of running user Apps (which are Docker containers), and updating them as the balena API informs it to.",
"version": "14.0.15",
"license": "Apache-2.0",
"repository": {
"type": "git",
"url": "https://github.com/balena-os/balena-supervisor.git"
},
"scripts": {
"start": "./entry.sh",
"build": "npm run clean && npm run release && webpack",
"lint": "balena-lint -e ts -e js --typescript src/ test/ typings/ build-utils/ webpack.config.js",
"test:build": "tsc --noEmit && tsc --noEmit --project tsconfig.js.json",
"test:unit": "mocha --config test/unit/.mocharc.js",
"test:integration": "mocha --config test/integration/.mocharc.js",
"test:legacy": "mocha --config test/legacy/.mocharc.js",
"test:node": "npm run test:unit && npm run test:integration && npm run test:legacy",
"test:env": "docker-compose -f docker-compose.test.yml -f docker-compose.dev.yml up --build; npm run compose:down",
"test:compose": "docker-compose -f docker-compose.yml -f docker-compose.test.yml up --build --remove-orphans --exit-code-from=sut ; npm run compose:down",
"test:base": "npm run lint && npm run test:build && npm run test:unit && npm run test:legacy",
"test": "npm run lint && npm run test:build && npm run test:node",
"compose:down": "docker-compose -f docker-compose.test.yml down",
"prettify": "balena-lint -e ts -e js --typescript --fix src/ test/ typings/ build-utils/ webpack.config.js",
"release": "tsc --project tsconfig.release.json && mv build/src/* build",
"sync": "ts-node --files sync/sync.ts",
"clean": "rimraf build"
},
"private": true,
"dependencies": {
"@balena/happy-eyeballs": "0.0.6",
"dbus": "^1.0.7",
"mdns-resolver": "^1.0.0",
"semver": "^7.3.2",
"sqlite3": "^4.1.1",
"systeminformation": "^5.6.10"
},
"engines": {
"node": "^12.16.2",
"npm": "^6.14.4"
},
"devDependencies": {
"@balena/contrato": "^0.6.0",
"@balena/lint": "^5.1.0",
"@types/bluebird": "^3.5.32",
"@types/chai": "^4.2.16",
"@types/chai-as-promised": "^7.1.3",
"@types/chai-like": "^1.1.0",
"@types/chai-things": "0.0.34",
"@types/common-tags": "^1.8.0",
"@types/copy-webpack-plugin": "^6.0.0",
"@types/dbus": "^1.0.0",
"@types/dockerode": "^2.5.34",
"@types/event-stream": "^3.3.34",
"@types/express": "^4.17.3",
"@types/lodash": "^4.14.159",
"@types/memoizee": "^0.4.4",
"@types/mocha": "^8.2.2",
"@types/mock-fs": "^4.13.0",
"@types/morgan": "^1.9.0",
"@types/node": "^12.12.54",
"@types/request": "^2.48.5",
"@types/rewire": "^2.5.28",
"@types/rimraf": "^2.0.4",
"@types/rwlock": "^5.0.2",
"@types/semver": "^7.3.3",
"@types/shell-quote": "^1.7.0",
"@types/sinon": "^10.0.11",
"@types/sinon-chai": "^3.2.5",
"@types/supertest": "^2.0.11",
"@types/terser-webpack-plugin": "^3.0.0",
"@types/tmp": "^0.1.0",
"@types/webpack": "^4.41.21",
"@types/yargs": "^15.0.12",
"balena-register-device": "^7.2.0",
"blinking": "^0.0.4",
"bluebird": "^3.7.2",
"chai": "^4.3.4",
"chai-as-promised": "^7.1.1",
"chai-like": "^1.1.1",
"chai-things": "^0.2.0",
"chokidar": "^3.5.1",
"common-tags": "^1.8.0",
"copy-webpack-plugin": "^6.0.3",
"deep-object-diff": "^1.1.0",
"docker-delta": "^2.2.11",
"docker-progress": "^4.0.3",
"dockerode": "^2.5.8",
"duration-js": "^4.0.0",
"event-stream": "3.3.4",
"express": "^4.17.1",
"fork-ts-checker-webpack-plugin": "^5.1.0",
"fp-ts": "^2.8.1",
"husky": "^4.2.5",
"io-ts": "^2.2.10",
"io-ts-reporters": "^1.2.2",
"json-mask": "^0.3.9",
"knex": "^0.20.13",
"lint-staged": "^10.2.11",
"livepush": "^3.5.1",
"lodash": "^4.17.21",
"memoizee": "^0.4.14",
"mixpanel": "^0.10.3",
"mocha": "^8.3.2",
"mocha-pod": "^0.6.0",
"mock-fs": "^4.14.0",
"morgan": "^1.10.0",
"network-checker": "^0.1.1",
"nock": "^13.1.2",
"nodemon": "^2.0.4",
"pinejs-client-request": "^7.2.1",
"pretty-ms": "^7.0.1",
"request": "^2.88.2",
"resin-docker-build": "^1.1.6",
"resumable-request": "^2.0.1",
"rewire": "^5.0.0",
"rimraf": "^2.7.1",
"rwlock": "^5.0.0",
"shell-quote": "^1.7.2",
"sinon": "^11.1.2",
"sinon-chai": "^3.6.0",
"strict-event-emitter-types": "^2.0.0",
"supertest": "^6.1.3",
"tar-stream": "^2.1.3",
"terser-webpack-plugin": "^4.1.0",
"tmp": "^0.1.0",
"ts-loader": "^7.0.5",
"ts-node": "^8.10.2",
"tsconfig-paths": "^4.1.0",
"typed-error": "^3.2.1",
"typescript": "^4.2.4",
"webpack": "^4.44.1",
"webpack-cli": "^3.3.12",
"winston": "^3.3.3",
"yargs": "^15.4.1"
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"versionist": {
"publishedAt": "2022-08-24T20:10:00.278Z"
}
}