Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

api integration tests #6852

Merged
merged 3 commits into from
Jan 22, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ lerna-debug.log
coverage
errorShots
examples/*/src-gen
examples/*/webpack.config.js
examples/*/gen-webpack.config.js
.browser_modules
**/docs/api
package-backup.json
Expand Down
2 changes: 2 additions & 0 deletions .gitpod.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ image:
ports:
- port: 3000 # Theia
- port: 3030 # VS Code extension tests
- port: 9229 # Node.js debug port
onOpen: ignore
- port: 9339 # Node.js debug port
onOpen: ignore
- port: 6080
Expand Down
219 changes: 109 additions & 110 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,80 +1,80 @@
sudo: required
language: node_js
node_js: '10'
node_js: "10"
git:
depth: 1
cache:
yarn: true
directories:
# All directories need to be listed here, because Travis does not support globs.
# Auto generated by scripts/prepare-travis
# start_cache_directories
- /tmp/vscode-ripgrep-cache-1.5.7
- dev-packages/application-manager/node_modules
- dev-packages/application-package/node_modules
- dev-packages/cli/node_modules
- dev-packages/electron/node_modules
- examples/api-samples/node_modules
- examples/browser/node_modules
- examples/electron/node_modules
- node_modules
- packages/callhierarchy/node_modules
- packages/console/node_modules
- packages/core/node_modules
- packages/debug-nodejs/node_modules
- packages/debug/node_modules
- packages/editor-preview/node_modules
- packages/editor/node_modules
- packages/editorconfig/node_modules
- packages/file-search/node_modules
- packages/filesystem/node_modules
- packages/getting-started/node_modules
- packages/git/node_modules
- packages/java-debug/node_modules
- packages/java/node_modules
- packages/json/node_modules
- packages/keymaps/node_modules
- packages/languages/node_modules
- packages/markers/node_modules
- packages/merge-conflicts/node_modules
- packages/messages/node_modules
- packages/metrics/node_modules
- packages/mini-browser/node_modules
- packages/monaco/node_modules
- packages/navigator/node_modules
- packages/outline-view/node_modules
- packages/output/node_modules
- packages/plugin-dev/node_modules
- packages/plugin-ext-vscode/node_modules
- packages/plugin-ext/node_modules
- packages/plugin-metrics/node_modules
- packages/plugin/node_modules
- packages/preferences/node_modules
- packages/preview/node_modules
- packages/process/node_modules
- packages/python/node_modules
- packages/scm/node_modules
- packages/search-in-workspace/node_modules
- packages/task/node_modules
- packages/terminal/node_modules
- packages/textmate-grammars/node_modules
- packages/tslint/node_modules
- packages/typehierarchy/node_modules
- packages/typescript/node_modules
- packages/userstorage/node_modules
- packages/variable-resolver/node_modules
- packages/workspace/node_modules
# All directories need to be listed here, because Travis does not support globs.
# Auto generated by scripts/prepare-travis
# start_cache_directories
- /tmp/vscode-ripgrep-cache-1.5.7
- dev-packages/application-manager/node_modules
- dev-packages/application-package/node_modules
- dev-packages/cli/node_modules
- dev-packages/electron/node_modules
- examples/api-samples/node_modules
- examples/browser/node_modules
- examples/electron/node_modules
- node_modules
- packages/callhierarchy/node_modules
- packages/console/node_modules
- packages/core/node_modules
- packages/debug-nodejs/node_modules
- packages/debug/node_modules
- packages/editor-preview/node_modules
- packages/editor/node_modules
- packages/editorconfig/node_modules
- packages/file-search/node_modules
- packages/filesystem/node_modules
- packages/getting-started/node_modules
- packages/git/node_modules
- packages/java-debug/node_modules
- packages/java/node_modules
- packages/json/node_modules
- packages/keymaps/node_modules
- packages/languages/node_modules
- packages/markers/node_modules
- packages/merge-conflicts/node_modules
- packages/messages/node_modules
- packages/metrics/node_modules
- packages/mini-browser/node_modules
- packages/monaco/node_modules
- packages/navigator/node_modules
- packages/outline-view/node_modules
- packages/output/node_modules
- packages/plugin-dev/node_modules
- packages/plugin-ext-vscode/node_modules
- packages/plugin-ext/node_modules
- packages/plugin-metrics/node_modules
- packages/plugin/node_modules
- packages/preferences/node_modules
- packages/preview/node_modules
- packages/process/node_modules
- packages/python/node_modules
- packages/scm/node_modules
- packages/search-in-workspace/node_modules
- packages/task/node_modules
- packages/terminal/node_modules
- packages/textmate-grammars/node_modules
- packages/tslint/node_modules
- packages/typehierarchy/node_modules
- packages/typescript/node_modules
- packages/userstorage/node_modules
- packages/variable-resolver/node_modules
- packages/workspace/node_modules
# end_cache_directories
- packages/java-debug/download
- packages/debug-nodejs/download
- packages/java-debug/download
- packages/debug-nodejs/download
before_cache:
# Runs before the cache is updated, after successful CI
- rm -f node_modules/@theia/electron/post-install.log
- rm -rf node_modules/@theia/electron/download
- rm -rf node_modules/electron
branches:
only:
- master
- master
env:
global:
- CXX=g++-4.8
Expand All @@ -83,14 +83,13 @@ addons:
apt:
update: true
sources:
- ubuntu-toolchain-r-test
- ubuntu-toolchain-r-test
packages:
- g++-4.8
- libsecret-1-dev
- xvfb
- libx11-dev
- libxkbfile-dev
chrome: stable
- g++-4.8
- libsecret-1-dev
- xvfb
- libx11-dev
- libxkbfile-dev
jdk:
- oraclejdk9
before_install:
Expand All @@ -115,50 +114,50 @@ script:
notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/c42ddc125fe6bbfccb48
- https://webhooks.gitter.im/e/c42ddc125fe6bbfccb48
on_success: change
on_failure: always
on_start: never
jobs:
fast_finish: true
include:
- stage: test
os: linux
- os: osx
env: CXX=c++
before_script: skip
script:
- travis_retry yarn test:theia
- os: windows
env:
- CXX=c++
- YARN_GPG=no
before_script: skip
script:
- travis_retry yarn test:theia
- stage: deploy
if: NOT type IN (cron, pull_request)
os: linux
before_script: skip
script: skip
install: skip
before_deploy:
- |
if ! [ "$BEFORE_DEPLOY_RUN" ]; then
export BEFORE_DEPLOY_RUN=1
printf "//registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}\n" >> ~/.npmrc
THEIA_SKIP_NPM_PREPARE=1 yarn install --skip-integrity-check # fix cache we meddled-with
yarn run docs
fi
deploy:
- provider: script
script: yarn run publish:next
on:
branch: master
skip_cleanup: true
- provider: pages
skip_cleanup: true
github-token: $GITHUB_TOKEN
local-dir: gh-pages
on:
branch: master
- stage: test
os: linux
- os: osx
env: CXX=c++
before_script: skip
script:
- travis_retry yarn test:theia
- os: windows
env:
- CXX=c++
- YARN_GPG=no
before_script: skip
script:
- travis_retry yarn test:theia
- stage: deploy
if: NOT type IN (cron, pull_request)
os: linux
before_script: skip
script: skip
install: skip
before_deploy:
- |
if ! [ "$BEFORE_DEPLOY_RUN" ]; then
export BEFORE_DEPLOY_RUN=1
printf "//registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}\n" >> ~/.npmrc
THEIA_SKIP_NPM_PREPARE=1 yarn install --skip-integrity-check # fix cache we meddled-with
yarn run docs
fi
deploy:
- provider: script
script: yarn run publish:next
on:
branch: master
skip_cleanup: true
- provider: pages
skip_cleanup: true
github-token: $GITHUB_TOKEN
local-dir: gh-pages
on:
branch: master
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,11 @@ Breaking changes:
Before these attributes have to be computed for all nodes and stored as a part of the layout.
From now on they will be computed only on demand for visible nodes.
It decreases requirements to the local storage and allows to invalidate node appearance by simply rerendering a tree.
- [application-manager] `ApplicationPackageManager.start*` methods return an instance of a server child process instead of promise.
- [cli] Generated webpack config is renamed to `gen-webpack.config.js`.
`webpack.config.js` is generated only once. It can be edited by users to custoimze bundling,
but should be based on `gen-webpack.config.js` to pick any changes in the generated config.
If it does not have a reference to `gen-webpack.config.js` then it will be regenerated.

