Skip to content

Commit 2747ba9

Browse files
committed
Wait for schemas to be loaded
1 parent e07bcf3 commit 2747ba9

19 files changed

+160
-319
lines changed

src/datastore/LMDB.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import { stats } from './lmdb/Stats';
1212
import { encryptionStrategy } from './lmdb/Utils';
1313

1414
export class LMDBStoreFactory implements DataStoreFactory {
15-
private isClosed: boolean = false;
1615
private readonly log = LoggerFactory.getLogger('LMDB.Global');
1716
@Telemetry({ scope: 'LMDB.Global' }) private readonly telemetry!: ScopedTelemetry;
1817

@@ -87,18 +86,14 @@ export class LMDBStoreFactory implements DataStoreFactory {
8786
}
8887

8988
async close(): Promise<void> {
90-
if (this.isClosed) {
91-
return;
92-
}
89+
clearInterval(this.metricsInterval);
90+
clearTimeout(this.timeout);
9391

9492
// Clear the stores map but don't close individual stores
9593
// LMDB will close them when we close the environment
96-
clearInterval(this.metricsInterval);
97-
clearTimeout(this.timeout);
9894
this.stores.clear();
9995
await this.env.flushed;
10096
await this.env.close();
101-
this.isClosed = true;
10297
}
10398

10499
private cleanupOldVersions(): void {

src/server/CfnServer.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@ import { ServerComponents } from './ServerComponents';
6161

6262
const log = LoggerFactory.getLogger('CfnServer');
6363
export class CfnServer {
64-
private isClosed: boolean = false;
6564
private readonly components: ServerComponents;
6665

6766
constructor(
@@ -290,10 +289,6 @@ export class CfnServer {
290289
}
291290

292291
async close(): Promise<void> {
293-
if (this.isClosed) {
294-
return;
295-
}
296292
await closeSafely(this.providers, this.external, this.core);
297-
this.isClosed = true;
298293
}
299294
}

tst/e2e/CodeLens.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
import { describe, it, expect, beforeEach, afterEach } from 'vitest';
1+
import { describe, it, expect, beforeAll, afterAll } from 'vitest';
22
import { CodeLens } from 'vscode-languageserver';
33
import { TestExtension } from '../utils/TestExtension';
44

55
describe('CodeLens', () => {
66
let client: TestExtension;
77

8-
beforeEach(async () => {
8+
beforeAll(async () => {
99
client = new TestExtension();
1010
await client.ready();
1111
});
1212

13-
afterEach(async () => {
13+
afterAll(async () => {
1414
await client.close();
1515
});
1616

tst/e2e/Completion.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
import { describe, it, expect, beforeEach, afterEach } from 'vitest';
1+
import { describe, it, expect, beforeAll, afterAll } from 'vitest';
22
import { getSimpleYamlTemplateText, getSimpleJsonTemplateText } from '../utils/TemplateUtils';
33
import { TestExtension } from '../utils/TestExtension';
44

55
describe('Completion', () => {
66
let client: TestExtension;
77

8-
beforeEach(async () => {
8+
beforeAll(async () => {
99
client = new TestExtension();
1010
await client.ready();
1111
});
1212

13-
afterEach(async () => {
13+
afterAll(async () => {
1414
await client.close();
1515
});
1616

tst/e2e/Completion.yaml.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { beforeEach, afterEach, describe, expect, test } from 'vitest';
1+
import { describe, expect, test, beforeAll, afterAll } from 'vitest';
22
import { CompletionList } from 'vscode-languageserver';
33
import { TestExtension } from '../utils/TestExtension';
44
import { WaitFor } from '../utils/Utils';
@@ -7,11 +7,11 @@ describe('Completion Tests', () => {
77
const documentUri = 'file:///test.yaml';
88
let extension: TestExtension;
99

10-
beforeEach(() => {
10+
beforeAll(() => {
1111
extension = new TestExtension();
1212
});
1313

14-
afterEach(async () => {
14+
afterAll(async () => {
1515
await extension.close();
1616
});
1717

tst/e2e/DocumentHandler.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { describe, it, expect, beforeEach, afterEach } from 'vitest';
1+
import { describe, it, expect, beforeAll, afterAll } from 'vitest';
22
import { TestExtension } from '../utils/TestExtension';
33
import { WaitFor } from '../utils/Utils';
44

@@ -7,12 +7,12 @@ describe('DocumentHandler', () => {
77

88
let extension: TestExtension;
99

10-
beforeEach(async () => {
10+
beforeAll(async () => {
1111
extension = new TestExtension();
1212
await extension.ready();
1313
});
1414

15-
afterEach(async () => {
15+
afterAll(async () => {
1616
await extension.close();
1717
});
1818

tst/e2e/DocumentSymbol.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
import { describe, it, expect, beforeEach, afterEach } from 'vitest';
1+
import { describe, it, expect, beforeAll, afterAll } from 'vitest';
22
import { DocumentSymbol, SymbolKind } from 'vscode-languageserver';
33
import { TestExtension } from '../utils/TestExtension';
44

55
describe('DocumentSymbol', () => {
66
let client: TestExtension;
77

8-
beforeEach(async () => {
8+
beforeAll(async () => {
99
client = new TestExtension();
1010
await client.ready();
1111
});
1212

13-
afterEach(async () => {
13+
afterAll(async () => {
1414
await client.close();
1515
});
1616

tst/e2e/ExtractAllOccurrencesToParameter.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
import { describe, it, expect, beforeEach, afterEach } from 'vitest';
1+
import { describe, it, expect, beforeAll, afterAll } from 'vitest';
22
import { CodeAction, CodeActionKind, Range, TextEdit } from 'vscode-languageserver';
33
import { TestExtension } from '../utils/TestExtension';
44
import { WaitFor } from '../utils/Utils';
55

66
describe('Extract All Occurrences to Parameter', () => {
77
let extension: TestExtension;
88

9-
beforeEach(async () => {
9+
beforeAll(async () => {
1010
extension = new TestExtension();
1111
await extension.ready();
1212
});
1313

14-
afterEach(async () => {
14+
afterAll(async () => {
1515
await extension.close();
1616
});
1717

tst/e2e/ExtractToParameter.json.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { describe, it, expect, beforeEach, afterEach } from 'vitest';
1+
import { describe, it, expect, afterAll, beforeAll } from 'vitest';
22
import { CodeAction, CodeActionKind, Range, TextEdit } from 'vscode-languageserver';
33
import { TestExtension } from '../utils/TestExtension';
44
import { WaitFor } from '../utils/Utils';
@@ -7,12 +7,12 @@ import { applyWorkspaceEdit } from '../utils/WorkspaceEditUtils';
77
describe('Extract to Parameter - JSON Tests', () => {
88
let extension: TestExtension;
99

10-
beforeEach(async () => {
10+
beforeAll(async () => {
1111
extension = new TestExtension();
1212
await extension.ready();
1313
});
1414

15-
afterEach(async () => {
15+
afterAll(async () => {
1616
await extension.close();
1717
});
1818

tst/e2e/ExtractToParameter.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { describe, it, expect, beforeEach, afterEach } from 'vitest';
1+
import { describe, it, expect, beforeAll, afterAll } from 'vitest';
22
import { CodeAction, CodeActionKind, Range, TextEdit, WorkspaceEdit } from 'vscode-languageserver';
33
import { TestExtension } from '../utils/TestExtension';
44
import { WaitFor } from '../utils/Utils';
@@ -7,12 +7,12 @@ import { applyWorkspaceEdit } from '../utils/WorkspaceEditUtils';
77
describe('Extract to Parameter - End-to-End CodeAction Workflow Tests', () => {
88
let extension: TestExtension;
99

10-
beforeEach(async () => {
10+
beforeAll(async () => {
1111
extension = new TestExtension();
1212
await extension.ready();
1313
});
1414

15-
afterEach(async () => {
15+
afterAll(async () => {
1616
await extension.close();
1717
});
1818

0 commit comments

Comments
 (0)