Skip to content

Commit e98f015

Browse files
authored
Reset extension between tests (#318)
1 parent b049c4b commit e98f015

16 files changed

+92
-51
lines changed

src/document/DocumentManager.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,10 @@ export class DocumentManager implements SettingsConfigurable, Closeable {
183183
return [...this.documentMap.values()].filter((doc) => doc.isTemplate() && doc.extension === extension).length;
184184
}
185185

186+
clear() {
187+
this.documentMap.clear();
188+
}
189+
186190
close() {
187191
clearInterval(this.interval);
188192
}

src/settings/SettingsManager.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { toString } from '../utils/String';
88
import { PartialDataObserver, SubscriptionManager } from '../utils/SubscriptionManager';
99
import { parseWithPrettyError } from '../utils/ZodErrorWrapper';
1010
import { ISettingsSubscriber, SettingsPathKey } from './ISettingsSubscriber';
11-
import { Settings, SettingsState } from './Settings';
11+
import { DefaultSettings, Settings, SettingsState } from './Settings';
1212
import { parseSettings } from './SettingsParser';
1313

1414
const logger = LoggerFactory.getLogger('SettingsManager');
@@ -29,6 +29,10 @@ export class SettingsManager implements ISettingsSubscriber {
2929
return this.settingsState.toSettings();
3030
}
3131

32+
reset() {
33+
this.validateAndUpdate(DefaultSettings);
34+
}
35+
3236
/**
3337
* Subscribe to settings changes
3438
* Overloaded to support both full and partial subscriptions

src/usageTracker/UsageTracker.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,8 @@ export class UsageTracker {
2424
return this.events.has(event);
2525
});
2626
}
27+
28+
clear() {
29+
this.events.clear();
30+
}
2731
}

tst/e2e/CodeLens.test.ts

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

55
describe('CodeLens', () => {
6-
let client: TestExtension;
6+
const client = new TestExtension();
77

88
beforeAll(async () => {
9-
client = new TestExtension();
109
await client.ready();
1110
});
1211

12+
beforeEach(async () => {
13+
await client.reset();
14+
});
15+
1316
afterAll(async () => {
1417
await client.close();
1518
});

tst/e2e/Completion.test.ts

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

55
describe('Completion', () => {
6-
let client: TestExtension;
6+
const client = new TestExtension();
77

88
beforeAll(async () => {
9-
client = new TestExtension();
109
await client.ready();
1110
});
1211

12+
beforeEach(async () => {
13+
await client.reset();
14+
});
15+
1316
afterAll(async () => {
1417
await client.close();
1518
});

tst/e2e/Completion.yaml.test.ts

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

66
describe('Completion Tests', () => {
77
const documentUri = 'file:///test.yaml';
8-
let extension: TestExtension;
8+
const extension = new TestExtension();
99

10-
beforeEach(() => {
11-
extension = new TestExtension();
10+
beforeEach(async () => {
11+
await extension.reset();
1212
});
1313

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

tst/e2e/DocumentHandler.test.ts

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

55
describe('DocumentHandler', () => {
66
const uri = 'file:///test.yaml';
77

8-
let extension: TestExtension;
8+
const extension = new TestExtension();
99

10-
beforeEach(() => {
11-
extension = new TestExtension();
10+
beforeEach(async () => {
11+
await extension.reset();
1212
});
1313

14-
afterEach(async () => {
14+
beforeEach(async () => {
15+
await extension.reset();
16+
});
17+
18+
afterAll(async () => {
1519
await extension.close();
1620
});
1721

tst/e2e/DocumentSymbol.test.ts

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

55
describe('DocumentSymbol', () => {
6-
let client: TestExtension;
6+
const client = new TestExtension();
77

88
beforeAll(async () => {
9-
client = new TestExtension();
109
await client.ready();
1110
});
1211

12+
beforeEach(async () => {
13+
await client.reset();
14+
});
15+
1316
afterAll(async () => {
1417
await client.close();
1518
});

tst/e2e/ExtractAllOccurrencesToParameter.test.ts

Lines changed: 5 additions & 5 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, beforeEach, 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', () => {
7-
let extension: TestExtension;
7+
const extension = new TestExtension();
88

9-
beforeEach(() => {
10-
extension = new TestExtension();
9+
beforeEach(async () => {
10+
await extension.reset();
1111
});
1212

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

tst/e2e/ExtractToParameter.json.test.ts

Lines changed: 5 additions & 5 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, beforeEach, 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
import { applyWorkspaceEdit } from '../utils/WorkspaceEditUtils';
66

77
describe('Extract to Parameter - JSON Tests', () => {
8-
let extension: TestExtension;
8+
const extension = new TestExtension();
99

10-
beforeEach(() => {
11-
extension = new TestExtension();
10+
beforeEach(async () => {
11+
await extension.reset();
1212
});
1313

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

0 commit comments

Comments
 (0)