Skip to content

Commit d956042

Browse files
authored
test: Add explorer test cases with different projects (#386)
1 parent 2bbee59 commit d956042

24 files changed

+2547
-972
lines changed

.travis.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ matrix:
77
jdk: openjdk11
88
env:
99
- JDK_HOME=~/openjdk11 # force launching JLS using JDK11
10-
- os: osx
11-
osx_image: xcode10.1
12-
jdk: oraclejdk11
10+
# Temporary disable osx since it will stuck after finishing test
11+
#- os: osx
12+
# osx_image: xcode10.1
13+
# jdk: oraclejdk11
1314

1415
addons:
1516
apt:

.vscode/launch.json

Lines changed: 80 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -2,40 +2,86 @@
22
{
33
"version": "0.1.0",
44
"configurations": [
5-
{
6-
"name": "Run Extension",
7-
"type": "extensionHost",
8-
"request": "launch",
9-
"runtimeExecutable": "${execPath}",
10-
"args": ["--extensionDevelopmentPath=${workspaceFolder}" ],
11-
"env": {
12-
"DEBUG_VSCODE_JAVA":"true"
13-
},
14-
"stopOnEntry": false,
15-
"sourceMaps": true,
16-
"outFiles": [ "${workspaceFolder}/dist/**/*.js" ],
17-
"preLaunchTask": "npm: watch"
5+
{
6+
"name": "Run Extension",
7+
"type": "extensionHost",
8+
"request": "launch",
9+
"runtimeExecutable": "${execPath}",
10+
"args": ["--extensionDevelopmentPath=${workspaceFolder}" ],
11+
"env": {
12+
"DEBUG_VSCODE_JAVA":"true"
1813
},
19-
{
20-
"name": "Extension Tests",
21-
"type": "extensionHost",
22-
"request": "launch",
23-
"runtimeExecutable": "${execPath}",
24-
"args": [
25-
"--extensionDevelopmentPath=${workspaceFolder}",
26-
"--extensionTestsPath=${workspaceFolder}/out/test/suite/index"
27-
],
28-
"stopOnEntry": false,
29-
"sourceMaps": true,
30-
"outFiles": [ "${workspaceFolder}/out/test/**/*.js" ],
31-
"preLaunchTask": "npm: compile"
32-
},
33-
{
34-
"type": "java",
35-
"name": "Attach to Plugin",
36-
"request": "attach",
37-
"hostName": "localhost",
38-
"port": 1044
39-
}
14+
"stopOnEntry": false,
15+
"sourceMaps": true,
16+
"outFiles": [ "${workspaceFolder}/dist/**/*.js" ],
17+
"preLaunchTask": "npm: watch"
18+
},
19+
{
20+
"type": "java",
21+
"name": "Attach to Plugin",
22+
"request": "attach",
23+
"hostName": "localhost",
24+
"port": 1044
25+
},
26+
{
27+
"name": "Extension Tests - General",
28+
"type": "extensionHost",
29+
"request": "launch",
30+
"runtimeExecutable": "${execPath}",
31+
"args": [
32+
"${workspaceFolder}/test/java9/",
33+
"--extensionDevelopmentPath=${workspaceFolder}",
34+
"--extensionTestsPath=${workspaceFolder}/dist/test/suite/index"
35+
],
36+
"stopOnEntry": false,
37+
"sourceMaps": true,
38+
"outFiles": [ "${workspaceFolder}/dist/**/*.js" ],
39+
"preLaunchTask": "npm: compile"
40+
},
41+
{
42+
"name": "Extension Tests - Simple Project",
43+
"type": "extensionHost",
44+
"request": "launch",
45+
"runtimeExecutable": "${execPath}",
46+
"args": [
47+
"${workspaceFolder}/test/simple/",
48+
"--extensionDevelopmentPath=${workspaceFolder}",
49+
"--extensionTestsPath=${workspaceFolder}/dist/test/simple-suite/index"
50+
],
51+
"stopOnEntry": false,
52+
"sourceMaps": true,
53+
"outFiles": [ "${workspaceFolder}/dist/**/*.js" ],
54+
"preLaunchTask": "npm: compile"
55+
},
56+
{
57+
"name": "Extension Tests - Maven Project",
58+
"type": "extensionHost",
59+
"request": "launch",
60+
"runtimeExecutable": "${execPath}",
61+
"args": [
62+
"${workspaceFolder}/test/maven/",
63+
"--extensionDevelopmentPath=${workspaceFolder}",
64+
"--extensionTestsPath=${workspaceFolder}/dist/test/maven-suite/index"
65+
],
66+
"stopOnEntry": false,
67+
"sourceMaps": true,
68+
"outFiles": [ "${workspaceFolder}/dist/**/*.js" ],
69+
"preLaunchTask": "npm: compile"
70+
},
71+
{
72+
"name": "Extension Tests - Gradle Project",
73+
"type": "extensionHost",
74+
"request": "launch",
75+
"runtimeExecutable": "${execPath}",
76+
"args": [
77+
"${workspaceFolder}/test/gradle/",
78+
"--extensionDevelopmentPath=${workspaceFolder}",
79+
"--extensionTestsPath=${workspaceFolder}/dist/test/gradle-suite/index"
80+
],
81+
"stopOnEntry": false,
82+
"sourceMaps": true,
83+
"outFiles": [ "${workspaceFolder}/dist/**/*.js" ],
84+
"preLaunchTask": "npm: compile"
85+
}
4086
]
4187
}

.vscodeignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,13 @@ vscode/**
99
tsconfig.json
1010
gulpfile.js
1111
.gitignore
12-
dist/**/*.map
12+
dist/**/test
1313
webpack.*.js
1414
tslint.json
1515
node_modules
1616
scripts
17+
extension.bundle.ts
18+
javaConfig.json
1719

1820
# Ignore output of code sign
1921
server/*.md

extension.bundle.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
// Copyright (c) Microsoft Corporation. All rights reserved.
2+
// Licensed under the MIT license.
3+
4+
export { activate, deactivate } from "./src/extension";
5+
6+
// context value test
7+
export { INodeData, NodeKind, TypeKind } from "./src/java/nodeData";
8+
export { PackageRootKind } from "./src/java/packageRootNodeData";
9+
export { ContainerNode } from "./src/views/containerNode";
10+
export { DataNode } from "./src/views/dataNode";
11+
export { FileNode } from "./src/views/fileNode";
12+
export { FolderNode } from "./src/views/folderNode";
13+
export { PackageNode } from "./src/views/packageNode";
14+
export { PackageRootNode } from "./src/views/packageRootNode";
15+
export { PrimaryTypeNode } from "./src/views/PrimaryTypeNode";
16+
export { ProjectNode } from "./src/views/projectNode";
17+
export { WorkspaceNode } from "./src/views/workspaceNode";
18+
19+
// project view test
20+
export { contextManager } from "./src/contextManager";
21+
export { DependencyExplorer } from "./src/views/dependencyExplorer";
22+
export { Commands } from "./src/commands";

main.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// Copyright (c) Microsoft Corporation. All rights reserved.
2+
// Licensed under the MIT license.
3+
4+
"use strict";
5+
6+
Object.defineProperty(exports, "__esModule", { value: true });
7+
8+
const extension = require("./dist/extension.bundle");
9+
10+
async function activate(ctx) {
11+
return await extension.activate(ctx);
12+
}
13+
14+
async function deactivate(ctx) {
15+
return await extension.deactivate(ctx);
16+
}
17+
18+
// Export as entrypoints for vscode
19+
exports.activate = activate;
20+
exports.deactivate = deactivate;

0 commit comments

Comments
 (0)