brighterscript 0.72.1 → 0.72.2

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 (289) hide show
  1. package/package.json +17 -14
  2. package/dist/astUtils/AstEditor.spec.d.ts +0 -1
  3. package/dist/astUtils/AstEditor.spec.js +0 -254
  4. package/dist/astUtils/AstEditor.spec.js.map +0 -1
  5. package/dist/astUtils/creators.spec.d.ts +0 -1
  6. package/dist/astUtils/creators.spec.js +0 -21
  7. package/dist/astUtils/creators.spec.js.map +0 -1
  8. package/dist/astUtils/reflection.spec.d.ts +0 -1
  9. package/dist/astUtils/reflection.spec.js +0 -308
  10. package/dist/astUtils/reflection.spec.js.map +0 -1
  11. package/dist/astUtils/stackedVisitor.spec.d.ts +0 -1
  12. package/dist/astUtils/stackedVisitor.spec.js +0 -79
  13. package/dist/astUtils/stackedVisitor.spec.js.map +0 -1
  14. package/dist/astUtils/visitors.spec.d.ts +0 -1
  15. package/dist/astUtils/visitors.spec.js +0 -1197
  16. package/dist/astUtils/visitors.spec.js.map +0 -1
  17. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.d.ts +0 -1
  18. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +0 -1237
  19. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +0 -1
  20. package/dist/bscPlugin/definition/DefinitionProvider.spec.d.ts +0 -1
  21. package/dist/bscPlugin/definition/DefinitionProvider.spec.js +0 -171
  22. package/dist/bscPlugin/definition/DefinitionProvider.spec.js.map +0 -1
  23. package/dist/bscPlugin/hover/HoverProcessor.spec.d.ts +0 -1
  24. package/dist/bscPlugin/hover/HoverProcessor.spec.js +0 -201
  25. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +0 -1
  26. package/dist/bscPlugin/references/ReferencesProvider.spec.d.ts +0 -1
  27. package/dist/bscPlugin/references/ReferencesProvider.spec.js +0 -51
  28. package/dist/bscPlugin/references/ReferencesProvider.spec.js.map +0 -1
  29. package/dist/bscPlugin/selectionRanges/SelectionRangesProcessor.spec.d.ts +0 -1
  30. package/dist/bscPlugin/selectionRanges/SelectionRangesProcessor.spec.js +0 -298
  31. package/dist/bscPlugin/selectionRanges/SelectionRangesProcessor.spec.js.map +0 -1
  32. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.d.ts +0 -1
  33. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +0 -399
  34. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +0 -1
  35. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.d.ts +0 -1
  36. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js +0 -290
  37. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js.map +0 -1
  38. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.d.ts +0 -1
  39. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js +0 -245
  40. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js.map +0 -1
  41. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.d.ts +0 -1
  42. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +0 -46
  43. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +0 -1
  44. package/dist/bscPlugin/validation/BrsFileValidator.spec.d.ts +0 -1
  45. package/dist/bscPlugin/validation/BrsFileValidator.spec.js +0 -702
  46. package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +0 -1
  47. package/dist/common/Sequencer.spec.d.ts +0 -1
  48. package/dist/common/Sequencer.spec.js +0 -75
  49. package/dist/common/Sequencer.spec.js.map +0 -1
  50. package/dist/files/BrsFile.Class.spec.d.ts +0 -1
  51. package/dist/files/BrsFile.Class.spec.js +0 -1805
  52. package/dist/files/BrsFile.Class.spec.js.map +0 -1
  53. package/dist/files/BrsFile.spec.d.ts +0 -1
  54. package/dist/files/BrsFile.spec.js +0 -4611
  55. package/dist/files/BrsFile.spec.js.map +0 -1
  56. package/dist/files/XmlFile.spec.d.ts +0 -1
  57. package/dist/files/XmlFile.spec.js +0 -1219
  58. package/dist/files/XmlFile.spec.js.map +0 -1
  59. package/dist/files/tests/imports.spec.d.ts +0 -1
  60. package/dist/files/tests/imports.spec.js +0 -241
  61. package/dist/files/tests/imports.spec.js.map +0 -1
  62. package/dist/files/tests/optionalChaning.spec.d.ts +0 -1
  63. package/dist/files/tests/optionalChaning.spec.js +0 -152
  64. package/dist/files/tests/optionalChaning.spec.js.map +0 -1
  65. package/dist/lexer/Character.spec.d.ts +0 -1
  66. package/dist/lexer/Character.spec.js +0 -27
  67. package/dist/lexer/Character.spec.js.map +0 -1
  68. package/dist/lexer/Lexer.spec.d.ts +0 -1
  69. package/dist/lexer/Lexer.spec.js +0 -1300
  70. package/dist/lexer/Lexer.spec.js.map +0 -1
  71. package/dist/lsp/ActionQueue.spec.d.ts +0 -1
  72. package/dist/lsp/ActionQueue.spec.js +0 -80
  73. package/dist/lsp/ActionQueue.spec.js.map +0 -1
  74. package/dist/lsp/DocumentManager.spec.d.ts +0 -1
  75. package/dist/lsp/DocumentManager.spec.js +0 -103
  76. package/dist/lsp/DocumentManager.spec.js.map +0 -1
  77. package/dist/lsp/PathFilterer.spec.d.ts +0 -1
  78. package/dist/lsp/PathFilterer.spec.js +0 -182
  79. package/dist/lsp/PathFilterer.spec.js.map +0 -1
  80. package/dist/lsp/Project.spec.d.ts +0 -1
  81. package/dist/lsp/Project.spec.js +0 -400
  82. package/dist/lsp/Project.spec.js.map +0 -1
  83. package/dist/lsp/ProjectManager.spec.d.ts +0 -1
  84. package/dist/lsp/ProjectManager.spec.js +0 -1183
  85. package/dist/lsp/ProjectManager.spec.js.map +0 -1
  86. package/dist/lsp/worker/MessageHandler.spec.d.ts +0 -1
  87. package/dist/lsp/worker/MessageHandler.spec.js +0 -64
  88. package/dist/lsp/worker/MessageHandler.spec.js.map +0 -1
  89. package/dist/lsp/worker/WorkerPool.spec.d.ts +0 -1
  90. package/dist/lsp/worker/WorkerPool.spec.js +0 -59
  91. package/dist/lsp/worker/WorkerPool.spec.js.map +0 -1
  92. package/dist/lsp/worker/WorkerThreadProject.spec.d.ts +0 -2
  93. package/dist/lsp/worker/WorkerThreadProject.spec.js +0 -72
  94. package/dist/lsp/worker/WorkerThreadProject.spec.js.map +0 -1
  95. package/dist/parser/AstNode.spec.d.ts +0 -1
  96. package/dist/parser/AstNode.spec.js +0 -1452
  97. package/dist/parser/AstNode.spec.js.map +0 -1
  98. package/dist/parser/Expression.spec.d.ts +0 -1
  99. package/dist/parser/Expression.spec.js +0 -40
  100. package/dist/parser/Expression.spec.js.map +0 -1
  101. package/dist/parser/Parser.Class.spec.d.ts +0 -1
  102. package/dist/parser/Parser.Class.spec.js +0 -495
  103. package/dist/parser/Parser.Class.spec.js.map +0 -1
  104. package/dist/parser/Parser.spec.d.ts +0 -4
  105. package/dist/parser/Parser.spec.js +0 -1985
  106. package/dist/parser/Parser.spec.js.map +0 -1
  107. package/dist/parser/SGParser.spec.d.ts +0 -1
  108. package/dist/parser/SGParser.spec.js +0 -131
  109. package/dist/parser/SGParser.spec.js.map +0 -1
  110. package/dist/parser/Statement.spec.d.ts +0 -1
  111. package/dist/parser/Statement.spec.js +0 -118
  112. package/dist/parser/Statement.spec.js.map +0 -1
  113. package/dist/parser/tests/Parser.spec.d.ts +0 -19
  114. package/dist/parser/tests/Parser.spec.js +0 -38
  115. package/dist/parser/tests/Parser.spec.js.map +0 -1
  116. package/dist/parser/tests/controlFlow/For.spec.d.ts +0 -1
  117. package/dist/parser/tests/controlFlow/For.spec.js +0 -208
  118. package/dist/parser/tests/controlFlow/For.spec.js.map +0 -1
  119. package/dist/parser/tests/controlFlow/ForEach.spec.d.ts +0 -1
  120. package/dist/parser/tests/controlFlow/ForEach.spec.js +0 -143
  121. package/dist/parser/tests/controlFlow/ForEach.spec.js.map +0 -1
  122. package/dist/parser/tests/controlFlow/If.spec.d.ts +0 -1
  123. package/dist/parser/tests/controlFlow/If.spec.js +0 -570
  124. package/dist/parser/tests/controlFlow/If.spec.js.map +0 -1
  125. package/dist/parser/tests/controlFlow/While.spec.d.ts +0 -1
  126. package/dist/parser/tests/controlFlow/While.spec.js +0 -156
  127. package/dist/parser/tests/controlFlow/While.spec.js.map +0 -1
  128. package/dist/parser/tests/expression/Additive.spec.d.ts +0 -1
  129. package/dist/parser/tests/expression/Additive.spec.js +0 -99
  130. package/dist/parser/tests/expression/Additive.spec.js.map +0 -1
  131. package/dist/parser/tests/expression/ArrayLiterals.spec.d.ts +0 -1
  132. package/dist/parser/tests/expression/ArrayLiterals.spec.js +0 -291
  133. package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +0 -1
  134. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.d.ts +0 -1
  135. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +0 -401
  136. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +0 -1
  137. package/dist/parser/tests/expression/Boolean.spec.d.ts +0 -1
  138. package/dist/parser/tests/expression/Boolean.spec.js +0 -83
  139. package/dist/parser/tests/expression/Boolean.spec.js.map +0 -1
  140. package/dist/parser/tests/expression/Call.spec.d.ts +0 -1
  141. package/dist/parser/tests/expression/Call.spec.js +0 -242
  142. package/dist/parser/tests/expression/Call.spec.js.map +0 -1
  143. package/dist/parser/tests/expression/Exponential.spec.d.ts +0 -1
  144. package/dist/parser/tests/expression/Exponential.spec.js +0 -37
  145. package/dist/parser/tests/expression/Exponential.spec.js.map +0 -1
  146. package/dist/parser/tests/expression/Function.spec.d.ts +0 -1
  147. package/dist/parser/tests/expression/Function.spec.js +0 -403
  148. package/dist/parser/tests/expression/Function.spec.js.map +0 -1
  149. package/dist/parser/tests/expression/Indexing.spec.d.ts +0 -1
  150. package/dist/parser/tests/expression/Indexing.spec.js +0 -289
  151. package/dist/parser/tests/expression/Indexing.spec.js.map +0 -1
  152. package/dist/parser/tests/expression/Multiplicative.spec.d.ts +0 -1
  153. package/dist/parser/tests/expression/Multiplicative.spec.js +0 -67
  154. package/dist/parser/tests/expression/Multiplicative.spec.js.map +0 -1
  155. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.d.ts +0 -1
  156. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +0 -346
  157. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +0 -1
  158. package/dist/parser/tests/expression/PrefixUnary.spec.d.ts +0 -1
  159. package/dist/parser/tests/expression/PrefixUnary.spec.js +0 -105
  160. package/dist/parser/tests/expression/PrefixUnary.spec.js.map +0 -1
  161. package/dist/parser/tests/expression/Primary.spec.d.ts +0 -1
  162. package/dist/parser/tests/expression/Primary.spec.js +0 -149
  163. package/dist/parser/tests/expression/Primary.spec.js.map +0 -1
  164. package/dist/parser/tests/expression/RegexLiteralExpression.spec.d.ts +0 -1
  165. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +0 -171
  166. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +0 -1
  167. package/dist/parser/tests/expression/Relational.spec.d.ts +0 -1
  168. package/dist/parser/tests/expression/Relational.spec.js +0 -83
  169. package/dist/parser/tests/expression/Relational.spec.js.map +0 -1
  170. package/dist/parser/tests/expression/SourceLiteralExpression.spec.d.ts +0 -1
  171. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +0 -201
  172. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +0 -1
  173. package/dist/parser/tests/expression/TemplateStringExpression.spec.d.ts +0 -1
  174. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +0 -389
  175. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +0 -1
  176. package/dist/parser/tests/expression/TernaryExpression.spec.d.ts +0 -1
  177. package/dist/parser/tests/expression/TernaryExpression.spec.js +0 -876
  178. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +0 -1
  179. package/dist/parser/tests/expression/UnaryExpression.spec.d.ts +0 -1
  180. package/dist/parser/tests/expression/UnaryExpression.spec.js +0 -52
  181. package/dist/parser/tests/expression/UnaryExpression.spec.js.map +0 -1
  182. package/dist/parser/tests/statement/AssignmentOperators.spec.d.ts +0 -1
  183. package/dist/parser/tests/statement/AssignmentOperators.spec.js +0 -79
  184. package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +0 -1
  185. package/dist/parser/tests/statement/ConstStatement.spec.d.ts +0 -1
  186. package/dist/parser/tests/statement/ConstStatement.spec.js +0 -708
  187. package/dist/parser/tests/statement/ConstStatement.spec.js.map +0 -1
  188. package/dist/parser/tests/statement/Continue.spec.d.ts +0 -1
  189. package/dist/parser/tests/statement/Continue.spec.js +0 -119
  190. package/dist/parser/tests/statement/Continue.spec.js.map +0 -1
  191. package/dist/parser/tests/statement/Declaration.spec.d.ts +0 -1
  192. package/dist/parser/tests/statement/Declaration.spec.js +0 -108
  193. package/dist/parser/tests/statement/Declaration.spec.js.map +0 -1
  194. package/dist/parser/tests/statement/Dim.spec.d.ts +0 -1
  195. package/dist/parser/tests/statement/Dim.spec.js +0 -73
  196. package/dist/parser/tests/statement/Dim.spec.js.map +0 -1
  197. package/dist/parser/tests/statement/Enum.spec.d.ts +0 -1
  198. package/dist/parser/tests/statement/Enum.spec.js +0 -1307
  199. package/dist/parser/tests/statement/Enum.spec.js.map +0 -1
  200. package/dist/parser/tests/statement/For.spec.d.ts +0 -1
  201. package/dist/parser/tests/statement/For.spec.js +0 -45
  202. package/dist/parser/tests/statement/For.spec.js.map +0 -1
  203. package/dist/parser/tests/statement/ForEach.spec.d.ts +0 -1
  204. package/dist/parser/tests/statement/ForEach.spec.js +0 -36
  205. package/dist/parser/tests/statement/ForEach.spec.js.map +0 -1
  206. package/dist/parser/tests/statement/Function.spec.d.ts +0 -1
  207. package/dist/parser/tests/statement/Function.spec.js +0 -342
  208. package/dist/parser/tests/statement/Function.spec.js.map +0 -1
  209. package/dist/parser/tests/statement/Goto.spec.d.ts +0 -1
  210. package/dist/parser/tests/statement/Goto.spec.js +0 -51
  211. package/dist/parser/tests/statement/Goto.spec.js.map +0 -1
  212. package/dist/parser/tests/statement/Increment.spec.d.ts +0 -1
  213. package/dist/parser/tests/statement/Increment.spec.js +0 -117
  214. package/dist/parser/tests/statement/Increment.spec.js.map +0 -1
  215. package/dist/parser/tests/statement/InterfaceStatement.spec.d.ts +0 -1
  216. package/dist/parser/tests/statement/InterfaceStatement.spec.js +0 -102
  217. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +0 -1
  218. package/dist/parser/tests/statement/LibraryStatement.spec.d.ts +0 -1
  219. package/dist/parser/tests/statement/LibraryStatement.spec.js +0 -74
  220. package/dist/parser/tests/statement/LibraryStatement.spec.js.map +0 -1
  221. package/dist/parser/tests/statement/Misc.spec.d.ts +0 -1
  222. package/dist/parser/tests/statement/Misc.spec.js +0 -335
  223. package/dist/parser/tests/statement/Misc.spec.js.map +0 -1
  224. package/dist/parser/tests/statement/PrintStatement.spec.d.ts +0 -1
  225. package/dist/parser/tests/statement/PrintStatement.spec.js +0 -195
  226. package/dist/parser/tests/statement/PrintStatement.spec.js.map +0 -1
  227. package/dist/parser/tests/statement/ReturnStatement.spec.d.ts +0 -1
  228. package/dist/parser/tests/statement/ReturnStatement.spec.js +0 -94
  229. package/dist/parser/tests/statement/ReturnStatement.spec.js.map +0 -1
  230. package/dist/parser/tests/statement/Set.spec.d.ts +0 -1
  231. package/dist/parser/tests/statement/Set.spec.js +0 -218
  232. package/dist/parser/tests/statement/Set.spec.js.map +0 -1
  233. package/dist/parser/tests/statement/Stop.spec.d.ts +0 -1
  234. package/dist/parser/tests/statement/Stop.spec.js +0 -38
  235. package/dist/parser/tests/statement/Stop.spec.js.map +0 -1
  236. package/dist/parser/tests/statement/Throw.spec.d.ts +0 -1
  237. package/dist/parser/tests/statement/Throw.spec.js +0 -35
  238. package/dist/parser/tests/statement/Throw.spec.js.map +0 -1
  239. package/dist/parser/tests/statement/TryCatch.spec.d.ts +0 -1
  240. package/dist/parser/tests/statement/TryCatch.spec.js +0 -142
  241. package/dist/parser/tests/statement/TryCatch.spec.js.map +0 -1
  242. package/dist/preprocessor/Manifest.spec.d.ts +0 -1
  243. package/dist/preprocessor/Manifest.spec.js +0 -80
  244. package/dist/preprocessor/Manifest.spec.js.map +0 -1
  245. package/dist/preprocessor/Preprocessor.spec.d.ts +0 -1
  246. package/dist/preprocessor/Preprocessor.spec.js +0 -152
  247. package/dist/preprocessor/Preprocessor.spec.js.map +0 -1
  248. package/dist/preprocessor/PreprocessorParser.spec.d.ts +0 -1
  249. package/dist/preprocessor/PreprocessorParser.spec.js +0 -116
  250. package/dist/preprocessor/PreprocessorParser.spec.js.map +0 -1
  251. package/dist/types/ArrayType.spec.d.ts +0 -1
  252. package/dist/types/ArrayType.spec.js +0 -30
  253. package/dist/types/ArrayType.spec.js.map +0 -1
  254. package/dist/types/BooleanType.spec.d.ts +0 -1
  255. package/dist/types/BooleanType.spec.js +0 -12
  256. package/dist/types/BooleanType.spec.js.map +0 -1
  257. package/dist/types/DoubleType.spec.d.ts +0 -1
  258. package/dist/types/DoubleType.spec.js +0 -12
  259. package/dist/types/DoubleType.spec.js.map +0 -1
  260. package/dist/types/DynamicType.spec.d.ts +0 -1
  261. package/dist/types/DynamicType.spec.js +0 -12
  262. package/dist/types/DynamicType.spec.js.map +0 -1
  263. package/dist/types/FloatType.spec.d.ts +0 -1
  264. package/dist/types/FloatType.spec.js +0 -12
  265. package/dist/types/FloatType.spec.js.map +0 -1
  266. package/dist/types/FunctionType.spec.d.ts +0 -1
  267. package/dist/types/FunctionType.spec.js +0 -23
  268. package/dist/types/FunctionType.spec.js.map +0 -1
  269. package/dist/types/IntegerType.spec.d.ts +0 -1
  270. package/dist/types/IntegerType.spec.js +0 -12
  271. package/dist/types/IntegerType.spec.js.map +0 -1
  272. package/dist/types/InterfaceType.spec.d.ts +0 -1
  273. package/dist/types/InterfaceType.spec.js +0 -175
  274. package/dist/types/InterfaceType.spec.js.map +0 -1
  275. package/dist/types/InvalidType.spec.d.ts +0 -1
  276. package/dist/types/InvalidType.spec.js +0 -12
  277. package/dist/types/InvalidType.spec.js.map +0 -1
  278. package/dist/types/LongIntegerType.spec.d.ts +0 -1
  279. package/dist/types/LongIntegerType.spec.js +0 -12
  280. package/dist/types/LongIntegerType.spec.js.map +0 -1
  281. package/dist/types/ObjectType.spec.d.ts +0 -1
  282. package/dist/types/ObjectType.spec.js +0 -12
  283. package/dist/types/ObjectType.spec.js.map +0 -1
  284. package/dist/types/StringType.spec.d.ts +0 -1
  285. package/dist/types/StringType.spec.js +0 -12
  286. package/dist/types/StringType.spec.js.map +0 -1
  287. package/dist/types/VoidType.spec.d.ts +0 -1
  288. package/dist/types/VoidType.spec.js +0 -12
  289. package/dist/types/VoidType.spec.js.map +0 -1
