@neurodevs/meta-node 0.13.0 → 0.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/build/__tests__/AbstractPackageTest.d.ts +21 -0
  2. package/build/__tests__/AbstractPackageTest.js +62 -1
  3. package/build/__tests__/AbstractPackageTest.js.map +1 -1
  4. package/build/__tests__/impl/TypescriptClassSnippetSuite.test.d.ts +21 -2
  5. package/build/__tests__/impl/TypescriptClassSnippetSuite.test.js +200 -35
  6. package/build/__tests__/impl/TypescriptClassSnippetSuite.test.js.map +1 -1
  7. package/build/__tests__/impl/VscodeSnippetKeybinder.test.d.ts +0 -9
  8. package/build/__tests__/impl/VscodeSnippetKeybinder.test.js +2 -25
  9. package/build/__tests__/impl/VscodeSnippetKeybinder.test.js.map +1 -1
  10. package/build/impl/TypescriptClassSnippetSuite.d.ts +39 -1
  11. package/build/impl/TypescriptClassSnippetSuite.js +230 -1
  12. package/build/impl/TypescriptClassSnippetSuite.js.map +1 -1
  13. package/build/scripts/installSnippetSuite.d.ts +1 -0
  14. package/build/scripts/installSnippetSuite.js +17 -0
  15. package/build/scripts/installSnippetSuite.js.map +1 -0
  16. package/build/testDoubles/SnippetSuite/FakeSnippetSuite.d.ts +2 -0
  17. package/build/testDoubles/SnippetSuite/FakeSnippetSuite.js +5 -0
  18. package/build/testDoubles/SnippetSuite/FakeSnippetSuite.js.map +1 -1
  19. package/package.json +1 -1
  20. package/src/__tests__/AbstractPackageTest.ts +51 -1
  21. package/src/__tests__/impl/TypescriptClassSnippetSuite.test.ts +248 -2
  22. package/src/__tests__/impl/VscodeSnippetKeybinder.test.ts +2 -42
  23. package/src/impl/TypescriptClassSnippetSuite.ts +292 -1
  24. package/src/scripts/installSnippetSuite.ts +15 -0
  25. package/src/testDoubles/SnippetSuite/FakeSnippetSuite.ts +6 -0
@@ -1,14 +1,29 @@
1
- import AbstractSpruceTest, { test, assert } from '@sprucelabs/test-utils'
1
+ import { readFile, writeFile } from 'fs/promises'
2
+ import { test, assert } from '@sprucelabs/test-utils'
3
+ import {
4
+ callsToWriteFile,
5
+ fakeReadFile,
6
+ fakeWriteFile,
7
+ resetCallsToReadFile,
8
+ resetCallsToWriteFile,
9
+ setFakeReadFileResult,
10
+ } from '@neurodevs/fake-node-core'
2
11
  import TypescriptClassSnippetSuite, {
3
12
  SnippetSuite,
4
13
  } from '../../impl/TypescriptClassSnippetSuite'
14
+ import AbstractPackageTest from '../AbstractPackageTest'
5
15
 
