Skip to content

Commit 8c030f7

Browse files
LeonovecSergeyfbricon
authored andcommitted
Add collecting build file patterns test
Refactoring Signed-off-by: Siarhei Leanavets <Siarhei_Leanavets1@epam.com>
1 parent c9e18a9 commit 8c030f7

3 files changed

Lines changed: 29 additions & 8 deletions

File tree

src/plugin.ts

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
import * as vscode from 'vscode';
44
import * as path from 'path';
55
import { Commands } from './commands';
6-
import { buildFilePatterns } from './standardLanguageClient';
76

87
let existingExtensions: Array<string>;
8+
export let buildFilePatterns: Array<string>;
99

1010
export function collectJavaExtensions(extensions: readonly vscode.Extension<any>[]): string[] {
1111
const result = [];
@@ -40,6 +40,7 @@ export function collectBuildFilePattern(extensions: readonly vscode.Extension<an
4040
}
4141
}
4242
}
43+
buildFilePatterns = result.slice();
4344
return result;
4445
}
4546

@@ -60,12 +61,12 @@ function isContributedPartUpdated(newContributedPart: Array<string>, oldContribu
6061
if (!oldContributedPart) {
6162
return false;
6263
}
63-
const oldExtensions = new Set(oldContributedPart.slice());
64-
const newExtensions = newContributedPart;
65-
const hasChanged = (oldExtensions.size !== newExtensions.length);
64+
const oldContribution = new Set(oldContributedPart.slice());
65+
const newContribution = newContributedPart;
66+
const hasChanged = (oldContribution.size !== newContribution.length);
6667
if (!hasChanged) {
67-
for (const newExtension of newExtensions) {
68-
if (!oldExtensions.has(newExtension)) {
68+
for (const newExtension of newContribution) {
69+
if (!oldContribution.has(newExtension)) {
6970
return true;
7071
}
7172
}

src/standardLanguageClient.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,10 @@ import { markdownPreviewProvider } from "./markdownPreviewProvider";
2828
import { RefactorDocumentProvider, javaRefactorKinds } from "./codeActionProvider";
2929
import { typeHierarchyTree } from "./typeHierarchy/typeHierarchyTree";
3030
import { TypeHierarchyDirection, TypeHierarchyItem } from "./typeHierarchy/protocol";
31+
import { buildFilePatterns } from './plugin';
3132

3233
const extensionName = 'Language Support for Java';
3334
const GRADLE_CHECKSUM = "gradle/checksum/prompt";
34-
export let buildFilePatterns: Array<string>;
3535

3636
export class StandardLanguageClient {
3737

@@ -203,7 +203,7 @@ export class StandardLanguageClient {
203203
this.registerCommandsForStandardServer(context, jdtEventEmitter);
204204
fileEventHandler.registerFileEventHandlers(this.languageClient, context);
205205

206-
buildFilePatterns = collectBuildFilePattern(extensions.all);
206+
collectBuildFilePattern(extensions.all);
207207

208208
this.status = ClientStatus.Initialized;
209209
}

test/standard-mode-suite/extension.test.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,26 @@ suite('Java Language Extension - Standard', () => {
104104
assert.equal(vmArgs[2], '-Dfoo=Some "crazy" stuff');
105105
});
106106

107+
test('should collect build file pattenrs extensions', () => {
108+
const packageJSON = JSON.parse(fs.readFileSync(path.join(__dirname, '../../../test/resources/packageExample.json'), 'utf8'));
109+
const fakedExtension = {
110+
id: 'test',
111+
extensionUri: null,
112+
extensionPath: '',
113+
isActive: true,
114+
packageJSON,
115+
exports: '',
116+
activate: null,
117+
extensionKind: vscode.ExtensionKind.Workspace
118+
};
119+
120+
const extensions = [fakedExtension];
121+
const result = plugin.collectBuildFilePattern(extensions);
122+
assert(result.length === 2);
123+
assert(result[0].endsWith("^pom.xml$"));
124+
assert(result[1].endsWith(".*\\.gradle$"));
125+
});
126+
107127
test('should collect java extensions', () => {
108128
const packageJSON = JSON.parse(fs.readFileSync(path.join(__dirname, '../../../test/resources/packageExample.json'), 'utf8'));
109129
const fakedExtension = {

0 commit comments

Comments
 (0)