@@ -1,400 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_1 = require("chai");
4
- const testHelpers_spec_1 = require("../testHelpers.spec");
5
- const fsExtra = require("fs-extra");
6
- const util_1 = require("../util");
7
- const deferred_1 = require("../deferred");
8
- const DiagnosticMessages_1 = require("../DiagnosticMessages");
9
- const Project_1 = require("./Project");
10
- const sinon_1 = require("sinon");
11
- const Scope_1 = require("../Scope");
12
- const sinon = (0, sinon_1.createSandbox)();
13
- describe('Project', () => {
14
- let project;
15
- beforeEach(() => {
16
- sinon.restore();
17
- project = new Project_1.Project();
18
- fsExtra.emptyDirSync(testHelpers_spec_1.tempDir);
19
- });
20
- afterEach(() => {
21
- sinon.restore();
22
- fsExtra.emptyDirSync(testHelpers_spec_1.tempDir);
23
- project.dispose();
24
- });
25
- describe('on', () => {
26
- it('emits events', async () => {
27
- const stub = sinon.stub();
28
- const off = project.on('diagnostics', stub);
29
- await project['emit']('diagnostics', { diagnostics: [] });
30
- (0, chai_1.expect)(stub.callCount).to.eql(1);
31
- await project['emit']('diagnostics', { diagnostics: [] });
32
- (0, chai_1.expect)(stub.callCount).to.eql(2);
33
- off();
34
- await project['emit']('diagnostics', { diagnostics: [] });
35
- (0, chai_1.expect)(stub.callCount).to.eql(2);
36
- });
37
- });
38
- describe('validate', () => {
39
- it('prevents multiple valiations from running at the same time', async () => {
40
- //create 10 scopes, which should each take at least 1ms to validate
41
- for (let i = 0; i < 20; i++) {
42
- fsExtra.outputFileSync(`${testHelpers_spec_1.rootDir}/components/component${i}.xml`, `<component name="component${i}"></component>`);
43
- }
44
- await project.activate({
45
- projectKey: testHelpers_spec_1.rootDir,
46
- projectDir: testHelpers_spec_1.rootDir,
47
- bsconfigPath: undefined,
48
- workspaceFolder: testHelpers_spec_1.rootDir,
49
- enableThreading: false
50
- });
51
- //explicitly trigger and wait for the first validation
52
- await project.validate();
53
- let validationCount = 0;
54
- let maxValidationCount = 0;
55
- //force validation cycles to yield very frequently
56
- project['builder'].program['validationMinSyncDuration'] = 0.001;
57
- project['builder'].program.plugins.add({
58
- name: 'Test',
59
- beforeProgramValidate: () => {
60
- validationCount++;
61
- maxValidationCount = Math.max(maxValidationCount, validationCount);
62
- },
63
- afterProgramValidate: () => {
64
- validationCount--;
65
- }
66
- });
67
- //very small threshold so every validation step will yield
68
- project['builder'].program['validationMinSyncDuration'] = 0.001;
69
- sinon.stub(Scope_1.Scope.prototype, 'validate').callsFake(() => {
70
- //each of these needs to take about 1ms to complete
71
- const startTime = Date.now();
72
- while (Date.now() - startTime < 2) { }
73
- });
74
- //validate 3 times in quick succession
75
- await Promise.all([
76
- project.validate(),
77
- project.validate(),
78
- project.validate()
79
- ]);
80
- (0, chai_1.expect)(validationCount).to.eql(0);
81
- (0, chai_1.expect)(maxValidationCount).to.eql(1);
82
- });
83
- });
84
- describe('dispose', () => {
85
- it('cancels in-flight validation on dispose', async () => {
86
- await project.activate({
87
- projectKey: testHelpers_spec_1.rootDir,
88
- projectDir: testHelpers_spec_1.rootDir,
89
- bsconfigPath: undefined,
90
- workspaceFolder: testHelpers_spec_1.rootDir,
91
- enableThreading: false
92
- });
93
- const cancelSpy = sinon.spy(project, 'cancelValidate');
94
- //start a validation (don't await it)
95
- const validatePromise = project.validate();
96
- //dispose mid-validation
97
- project.dispose();
98
- (0, chai_1.expect)(cancelSpy.called).to.be.true;
99
- //the validate promise should still resolve (not hang)
100
- await validatePromise;
101
- });
102
- });
103
- describe('activate', () => {
104
- it('uses `files` from bsconfig.json', async () => {
105
- fsExtra.outputJsonSync(`${testHelpers_spec_1.rootDir}/bsconfig.json`, {
106
- rootDir: testHelpers_spec_1.rootDir,
107
- files: [{
108
- src: (0, util_1.standardizePath) `${testHelpers_spec_1.tempDir}/lib1.brs`,
109
- dest: 'source/lib1.brs'
110
- }]
111
- });
112
- fsExtra.outputFileSync(`${testHelpers_spec_1.tempDir}/lib1.brs`, `
113
- sub main()
114
- print alpha 'this var doesn't exist
115
- end sub
116
- `);
117
- await project.activate({
118
- projectDir: testHelpers_spec_1.rootDir,
119
- projectKey: undefined,
120
- workspaceFolder: undefined,
121
- bsconfigPath: undefined
122
- });
123
- await project.validate();
124
- (0, testHelpers_spec_1.expectDiagnostics)(project, [
125
- DiagnosticMessages_1.DiagnosticMessages.cannotFindName('alpha').message
126
- ]);
127
- });
128
- it('prevents creating package on first run', async () => {
129
- await project.activate({
130
- projectDir: testHelpers_spec_1.rootDir,
131
- projectKey: undefined,
132
- workspaceFolder: undefined,
133
- bsconfigPath: undefined
134
- });
135
- (0, chai_1.expect)(project['builder'].program.options.copyToStaging).to.be.false;
136
- });
137
- });
138
- describe('applyFileChanges', () => {
139
- it('skips setting the file if the contents have not changed', async () => {
140
- await project.activate({
141
- projectDir: testHelpers_spec_1.rootDir,
142
- projectKey: undefined,
143
- workspaceFolder: undefined,
144
- bsconfigPath: undefined
145
- });
146
- //initial set should be true
147
- (0, chai_1.expect)((await project.applyFileChanges([{
148
- fileContents: 'sub main:end sub',
149
- srcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.brs`,
150
- type: 'set'
151
- }]))[0].status).to.eql('accepted');
152
- //contents haven't changed, this should be false
153
- (0, chai_1.expect)((await project.applyFileChanges([{
154
- fileContents: 'sub main:end sub',
155
- srcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.brs`,
156
- type: 'set'
157
- }]))[0].status).to.eql('accepted');
158
- //contents changed again, should be true
159
- (0, chai_1.expect)((await project.applyFileChanges([{
160
- fileContents: 'sub main2:end sub',
161
- srcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.brs`,
162
- type: 'set'
163
- }]))[0].status).to.eql('accepted');
164
- });
165
- it('always includes a status', async () => {
166
- await project.activate({
167
- projectDir: testHelpers_spec_1.rootDir,
168
- projectKey: undefined,
169
- workspaceFolder: undefined,
170
- bsconfigPath: undefined
171
- });
172
- project['builder'].options.files = [
173
- 'source/**/*',
174
- '!source/**/*.spec.bs'
175
- ];
176
- //set file that maches files array
177
- (0, chai_1.expect)((await project['applyFileChanges']([{
178
- fileContents: '',
179
- srcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`,
180
- type: 'set'
181
- }]))[0].status).to.eql('accepted');
182
- //delete this file that matches a file in the program
183
- (0, chai_1.expect)((await project['applyFileChanges']([{
184
- srcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`,
185
- type: 'delete'
186
- }]))[0].status).to.eql('accepted');
187
- //set file that does not match files array files array
188
- (0, chai_1.expect)((await project['applyFileChanges']([{
189
- fileContents: '',
190
- srcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.spec.bs`,
191
- type: 'set'
192
- }]))[0].status).to.eql('rejected');
193
- //delete directory is "reject" because those should be unraveled into individual files on the outside
194
- (0, chai_1.expect)((await project['applyFileChanges']([{
195
- srcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source`,
196
- type: 'delete'
197
- }]))[0].status).to.eql('rejected');
198
- });
199
- });
200
- describe('getFileRenameEdits', () => {
201
- async function activateBareProject() {
202
- await project.activate({
203
- projectDir: testHelpers_spec_1.rootDir,
204
- projectKey: undefined,
205
- workspaceFolder: undefined,
206
- bsconfigPath: undefined
207
- });
208
- }
209
- it('rewrites a pkg:/ import that points at the renamed file', async () => {
210
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`, '');
211
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`, `import "pkg:/source/lib.bs"`);
212
- await activateBareProject();
213
- const edits = await project.getFileRenameEdits({
214
- oldSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`,
215
- newSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib2.bs`
216
- });
217
- (0, chai_1.expect)(edits).to.have.lengthOf(1);
218
- (0, chai_1.expect)(edits[0].uri).to.eql(util_1.default.pathToUri((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`));
219
- (0, chai_1.expect)(edits[0].newText).to.eql('pkg:/source/lib2.bs');
220
- });
221
- it('rewrites a relative import to a same-folder rename', async () => {
222
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`, '');
223
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`, `import "lib.bs"`);
224
- await activateBareProject();
225
- const edits = await project.getFileRenameEdits({
226
- oldSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`,
227
- newSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib2.bs`
228
- });
229
- (0, chai_1.expect)(edits).to.have.lengthOf(1);
230
- (0, chai_1.expect)(edits[0].newText).to.eql('lib2.bs');
231
- });
232
- it('rewrites a relative import that crosses folders', async () => {
233
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`, '');
234
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/components/main.bs`, `import "../source/lib.bs"`);
235
- await activateBareProject();
236
- const edits = await project.getFileRenameEdits({
237
- oldSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`,
238
- newSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/utils/lib.bs`
239
- });
240
- (0, chai_1.expect)(edits).to.have.lengthOf(1);
241
- (0, chai_1.expect)(edits[0].newText).to.eql('../utils/lib.bs');
242
- });
243
- it('returns no edits when no file imports the renamed file', async () => {
244
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`, '');
245
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`, `sub main():end sub`);
246
- await activateBareProject();
247
- const edits = await project.getFileRenameEdits({
248
- oldSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`,
249
- newSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib2.bs`
250
- });
251
- (0, chai_1.expect)(edits).to.be.empty;
252
- });
253
- it('returns no edits when the renamed file is not in this project', async () => {
254
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`, `import "pkg:/source/lib.bs"`);
255
- await activateBareProject();
256
- const edits = await project.getFileRenameEdits({
257
- oldSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/notInProject.bs`,
258
- newSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/notInProject2.bs`
259
- });
260
- (0, chai_1.expect)(edits).to.be.empty;
261
- });
262
- it('produces an edit range that excludes the surrounding quotes', async () => {
263
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`, '');
264
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`, `import "lib.bs"`);
265
- await activateBareProject();
266
- const edits = await project.getFileRenameEdits({
267
- oldSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`,
268
- newSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib2.bs`
269
- });
270
- (0, chai_1.expect)(edits).to.have.lengthOf(1);
271
- //the file content is exactly: import "lib.bs"
272
- //the path token starts at character 8 (the `l`) and ends at character 14 (after the `s` of `bs`)
273
- (0, chai_1.expect)(edits[0].range.start.character).to.eql(8);
274
- (0, chai_1.expect)(edits[0].range.end.character).to.eql(14);
275
- });
276
- it('rewrites a relative <script uri> tag in an xml file', async () => {
277
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/components/widget.brs`, '');
278
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/components/widget.xml`, `<?xml version="1.0" encoding="utf-8"?>
279
- <component name="Widget" extends="Group">
280
- <script type="text/brightscript" uri="widget.brs" />
281
- </component>`);
282
- await activateBareProject();
283
- const edits = await project.getFileRenameEdits({
284
- oldSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/components/widget.brs`,
285
- newSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/components/widget2.brs`
286
- });
287
- (0, chai_1.expect)(edits).to.have.lengthOf(1);
288
- (0, chai_1.expect)(edits[0].uri).to.eql(util_1.default.pathToUri((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/components/widget.xml`));
289
- (0, chai_1.expect)(edits[0].newText).to.eql('widget2.brs');
290
- });
291
- it('rewrites a pkg:/ <script uri> tag in an xml file', async () => {
292
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/util.brs`, '');
293
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/components/widget.xml`, `<?xml version="1.0" encoding="utf-8"?>
294
- <component name="Widget" extends="Group">
295
- <script type="text/brightscript" uri="pkg:/source/util.brs" />
296
- </component>`);
297
- await activateBareProject();
298
- const edits = await project.getFileRenameEdits({
299
- oldSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/util.brs`,
300
- newSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/utility.brs`
301
- });
302
- (0, chai_1.expect)(edits).to.have.lengthOf(1);
303
- (0, chai_1.expect)(edits[0].newText).to.eql('pkg:/source/utility.brs');
304
- });
305
- it('emits both the import-statement edit and the xml script-tag edit when both reference the renamed file', async () => {
306
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`, '');
307
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`, `import "pkg:/source/lib.bs"`);
308
- fsExtra.outputFileSync((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/components/widget.xml`, `<?xml version="1.0" encoding="utf-8"?>
309
- <component name="Widget" extends="Group">
310
- <script type="text/brightscript" uri="pkg:/source/lib.bs" />
311
- </component>`);
312
- await activateBareProject();
313
- const edits = await project.getFileRenameEdits({
314
- oldSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib.bs`,
315
- newSrcPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/lib2.bs`
316
- });
317
- (0, chai_1.expect)(edits).to.have.lengthOf(2);
318
- const editsByUri = new Map(edits.map(e => [e.uri, e.newText]));
319
- (0, chai_1.expect)(editsByUri.get(util_1.default.pathToUri((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/source/main.bs`))).to.eql('pkg:/source/lib2.bs');
320
- (0, chai_1.expect)(editsByUri.get(util_1.default.pathToUri((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/components/widget.xml`))).to.eql('pkg:/source/lib2.bs');
321
- });
322
- });
323
- describe('activate', () => {
324
- it('finds bsconfig.json at root', async () => {
325
- fsExtra.outputFileSync(`${testHelpers_spec_1.rootDir}/bsconfig.json`, '');
326
- await project.activate({
327
- projectDir: testHelpers_spec_1.rootDir,
328
- projectKey: undefined,
329
- workspaceFolder: undefined,
330
- bsconfigPath: undefined
331
- });
332
- (0, chai_1.expect)(project.bsconfigPath).to.eql((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/bsconfig.json`);
333
- });
334
- it('produces diagnostics after running', async () => {
335
- fsExtra.outputFileSync(`${testHelpers_spec_1.rootDir}/source/main.brs`, `
336
- sub main()
337
- print varNotThere
338
- end sub
339
- `);
340
- await project.activate({
341
- projectDir: testHelpers_spec_1.rootDir,
342
- projectKey: undefined,
343
- workspaceFolder: undefined,
344
- bsconfigPath: undefined
345
- });
346
- await project.validate();
347
- await (0, testHelpers_spec_1.expectDiagnosticsAsync)(project, [
348
- DiagnosticMessages_1.DiagnosticMessages.cannotFindName('varNotThere').message
349
- ]);
350
- });
351
- });
352
- describe('createProject', () => {
353
- it('uses given projectNumber', async () => {
354
- await project.activate({
355
- projectDir: testHelpers_spec_1.rootDir,
356
- projectNumber: 123,
357
- projectKey: undefined,
358
- workspaceFolder: undefined,
359
- bsconfigPath: undefined
360
- });
361
- (0, chai_1.expect)(project.projectNumber).to.eql(123);
362
- });
363
- it('warns about deprecated brsconfig.json', async () => {
364
- fsExtra.outputFileSync(`${testHelpers_spec_1.rootDir}/subdir1/brsconfig.json`, '');
365
- await project.activate({
366
- bsconfigPath: 'subdir1/brsconfig.json',
367
- projectDir: testHelpers_spec_1.rootDir,
368
- workspaceFolder: testHelpers_spec_1.rootDir,
369
- projectKey: undefined
370
- });
371
- await (0, testHelpers_spec_1.expectDiagnosticsAsync)(project, [
372
- DiagnosticMessages_1.DiagnosticMessages.brsConfigJsonIsDeprecated()
373
- ]);
374
- });
375
- });
376
- describe('getConfigPath', () => {
377
- it('emits critical failure for missing file', async () => {
378
- const deferred = new deferred_1.Deferred();
379
- project.on('critical-failure', (event) => {
380
- deferred.resolve(event.message);
381
- });
382
- await project['getConfigFilePath']({
383
- projectDir: testHelpers_spec_1.rootDir,
384
- bsconfigPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/bsconfig.json`
385
- });
386
- (0, chai_1.expect)((await deferred.promise).startsWith('Cannot find config file')).to.be.true;
387
- });
388
- it('finds brsconfig.json', async () => {
389
- fsExtra.outputFileSync(`${testHelpers_spec_1.rootDir}/brsconfig.json`, '');
390
- (0, chai_1.expect)(await project['getConfigFilePath']({
391
- projectDir: testHelpers_spec_1.rootDir,
392
- bsconfigPath: undefined
393
- })).to.eql((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/brsconfig.json`);
394
- });
395
- it('does not crash on undefined', async () => {
396
- await project['getConfigFilePath'](undefined);
397
- });
398
- });
399
- });
400
- //# sourceMappingURL=Project.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Project.spec.js","sourceRoot":"","sources":["../../src/lsp/Project.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};