## v0.14.0

Expand Down
6 changes: 0 additions & 6 deletions NOTICE.md
Original file line number Diff line number Diff line change
Expand Up @@ -256,12 +256,6 @@ vscode-java-debug (0.15.0)

* License: MIT

webdriverio (n/a)

* License: MIT
* Project: http://webdriver.io/
* Source: https://github.com/webdriverio/webdriverio.git

when (3.7.8)

* License: MIT
Expand Down
1 change: 1 addition & 0 deletions configs/mocha.opts
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@
--require reflect-metadata/Reflect
--reporter spec
--watch-extensions js
--exit
1 change: 1 addition & 0 deletions dev-packages/application-manager/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@
"@theia/application-package": "^0.14.0",
"@theia/compression-webpack-plugin": "^3.0.0",
"@types/fs-extra": "^4.0.2",
"@types/webpack": "^4.41.2",
"babel-loader": "^8.0.6",
"circular-dependency-plugin": "^5.0.0",
"copy-webpack-plugin": "^4.5.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ export class ApplicationPackageManager {
async clean(): Promise<void> {
await this.remove(this.pck.lib());
await this.remove(this.pck.srcGen());
await this.remove(this.webpack.configPath);
await this.remove(this.webpack.genConfigPath);
}

async generate(): Promise<void> {
Expand All @@ -70,22 +70,22 @@ export class ApplicationPackageManager {
return this.__process.run('webpack', args);
}

async start(args: string[] = []): Promise<void> {
start(args: string[] = []): cp.ChildProcess {
if (this.pck.isElectron()) {
return this.startElectron(args);
}
return this.startBrowser(args);
}

async startElectron(args: string[]): Promise<void> {
startElectron(args: string[]): cp.ChildProcess {
const { mainArgs, options } = this.adjustArgs([this.pck.frontend('electron-main.js'), ...args]);
const electronCli = require.resolve('electron/cli.js', { paths: [this.pck.projectPath] });
this.__process.fork(electronCli, mainArgs, options);
return this.__process.fork(electronCli, mainArgs, options);
}

async startBrowser(args: string[]): Promise<void> {
startBrowser(args: string[]): cp.ChildProcess {
const { mainArgs, options } = this.adjustArgs(args);
this.__process.fork(this.pck.backend('main.js'), mainArgs, options);
return this.__process.fork(this.pck.backend('main.js'), mainArgs, options);
}

private adjustArgs(args: string[], forkOptions: cp.ForkOptions = {}): Readonly<{ mainArgs: string[]; options: cp.ForkOptions }> {
Expand Down
Loading