6
- export default class TypescriptClassSnippetSuiteTest extends AbstractSpruceTest {
16
+ export default class TypescriptClassSnippetSuiteTest extends AbstractPackageTest {
7
17
  private static instance: SnippetSuite
8
18
 
9
19
  protected static async beforeEach() {
10
20
  await super.beforeEach()
11
21
 
22
+ this.setFakeReadFile()
23
+ this.setFakeWriteFile()
24
+ this.setFakeSnippetsFile()
25
+ this.setFakeKeybindingsFile()
26
+
12
27
  this.instance = this.TypescriptClassSnippetSuite()
13
28
  }
14
29
 
@@ -17,6 +32,237 @@ export default class TypescriptClassSnippetSuiteTest extends AbstractSpruceTest
17
32
  assert.isTruthy(this.instance, 'Failed to create instance!')
18
33
  }
19
34
 
35
+ @test()
36
+ protected static async updatesGlobalSnippetsInVscode() {
37
+ await this.instance.install()
38
+
39
+ assert.isEqualDeep(
40
+ callsToWriteFile[0],
41
+ {
42
+ file: this.snippetsPath,
43
+ data: this.updatedSnippetsFile,
44
+ options: undefined,
45
+ },
46
+ 'Written snippets file is incorrect!'
47
+ )
48
+ }
49
+
50
+ @test()
51
+ protected static async doesNotWriteSnippetsFileIfContentsAreIdentical() {
52
+ setFakeReadFileResult(this.snippetsPath, this.updatedSnippetsFile)
53
+
54
+ await this.instance.install()
55
+
56
+ assert.isEqual(
57
+ callsToWriteFile.filter((call) => call.file === this.snippetsPath)
58
+ .length,
59
+ 0,
60
+ 'Should not have written snippets file!'
61
+ )
62
+ }
63
+
64
+ @test()
65
+ protected static async updatesGlobalKeybindingsInVscode() {
66
+ await this.install()
67
+
68
+ assert.isEqualDeep(
69
+ callsToWriteFile[1],
70
+ {
71
+ file: this.keybindingsPath,
72
+ data: this.updatedKeybindingsFile,
73
+ options: undefined,
74
+ },
75
+ 'Written keybindings file is incorrect!'
76
+ )
77
+ }
78
+
79
+ @test()
80
+ protected static async doesNotWriteKeybindingsFileIfContentsAreIdentical() {
81
+ setFakeReadFileResult(this.keybindingsPath, this.updatedKeybindingsFile)
82
+
83
+ await this.install()
84
+
85
+ assert.isEqual(
86
+ callsToWriteFile.filter(
87
+ (call) => call.file === this.keybindingsPath
88
+ ).length,
89
+ 0,
90
+ 'Should not have written keybindings file!'
91
+ )
92
+ }
93
+
94
+ private static async install() {
95
+ return this.instance.install()
96
+ }
97
+
98
+ private static setFakeReadFile() {
99
+ TypescriptClassSnippetSuite.readFile =
100
+ fakeReadFile as unknown as typeof readFile
101
+ resetCallsToReadFile()
102
+ }
103
+
104
+ private static setFakeWriteFile() {
105
+ TypescriptClassSnippetSuite.writeFile =
106
+ fakeWriteFile as unknown as typeof writeFile
107
+ resetCallsToWriteFile()
108
+ }
109
+
110
+ private static get updatedSnippetsFile() {
111
+ const lastBraceIdx = this.originalSnippetsFile.lastIndexOf('}')
112
+ const before = this.originalSnippetsFile.slice(0, lastBraceIdx)
113
+
114
+ return `${before}${this.snippetsBlock}\n}`
115
+ }
116
+
117
+ private static get snippetsBlock() {
118
+ return ` ${this.snippetStartMarker}\n${this.indentedSnippets}\n ${this.snippetEndMarker}`
119
+ }
120
+
121
+ private static readonly snippetStartMarker =
122
+ '// === TYPESCRIPT CLASS SNIPPETS BEGIN ==='
123
+
124
+ private static readonly snippetEndMarker =
125
+ '// === TYPESCRIPT CLASS SNIPPETS END ==='
126
+
127
+ private static get updatedKeybindingsFile() {
128
+ const lastBraceIdx = this.originalKeybindingsFile.lastIndexOf(']')
129
+ const before = this.originalKeybindingsFile.slice(0, lastBraceIdx)
130
+
131
+ return `${before}${this.keybindingBlock}\n]`
132
+ }
133
+
134
+ private static get keybindingBlock() {
135
+ return ` ${this.keybindingStartMarker}\n${this.indentedKeybindings}\n ${this.keybindingEndMarker}`
136
+ }
137
+
138
+ private static readonly keybindingStartMarker =
139
+ '// === TYPESCRIPT CLASS KEYBINDINGS BEGIN ==='
140
+
141
+ private static readonly keybindingEndMarker =
142
+ '// === TYPESCRIPT CLASS KEYBINDINGS END ==='
143
+
144
+ private static readonly snippets = `
145
+ // === PUBLIC ===
146
+ "Public constructor": { "scope": "typescript", "prefix": "public.constructor", "body": ["public constructor(\${1:args}) {\${2:} }"] },
147
+ "Public field": { "scope": "typescript", "prefix": "public.field", "body": ["public \${1:newField} = \${2:undefined}"] },
148
+ "Public readonly field": { "scope": "typescript", "prefix": "public.readonly.field", "body": ["public readonly \${1:newField} = \${2:undefined}"] },
149
+ "Public getter": { "scope": "typescript", "prefix": "public.getter", "body": ["public get \${1:newProperty}() { return \${2:undefined} }"] },
150
+ "Public setter": { "scope": "typescript", "prefix": "public.setter", "body": ["public set \${1:newProperty}(\${2:_value}: \${3:unknown}) {\${4:} }"] },
151
+ "Public method": { "scope": "typescript", "prefix": "public.method", "body": ["public \${1:newMethod}(\${2:}): \${3:void} {\${4:} }"] },
152
+ "Public async method": { "scope": "typescript", "prefix": "public.async.method", "body": ["public async \${1:newMethod}(\${2:}): \${3:Promise<unknown>} {\${4:} }"] },
153
+ "Public abstract method": { "scope": "typescript", "prefix": "public.abstract.method", "body": ["public abstract \${1:newMethod}(\${2:}): \${3:unknown}"] },
154
+
155
+ // === PROTECTED ===
156
+ "Protected constructor": { "scope": "typescript", "prefix": "protected.constructor", "body": ["protected constructor(\${1:args}) {\${2:} }"] },
157
+ "Protected field": { "scope": "typescript", "prefix": "protected.field", "body": ["protected \${1:newField} = \${2:undefined}"] },
158
+ "Protected readonly field": { "scope": "typescript", "prefix": "protected.readonly.field", "body": ["protected readonly \${1:newField} = \${2:undefined}"] },
159
+ "Protected getter": { "scope": "typescript", "prefix": "protected.getter", "body": ["protected get \${1:newProperty}() { return \${2:undefined} }"] },
160
+ "Protected setter": { "scope": "typescript", "prefix": "protected.setter", "body": ["protected set \${1:newProperty}(\${2:_value}: \${3:unknown}) {\${4:} }"] },
161
+ "Protected method": { "scope": "typescript", "prefix": "protected.method", "body": ["protected \${1:newMethod}(\${2:}): \${3:void} {\${4:} }"] },
162
+ "Protected async method": { "scope": "typescript", "prefix": "protected.async.method", "body": ["protected async \${1:newMethod}(\${2:}): \${3:Promise<unknown>} {\${4:} }"] },
163
+ "Protected abstract method": { "scope": "typescript", "prefix": "protected.abstract.method", "body": ["protected abstract \${1:newMethod}(\${2:}): \${3:unknown}"] },
164
+
165
+ // === PRIVATE ===
166
+ "Private constructor": { "scope": "typescript", "prefix": "private.constructor", "body": ["private constructor(\${1:args}) {\${2:} }"] },
167
+ "Private field": { "scope": "typescript", "prefix": "private.field", "body": ["private \${1:newField} = \${2:undefined}"] },
168
+ "Private readonly field": { "scope": "typescript", "prefix": "private.readonly.field", "body": ["private readonly \${1:newField} = \${2:undefined}"] },
169
+ "Private getter": { "scope": "typescript", "prefix": "private.getter", "body": ["private get \${1:newProperty}() { return \${2:undefined} }"] },
170
+ "Private setter": { "scope": "typescript", "prefix": "private.setter", "body": ["private set \${1:newProperty}(\${2:_value}: \${3:unknown}) {\${4:} }"] },
171
+ "Private method": { "scope": "typescript", "prefix": "private.method", "body": ["private \${1:newMethod}(\${2:}): \${3:void} {\${4:} }"] },
172
+ "Private async method": { "scope": "typescript", "prefix": "private.async.method", "body": ["private async \${1:newMethod}(\${2:}): \${3:Promise<unknown>} {\${4:} }"] },
173
+ "Private abstract method": { "scope": "typescript", "prefix": "private.abstract.method", "body": ["private abstract \${1:newMethod}(\${2:}): \${3:unknown}"] },
174
+
175
+ // === PUBLIC STATIC ===
176
+ "Public static field": { "scope": "typescript", "prefix": "public.static.field", "body": ["public static \${1:newField} = \${2:undefined}"] },
177
+ "Public static readonly field": { "scope": "typescript", "prefix": "public.static.readonly.field", "body": ["public static readonly \${1:newField} = \${2:undefined}"] },
178
+ "Public static getter": { "scope": "typescript", "prefix": "public.static.getter", "body": ["public static get \${1:newProperty}() { return \${2:undefined} }"] },
179
+ "Public static setter": { "scope": "typescript", "prefix": "public.static.setter", "body": ["public static set \${1:newProperty}(\${2:_value}: \${3:unknown}) {\${4:} }"] },
180
+ "Public static method": { "scope": "typescript", "prefix": "public.static.method", "body": ["public static \${1:newMethod}(\${2:}): \${3:void} {\${4:} }"] },
181
+ "Public static async method": { "scope": "typescript", "prefix": "public.static.async.method", "body": ["public static async \${1:newMethod}(\${2:}): \${3:Promise<unknown>} {\${4:} }"] },
182
+
183
+ // === PROTECTED STATIC ===
184
+ "Protected static field": { "scope": "typescript", "prefix": "protected.static.field", "body": ["protected static \${1:newField} = \${2:undefined}"] },
185
+ "Protected static readonly field": { "scope": "typescript", "prefix": "protected.static.readonly.field", "body": ["protected static readonly \${1:newField} = \${2:undefined}"] },
186
+ "Protected static getter": { "scope": "typescript", "prefix": "protected.static.getter", "body": ["protected static get \${1:newProperty}() { return \${2:undefined} }"] },
187
+ "Protected static setter": { "scope": "typescript", "prefix": "protected.static.setter", "body": ["protected static set \${1:newProperty}(\${2:_value}: \${3:unknown}) {\${4:} }"] },
188
+ "Protected static method": { "scope": "typescript", "prefix": "protected.static.method", "body": ["protected static \${1:newMethod}(\${2:}): \${3:void} {\${4:} }"] },
189
+ "Protected static async method": { "scope": "typescript", "prefix": "protected.static.async.method", "body": ["protected static async \${1:newMethod}(\${2:}): \${3:Promise<unknown>} {\${4:} }"] },
190
+
191
+ // === PRIVATE STATIC ===
192
+ "Private static field": { "scope": "typescript", "prefix": "private.static.field", "body": ["private static \${1:newField} = \${2:undefined}"] },
193
+ "Private static readonly field": { "scope": "typescript", "prefix": "private.static.readonly.field", "body": ["private static readonly \${1:newField} = \${2:undefined}"] },
194
+ "Private static getter": { "scope": "typescript", "prefix": "private.static.getter", "body": ["private static get \${1:newProperty}() { return \${2:undefined} }"] },
195
+ "Private static setter": { "scope": "typescript", "prefix": "private.static.setter", "body": ["private static set \${1:newProperty}(\${2:_value}: \${3:unknown}) {\${4:} }"] },
196
+ "Private static method": { "scope": "typescript", "prefix": "private.static.method", "body": ["private static \${1:newMethod}(\${2:}): \${3:void} {\${4:} }"] },
197
+ "Private static async method": { "scope": "typescript", "prefix": "private.static.async.method", "body": ["private static async \${1:newMethod}(\${2:}): \${3:Promise<unknown>} {\${4:} }"] }
198
+ `.replace(/^[ \t]+/gm, '')
199
+
200
+ private static readonly indentedSnippets = this.snippets
201
+ .split('\n')
202
+ .map((line) => (line.trim() ? ' ' + line : line))
203
+ .join('\n')
204
+
205
+ private static readonly keybindings = `
206
+ // === PUBLIC (Ctrl+1) ===
207
+ { "key": "ctrl+1 f1", "command": "editor.action.insertSnippet", "args": { "name": "Public constructor" } },
208
+ { "key": "ctrl+1 f2", "command": "editor.action.insertSnippet", "args": { "name": "Public field" } },
209
+ { "key": "ctrl+1 f3", "command": "editor.action.insertSnippet", "args": { "name": "Public readonly field" } },
210
+ { "key": "ctrl+1 f4", "command": "editor.action.insertSnippet", "args": { "name": "Public getter" } },
211
+ { "key": "ctrl+1 f5", "command": "editor.action.insertSnippet", "args": { "name": "Public setter" } },
212
+ { "key": "ctrl+1 f6", "command": "editor.action.insertSnippet", "args": { "name": "Public method" } },
213
+ { "key": "ctrl+1 f7", "command": "editor.action.insertSnippet", "args": { "name": "Public async method" } },
214
+ { "key": "ctrl+1 f8", "command": "editor.action.insertSnippet", "args": { "name": "Public abstract method" } },
215
+
216
+ // === PROTECTED (Ctrl+2) ===
217
+ { "key": "ctrl+2 f1", "command": "editor.action.insertSnippet", "args": { "name": "Protected constructor" } },
218
+ { "key": "ctrl+2 f2", "command": "editor.action.insertSnippet", "args": { "name": "Protected field" } },
219
+ { "key": "ctrl+2 f3", "command": "editor.action.insertSnippet", "args": { "name": "Protected readonly field" } },
220
+ { "key": "ctrl+2 f4", "command": "editor.action.insertSnippet", "args": { "name": "Protected getter" } },
221
+ { "key": "ctrl+2 f5", "command": "editor.action.insertSnippet", "args": { "name": "Protected setter" } },
222
+ { "key": "ctrl+2 f6", "command": "editor.action.insertSnippet", "args": { "name": "Protected method" } },
223
+ { "key": "ctrl+2 f7", "command": "editor.action.insertSnippet", "args": { "name": "Protected async method" } },
224
+ { "key": "ctrl+2 f8", "command": "editor.action.insertSnippet", "args": { "name": "Protected abstract method" } },
225
+
226
+ // === PRIVATE (Ctrl+3) ===
227
+ { "key": "ctrl+3 f1", "command": "editor.action.insertSnippet", "args": { "name": "Private constructor" } },
228
+ { "key": "ctrl+3 f2", "command": "editor.action.insertSnippet", "args": { "name": "Private field" } },
229
+ { "key": "ctrl+3 f3", "command": "editor.action.insertSnippet", "args": { "name": "Private readonly field" } },
230
+ { "key": "ctrl+3 f4", "command": "editor.action.insertSnippet", "args": { "name": "Private getter" } },
231
+ { "key": "ctrl+3 f5", "command": "editor.action.insertSnippet", "args": { "name": "Private setter" } },
232
+ { "key": "ctrl+3 f6", "command": "editor.action.insertSnippet", "args": { "name": "Private method" } },
233
+ { "key": "ctrl+3 f7", "command": "editor.action.insertSnippet", "args": { "name": "Private async method" } },
234
+ { "key": "ctrl+3 f8", "command": "editor.action.insertSnippet", "args": { "name": "Private abstract method" } },
235
+
236
+ // === PUBLIC STATIC (Ctrl+1 Alt) ===
237
+ { "key": "ctrl+1 alt+f2", "command": "editor.action.insertSnippet", "args": { "name": "Public static field" } },
238
+ { "key": "ctrl+1 alt+f3", "command": "editor.action.insertSnippet", "args": { "name": "Public static readonly field" } },
239
+ { "key": "ctrl+1 alt+f4", "command": "editor.action.insertSnippet", "args": { "name": "Public static getter" } },
240
+ { "key": "ctrl+1 alt+f5", "command": "editor.action.insertSnippet", "args": { "name": "Public static setter" } },
241
+ { "key": "ctrl+1 alt+f6", "command": "editor.action.insertSnippet", "args": { "name": "Public static method" } },
242
+ { "key": "ctrl+1 alt+f7", "command": "editor.action.insertSnippet", "args": { "name": "Public static async method" } },
243
+
244
+ // === PROTECTED STATIC (Ctrl+2 Alt) ===
245
+ { "key": "ctrl+2 alt+f2", "command": "editor.action.insertSnippet", "args": { "name": "Protected static field" } },
246
+ { "key": "ctrl+2 alt+f3", "command": "editor.action.insertSnippet", "args": { "name": "Protected static readonly field" } },
247
+ { "key": "ctrl+2 alt+f4", "command": "editor.action.insertSnippet", "args": { "name": "Protected static getter" } },
248
+ { "key": "ctrl+2 alt+f5", "command": "editor.action.insertSnippet", "args": { "name": "Protected static setter" } },
249
+ { "key": "ctrl+2 alt+f6", "command": "editor.action.insertSnippet", "args": { "name": "Protected static method" } },
250
+ { "key": "ctrl+2 alt+f7", "command": "editor.action.insertSnippet", "args": { "name": "Protected static async method" } },
251
+
252
+ // === PRIVATE STATIC (Ctrl+3 Alt) ===
253
+ { "key": "ctrl+3 alt+f2", "command": "editor.action.insertSnippet", "args": { "name": "Private static field" } },
254
+ { "key": "ctrl+3 alt+f3", "command": "editor.action.insertSnippet", "args": { "name": "Private static readonly field" } },
255
+ { "key": "ctrl+3 alt+f4", "command": "editor.action.insertSnippet", "args": { "name": "Private static getter" } },
256
+ { "key": "ctrl+3 alt+f5", "command": "editor.action.insertSnippet", "args": { "name": "Private static setter" } },
257
+ { "key": "ctrl+3 alt+f6", "command": "editor.action.insertSnippet", "args": { "name": "Private static method" } },
258
+ { "key": "ctrl+3 alt+f7", "command": "editor.action.insertSnippet", "args": { "name": "Private static async method" } }
259
+ `.replace(/^[ \t]+/gm, '')
260
+
261
+ private static readonly indentedKeybindings = this.keybindings
262
+ .split('\n')
263
+ .map((line) => (line.trim() ? ' ' + line : line))
264
+ .join('\n')
265
+
20
266
  private static TypescriptClassSnippetSuite() {
21
267
  return TypescriptClassSnippetSuite.Create()
22
268
  }
@@ -11,7 +11,6 @@ import {
11
11
  import VscodeSnippetKeybinder, {
12
12
  SnippetKeybinder,
13
13
  } from '../../impl/VscodeSnippetKeybinder'
14
- import expandHomeDir from '../../scripts/expandHomeDir'
15
14
  import AbstractPackageTest from '../AbstractPackageTest'
16
15
 
17
16
  export default class VscodeSnippetKeybinderTest extends AbstractPackageTest {
@@ -113,40 +112,12 @@ export default class VscodeSnippetKeybinderTest extends AbstractPackageTest {
113
112
  resetCallsToWriteFile()
114
113
  }
115
114
 
116
- private static setFakeSnippetsFile() {
117
- setFakeReadFileResult(
118
- this.snippetsPath,
119
- JSON.stringify(this.originalSnippetsFile, null, 4)
120
- )
121
- }
122
-
123
- private static setFakeKeybindingsFile() {
124
- setFakeReadFileResult(
125
- this.keybindingsPath,
126
- JSON.stringify(this.originalKeybindingsFile, null, 4)
127
- )
128
- }
129
-
130
115
  private static readonly fakeName = `${generateId()}-${generateId()}_${generateId()} ${generateId()}`
131
116
  private static readonly fakePrefix = this.toCommandId(this.fakeName)
132
117
  private static readonly fakeLines = [generateId(), generateId()]
133
118
  private static readonly fakeKeybinding = generateId()
134
119
  private static readonly fakeDescription = generateId()
135
120
 
136
- private static readonly vscodeDir = expandHomeDir(
137
- '~/Library/Application Support/Code/User'
138
- )
139
-
140
- private static get snippetsPath() {
141
- return `${this.vscodeDir}/snippets/custom.code-snippets`
142
- }
143
-
144
- private static readonly originalSnippet = { [generateId()]: {} }
145
-
146
- private static readonly originalSnippetsFile = {
147
- ...this.originalSnippet,
148
- }
149
-
150
121
  private static get updatedSnippetsFile() {
151
122
  return {
152
123
  ...this.originalSnippet,
@@ -161,20 +132,9 @@ export default class VscodeSnippetKeybinderTest extends AbstractPackageTest {
161
132
 
162
133
  private static readonly originalSnippetsFileCommented = `
163
134
  // ${generateId()}
164
- ${JSON.stringify(this.originalSnippetsFile, null, 4)}
135
+ ${JSON.stringify(this.originalSnippets, null, 4)}
165
136
  `
166
137
 
167
- private static get keybindingsPath() {
168
- return `${this.vscodeDir}/keybindings.json`
169
- }
170
-
171
- private static readonly originalKeybinding = {
172
- key: generateId(),
173
- command: generateId(),
174
- }
175
-
176
- private static readonly originalKeybindingsFile = [this.originalKeybinding]
177
-
178
138
  private static readonly updatedKeybindingsFile = [
179
139
  this.originalKeybinding,
180
140
  {
@@ -189,7 +149,7 @@ export default class VscodeSnippetKeybinderTest extends AbstractPackageTest {
189
149
 
190
150
  private static readonly originalKeybindingsFileCommented = `
191
151
  // ${generateId()}
192
- ${JSON.stringify(this.originalKeybindingsFile, null, 4)}
152
+ ${JSON.stringify(this.originalKeybindings, null, 4)}
193
153
  `
194
154
 
195
155
  private static VscodeSnippetKeybinder() {