4
4
import * as assert from "assert" ;
5
5
import * as vscode from "vscode" ;
6
6
import { before , beforeEach , afterEach } from "mocha" ;
7
+ import utils = require( "../utils" ) ;
7
8
import { IExternalPowerShellDetails , IPowerShellExtensionClient } from "../../src/features/ExternalApi" ;
8
9
9
- // tslint:disable-next-line: no-var-requires
10
- const PackageJSON : any = require ( "../../../package.json" ) ;
11
- const testExtensionId = `${ PackageJSON . publisher } .${ PackageJSON . name } ` ;
12
-
13
10
suite ( "ExternalApi feature - Registration API" , ( ) => {
14
11
let powerShellExtensionClient : IPowerShellExtensionClient ;
15
12
before ( async ( ) => {
16
- const powershellExtension = vscode . extensions . getExtension < IPowerShellExtensionClient > ( testExtensionId ) ;
17
- if ( ! powershellExtension . isActive ) {
18
- powerShellExtensionClient = await powershellExtension . activate ( ) ;
19
- return ;
20
- }
13
+ const powershellExtension = await utils . ensureExtensionIsActivated ( ) ;
21
14
powerShellExtensionClient = powershellExtension ! . exports as IPowerShellExtensionClient ;
22
15
} ) ;
23
16
24
17
test ( "It can register and unregister an extension" , ( ) => {
25
- const sessionId : string = powerShellExtensionClient . registerExternalExtension ( testExtensionId ) ;
18
+ const sessionId : string = powerShellExtensionClient . registerExternalExtension ( utils . extensionId ) ;
26
19
assert . notStrictEqual ( sessionId , "" ) ;
27
20
assert . notStrictEqual ( sessionId , null ) ;
28
21
assert . strictEqual (
@@ -31,7 +24,7 @@ suite("ExternalApi feature - Registration API", () => {
31
24
} ) ;
32
25
33
26
test ( "It can register and unregister an extension with a version" , ( ) => {
34
- const sessionId : string = powerShellExtensionClient . registerExternalExtension ( testExtensionId , "v2" ) ;
27
+ const sessionId : string = powerShellExtensionClient . registerExternalExtension ( utils . extensionId , "v2" ) ;
35
28
assert . notStrictEqual ( sessionId , "" ) ;
36
29
assert . notStrictEqual ( sessionId , null ) ;
37
30
assert . strictEqual (
@@ -48,12 +41,12 @@ suite("ExternalApi feature - Registration API", () => {
48
41
} ) ;
49
42
50
43
test ( "It can't register the same extension twice" , async ( ) => {
51
- const sessionId : string = powerShellExtensionClient . registerExternalExtension ( testExtensionId ) ;
44
+ const sessionId : string = powerShellExtensionClient . registerExternalExtension ( utils . extensionId ) ;
52
45
try {
53
46
assert . throws (
54
- ( ) => powerShellExtensionClient . registerExternalExtension ( testExtensionId ) ,
47
+ ( ) => powerShellExtensionClient . registerExternalExtension ( utils . extensionId ) ,
55
48
{
56
- message : `The extension '${ testExtensionId } ' is already registered.`
49
+ message : `The extension '${ utils . extensionId } ' is already registered.`
57
50
} ) ;
58
51
} finally {
59
52
powerShellExtensionClient . unregisterExternalExtension ( sessionId ) ;
@@ -74,7 +67,7 @@ suite("ExternalApi feature - Other APIs", () => {
74
67
let powerShellExtensionClient : IPowerShellExtensionClient ;
75
68
76
69
before ( async ( ) => {
77
- const powershellExtension = vscode . extensions . getExtension < IPowerShellExtensionClient > ( testExtensionId ) ;
70
+ const powershellExtension = vscode . extensions . getExtension < IPowerShellExtensionClient > ( utils . extensionId ) ;
78
71
if ( ! powershellExtension . isActive ) {
79
72
powerShellExtensionClient = await powershellExtension . activate ( ) ;
80
73
return ;
@@ -83,7 +76,7 @@ suite("ExternalApi feature - Other APIs", () => {
83
76
} ) ;
84
77
85
78
beforeEach ( ( ) => {
86
- sessionId = powerShellExtensionClient . registerExternalExtension ( testExtensionId ) ;
79
+ sessionId = powerShellExtensionClient . registerExternalExtension ( utils . extensionId ) ;
87
80
} ) ;
88
81
89
82
afterEach ( ( ) => {
0 commit comments