brighterscript 0.41.6 → 0.44.0

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 (180) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/dist/Cache.d.ts +3 -3
  3. package/dist/Cache.js +10 -6
  4. package/dist/Cache.js.map +1 -1
  5. package/dist/LanguageServer.d.ts +1 -6
  6. package/dist/LanguageServer.js +0 -9
  7. package/dist/LanguageServer.js.map +1 -1
  8. package/dist/PluginInterface.d.ts +3 -3
  9. package/dist/PluginInterface.js +3 -0
  10. package/dist/PluginInterface.js.map +1 -1
  11. package/dist/Program.d.ts +48 -19
  12. package/dist/Program.js +160 -60
  13. package/dist/Program.js.map +1 -1
  14. package/dist/ProgramBuilder.js +3 -3
  15. package/dist/ProgramBuilder.js.map +1 -1
  16. package/dist/Scope.d.ts +6 -5
  17. package/dist/Scope.js +18 -14
  18. package/dist/Scope.js.map +1 -1
  19. package/dist/astUtils/AstEditor.d.ts +27 -0
  20. package/dist/astUtils/AstEditor.js +97 -0
  21. package/dist/astUtils/AstEditor.js.map +1 -0
  22. package/dist/{bscPlugin/semanticTokens/SemanticTokensProcessor.spec.d.ts → astUtils/AstEditor.spec.d.ts} +0 -0
  23. package/dist/astUtils/AstEditor.spec.js +133 -0
  24. package/dist/astUtils/AstEditor.spec.js.map +1 -0
  25. package/dist/astUtils/reflection.d.ts +2 -1
  26. package/dist/astUtils/reflection.js +6 -2
  27. package/dist/astUtils/reflection.js.map +1 -1
  28. package/dist/astUtils/reflection.spec.js +6 -6
  29. package/dist/astUtils/reflection.spec.js.map +1 -1
  30. package/dist/astUtils/visitors.spec.js +13 -16
  31. package/dist/astUtils/visitors.spec.js.map +1 -1
  32. package/dist/bscPlugin/BscPlugin.js +5 -2
  33. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  34. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +3 -3
  35. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  36. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +2 -0
  37. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  38. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +8 -0
  39. package/dist/bscPlugin/semanticTokens/{SemanticTokensProcessor.js → BrsFileSemanticTokensProcessor.js} +12 -14
  40. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -0
  41. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.d.ts +1 -0
  42. package/dist/bscPlugin/semanticTokens/{SemanticTokensProcessor.spec.js → BrsFileSemanticTokensProcessor.spec.js} +2 -2
  43. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -0
  44. package/dist/files/BrsFile.Class.spec.js +182 -78
  45. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  46. package/dist/files/BrsFile.d.ts +18 -7
  47. package/dist/files/BrsFile.js +118 -71
  48. package/dist/files/BrsFile.js.map +1 -1
  49. package/dist/files/BrsFile.spec.js +185 -107
  50. package/dist/files/BrsFile.spec.js.map +1 -1
  51. package/dist/files/XmlFile.d.ts +6 -0
  52. package/dist/files/XmlFile.js +15 -9
  53. package/dist/files/XmlFile.js.map +1 -1
  54. package/dist/files/XmlFile.spec.js +44 -40
  55. package/dist/files/XmlFile.spec.js.map +1 -1
  56. package/dist/files/tests/imports.spec.js +6 -4
  57. package/dist/files/tests/imports.spec.js.map +1 -1
  58. package/dist/globalCallables.d.ts +3 -1
  59. package/dist/globalCallables.js +200 -100
  60. package/dist/globalCallables.js.map +1 -1
  61. package/dist/index.d.ts +12 -3
  62. package/dist/index.js +21 -4
  63. package/dist/index.js.map +1 -1
  64. package/dist/interfaces.d.ts +73 -7
  65. package/dist/lexer/Lexer.js +1 -2
  66. package/dist/lexer/Lexer.js.map +1 -1
  67. package/dist/lexer/Lexer.spec.js +462 -462
  68. package/dist/lexer/Lexer.spec.js.map +1 -1
  69. package/dist/parser/Expression.d.ts +1 -1
  70. package/dist/parser/Expression.js +10 -10
  71. package/dist/parser/Expression.js.map +1 -1
  72. package/dist/parser/Parser.Class.spec.js +32 -31
  73. package/dist/parser/Parser.Class.spec.js.map +1 -1
  74. package/dist/parser/Parser.d.ts +13 -1
  75. package/dist/parser/Parser.js +355 -253
  76. package/dist/parser/Parser.js.map +1 -1
  77. package/dist/parser/Parser.spec.js +86 -24
  78. package/dist/parser/Parser.spec.js.map +1 -1
  79. package/dist/parser/Statement.d.ts +2 -2
  80. package/dist/parser/Statement.js +8 -8
  81. package/dist/parser/Statement.js.map +1 -1
  82. package/dist/parser/Statement.spec.js +4 -4
  83. package/dist/parser/Statement.spec.js.map +1 -1
  84. package/dist/parser/tests/Parser.spec.d.ts +3 -3
  85. package/dist/parser/tests/Parser.spec.js +4 -4
  86. package/dist/parser/tests/Parser.spec.js.map +1 -1
  87. package/dist/parser/tests/controlFlow/For.spec.js +40 -40
  88. package/dist/parser/tests/controlFlow/For.spec.js.map +1 -1
  89. package/dist/parser/tests/controlFlow/ForEach.spec.js +22 -21
  90. package/dist/parser/tests/controlFlow/ForEach.spec.js.map +1 -1
  91. package/dist/parser/tests/controlFlow/If.spec.js +100 -99
  92. package/dist/parser/tests/controlFlow/If.spec.js.map +1 -1
  93. package/dist/parser/tests/controlFlow/While.spec.js +25 -25
  94. package/dist/parser/tests/controlFlow/While.spec.js.map +1 -1
  95. package/dist/parser/tests/expression/Additive.spec.js +21 -21
  96. package/dist/parser/tests/expression/Additive.spec.js.map +1 -1
  97. package/dist/parser/tests/expression/ArrayLiterals.spec.js +91 -91
  98. package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +1 -1
  99. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +102 -102
  100. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +1 -1
  101. package/dist/parser/tests/expression/Boolean.spec.js +15 -15
  102. package/dist/parser/tests/expression/Boolean.spec.js.map +1 -1
  103. package/dist/parser/tests/expression/Call.spec.js +22 -21
  104. package/dist/parser/tests/expression/Call.spec.js.map +1 -1
  105. package/dist/parser/tests/expression/Exponential.spec.js +11 -11
  106. package/dist/parser/tests/expression/Exponential.spec.js.map +1 -1
  107. package/dist/parser/tests/expression/Function.spec.js +171 -171
  108. package/dist/parser/tests/expression/Function.spec.js.map +1 -1
  109. package/dist/parser/tests/expression/Indexing.spec.js +50 -50
  110. package/dist/parser/tests/expression/Indexing.spec.js.map +1 -1
  111. package/dist/parser/tests/expression/Multiplicative.spec.js +25 -25
  112. package/dist/parser/tests/expression/Multiplicative.spec.js.map +1 -1
  113. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +16 -16
  114. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
  115. package/dist/parser/tests/expression/PrefixUnary.spec.js +26 -26
  116. package/dist/parser/tests/expression/PrefixUnary.spec.js.map +1 -1
  117. package/dist/parser/tests/expression/Primary.spec.js +27 -27
  118. package/dist/parser/tests/expression/Primary.spec.js.map +1 -1
  119. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +3 -2
  120. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -1
  121. package/dist/parser/tests/expression/Relational.spec.js +25 -25
  122. package/dist/parser/tests/expression/Relational.spec.js.map +1 -1
  123. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +7 -7
  124. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
  125. package/dist/parser/tests/expression/TernaryExpression.spec.js +6 -6
  126. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
  127. package/dist/parser/tests/statement/AssignmentOperators.spec.js +15 -15
  128. package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +1 -1
  129. package/dist/parser/tests/statement/Declaration.spec.js +20 -20
  130. package/dist/parser/tests/statement/Declaration.spec.js.map +1 -1
  131. package/dist/parser/tests/statement/Function.spec.js +121 -120
  132. package/dist/parser/tests/statement/Function.spec.js.map +1 -1
  133. package/dist/parser/tests/statement/Goto.spec.js +9 -8
  134. package/dist/parser/tests/statement/Goto.spec.js.map +1 -1
  135. package/dist/parser/tests/statement/Increment.spec.js +22 -22
  136. package/dist/parser/tests/statement/Increment.spec.js.map +1 -1
  137. package/dist/parser/tests/statement/InterfaceStatement.spec.js +12 -0
  138. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
  139. package/dist/parser/tests/statement/LibraryStatement.spec.js +7 -7
  140. package/dist/parser/tests/statement/LibraryStatement.spec.js.map +1 -1
  141. package/dist/parser/tests/statement/Misc.spec.js +71 -70
  142. package/dist/parser/tests/statement/Misc.spec.js.map +1 -1
  143. package/dist/parser/tests/statement/PrintStatement.spec.js +17 -17
  144. package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
  145. package/dist/parser/tests/statement/ReturnStatement.spec.js +33 -33
  146. package/dist/parser/tests/statement/ReturnStatement.spec.js.map +1 -1
  147. package/dist/parser/tests/statement/Set.spec.js +53 -53
  148. package/dist/parser/tests/statement/Set.spec.js.map +1 -1
  149. package/dist/parser/tests/statement/Stop.spec.js +7 -6
  150. package/dist/parser/tests/statement/Stop.spec.js.map +1 -1
  151. package/dist/preprocessor/Chunk.d.ts +1 -1
  152. package/dist/preprocessor/Preprocessor.d.ts +1 -1
  153. package/dist/preprocessor/Preprocessor.js +7 -7
  154. package/dist/preprocessor/Preprocessor.js.map +1 -1
  155. package/dist/types/FunctionType.d.ts +2 -2
  156. package/dist/types/FunctionType.js +3 -3
  157. package/dist/types/FunctionType.js.map +1 -1
  158. package/dist/types/FunctionType.spec.js +2 -2
  159. package/dist/types/FunctionType.spec.js.map +1 -1
  160. package/dist/util.d.ts +17 -1
  161. package/dist/util.js +59 -29
  162. package/dist/util.js.map +1 -1
  163. package/dist/validators/ClassValidator.js +20 -27
  164. package/dist/validators/ClassValidator.js.map +1 -1
  165. package/package.json +2 -1
  166. package/dist/astUtils/index.d.ts +0 -7
  167. package/dist/astUtils/index.js +0 -26
  168. package/dist/astUtils/index.js.map +0 -1
  169. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.d.ts +0 -7
  170. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.js.map +0 -1
  171. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.spec.js.map +0 -1
  172. package/dist/lexer/index.d.ts +0 -3
  173. package/dist/lexer/index.js +0 -18
  174. package/dist/lexer/index.js.map +0 -1
  175. package/dist/parser/index.d.ts +0 -3
  176. package/dist/parser/index.js +0 -16
  177. package/dist/parser/index.js.map +0 -1
  178. package/dist/preprocessor/index.d.ts +0 -3
  179. package/dist/preprocessor/index.js +0 -16
  180. package/dist/preprocessor/index.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrsFileSemanticTokensProcessor.spec.js","sourceRoot":"","sources":["../../../src/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,mFAAoE;AAEpE,2CAAwC;AACxC,6DAA+D;AAC/D,qCAAwD;AAExD,MAAM,OAAO,GAAG,IAAA,sBAAC,EAAA,GAAG,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC;AAEjD,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC5C,IAAI,OAAgB,CAAC;IACrB,UAAU,CAAC,GAAG,EAAE;QACZ,OAAO,GAAG,IAAI,iBAAO,CAAC;YAClB,OAAO,EAAE,OAAO;SACnB,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,GAAG,EAAE;QACX,OAAO,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACtC,MAAM,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAU,gBAAgB,EAAE;;;;;;;;;;SAUhE,CAAC,CAAC;QACH,OAAO,CAAC,QAAQ,EAAE,CAAC;QACnB,IAAA,wCAAqB,EAAC,OAAO,CAAC,CAAC;QAC/B,IAAA,aAAM,EACF,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAC/C,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;gBACN,KAAK,EAAE,WAAI,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,SAAS,EAAE,mDAAkB,CAAC,SAAS;aAC1C,EAAE;gBACC,KAAK,EAAE,WAAI,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,SAAS,EAAE,mDAAkB,CAAC,SAAS;aAC1C,EAAE;gBACC,KAAK,EAAE,WAAI,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,SAAS,EAAE,mDAAkB,CAAC,KAAK;aACtC,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -50,7 +50,6 @@ describe('BrsFile BrighterScript classes', () => {
50
50
  //if no exception was thrown, this test passes
51
51
  });
52
52
  it('catches child class missing super call in constructor', () => {
53
- var _a;
54
53
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
55
54
  class Person
56
55
  sub new()
@@ -62,10 +61,11 @@ describe('BrsFile BrighterScript classes', () => {
62
61
  end class
63
62
  `);
64
63
  program.validate();
65
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.classConstructorMissingSuperCall().message);
64
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
65
+ DiagnosticMessages_1.DiagnosticMessages.classConstructorMissingSuperCall()
66
+ ]);
66
67
  });
67
68
  it('access modifier is option for override', () => {
68
- var _a;
69
69
  let file = program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
70
70
  class Animal
71
71
  sub move()
@@ -78,13 +78,12 @@ describe('BrsFile BrighterScript classes', () => {
78
78
  end class
79
79
  `);
80
80
  program.validate();
81
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).not.to.exist;
81
+ (0, testHelpers_spec_1.expectZeroDiagnostics)(program);
82
82
  let duckClass = file.parser.references.classStatements.find(x => x.name.text.toLowerCase() === 'duck');
83
83
  (0, chai_1.expect)(duckClass).to.exist;
84
84
  (0, chai_1.expect)(duckClass.memberMap['move']).to.exist;
85
85
  });
86
86
  it('supports various namespace configurations', () => {
87
- var _a;
88
87
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
89
88
  class Animal
90
89
  sub new()
@@ -105,11 +104,10 @@ describe('BrsFile BrighterScript classes', () => {
105
104
  end namespace
106
105
  `);
107
106
  program.validate();
108
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).not.to.exist;
107
+ (0, testHelpers_spec_1.expectZeroDiagnostics)(program);
109
108
  });
110
109
  describe('super', () => {
111
110
  it('always requires super call in child constructor', () => {
112
- var _a;
113
111
  program.addOrReplaceFile('source/main.bs', `
114
112
  class Bird
115
113
  end class
@@ -119,10 +117,11 @@ describe('BrsFile BrighterScript classes', () => {
119
117
  end class
120
118
  `);
121
119
  program.validate();
122
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.eql(DiagnosticMessages_1.DiagnosticMessages.classConstructorMissingSuperCall().message);
120
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
121
+ DiagnosticMessages_1.DiagnosticMessages.classConstructorMissingSuperCall()
122
+ ]);
123
123
  });
124
124
  it('requires super call in child when parent has own `new` method', () => {
125
- var _a;
126
125
  program.addOrReplaceFile('source/main.bs', `
127
126
  class Bird
128
127
  sub new()
@@ -134,10 +133,11 @@ describe('BrsFile BrighterScript classes', () => {
134
133
  end class
135
134
  `);
136
135
  program.validate();
137
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.eql(DiagnosticMessages_1.DiagnosticMessages.classConstructorMissingSuperCall().message);
136
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
137
+ DiagnosticMessages_1.DiagnosticMessages.classConstructorMissingSuperCall()
138
+ ]);
138
139
  });
139
140
  it('allows non-`m` expressions and statements before the super call', () => {
140
- var _a;
141
141
  program.addOrReplaceFile('source/main.bs', `
142
142
  class Bird
143
143
  sub new(name)
@@ -153,7 +153,7 @@ describe('BrsFile BrighterScript classes', () => {
153
153
  end class
154
154
  `);
155
155
  program.validate();
156
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.be.undefined;
156
+ (0, testHelpers_spec_1.expectZeroDiagnostics)(program);
157
157
  });
158
158
  it('allows non-`m` expressions and statements before the super call', () => {
159
159
  program.addOrReplaceFile('source/main.bs', `
@@ -169,13 +169,7 @@ describe('BrsFile BrighterScript classes', () => {
169
169
  end class
170
170
  `);
171
171
  program.validate();
172
- (0, chai_1.expect)(program.getDiagnostics().map(x => ({ message: x.message, range: x.range }))).to.eql([{
173
- message: DiagnosticMessages_1.DiagnosticMessages.classConstructorIllegalUseOfMBeforeSuperCall().message,
174
- range: vscode_languageserver_1.Range.create(7, 24, 7, 25)
175
- }, {
176
- message: DiagnosticMessages_1.DiagnosticMessages.classConstructorIllegalUseOfMBeforeSuperCall().message,
177
- range: vscode_languageserver_1.Range.create(7, 33, 7, 34)
178
- }]);
172
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.classConstructorIllegalUseOfMBeforeSuperCall()), { range: vscode_languageserver_1.Range.create(7, 24, 7, 25) }), Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.classConstructorIllegalUseOfMBeforeSuperCall()), { range: vscode_languageserver_1.Range.create(7, 33, 7, 34) })]);
179
173
  });
180
174
  });
181
175
  describe('transpile', () => {
@@ -660,8 +654,7 @@ describe('BrsFile BrighterScript classes', () => {
660
654
  });
661
655
  });
662
656
  it('detects using `new` keyword on non-classes', () => {
663
- var _a;
664
- program.addOrReplaceFile({ src: `${rootDir}/source/main.brs`, dest: 'source/main.brs' }, `
657
+ program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.brs' }, `
665
658
  sub quack()
666
659
  end sub
667
660
  sub main()
@@ -669,11 +662,12 @@ describe('BrsFile BrighterScript classes', () => {
669
662
  end sub
670
663
  `);
671
664
  program.validate();
672
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.expressionIsNotConstructable('sub').message);
665
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
666
+ DiagnosticMessages_1.DiagnosticMessages.expressionIsNotConstructable('sub')
667
+ ]);
673
668
  });
674
669
  it('detects missing call to super', () => {
675
- var _a;
676
- program.addOrReplaceFile({ src: `${rootDir}/source/main.brs`, dest: 'source/main.brs' }, `
670
+ program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.brs' }, `
677
671
  class Animal
678
672
  sub new()
679
673
  end sub
@@ -684,10 +678,11 @@ describe('BrsFile BrighterScript classes', () => {
684
678
  end class
685
679
  `);
686
680
  program.validate();
687
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.classConstructorMissingSuperCall().message);
681
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
682
+ DiagnosticMessages_1.DiagnosticMessages.classConstructorMissingSuperCall()
683
+ ]);
688
684
  });
689
685
  it.skip('detects calls to unknown m methods', () => {
690
- var _a;
691
686
  program.addOrReplaceFile({ src: `${rootDir}/source/main.brs`, dest: 'source/main.brs' }, `
692
687
  class Animal
693
688
  sub new()
@@ -696,7 +691,9 @@ describe('BrsFile BrighterScript classes', () => {
696
691
  end class
697
692
  `);
698
693
  program.validate();
699
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.methodDoesNotExistOnType('methodThatDoesNotExist', 'Animal'));
694
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
695
+ DiagnosticMessages_1.DiagnosticMessages.methodDoesNotExistOnType('methodThatDoesNotExist', 'Animal')
696
+ ]);
700
697
  });
701
698
  it('detects duplicate member names', () => {
702
699
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
@@ -713,15 +710,7 @@ describe('BrsFile BrighterScript classes', () => {
713
710
  end class
714
711
  `);
715
712
  program.validate();
716
- let diagnostics = program.getDiagnostics().map(x => {
717
- return {
718
- code: x.code,
719
- message: x.message,
720
- range: x.range,
721
- severity: vscode_languageserver_1.DiagnosticSeverity.Error
722
- };
723
- });
724
- (0, chai_1.expect)(diagnostics).to.eql([Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.duplicateIdentifier('name')), { range: vscode_languageserver_1.Range.create(3, 23, 3, 27) }), Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.duplicateIdentifier('name')), { range: vscode_languageserver_1.Range.create(4, 27, 4, 31) }), Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.duplicateIdentifier('age')), { range: vscode_languageserver_1.Range.create(8, 27, 8, 30) }), Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.duplicateIdentifier('age')), { range: vscode_languageserver_1.Range.create(10, 23, 10, 26) })]);
713
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.duplicateIdentifier('name')), { range: vscode_languageserver_1.Range.create(3, 23, 3, 27) }), Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.duplicateIdentifier('name')), { range: vscode_languageserver_1.Range.create(4, 27, 4, 31) }), Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.duplicateIdentifier('age')), { range: vscode_languageserver_1.Range.create(8, 27, 8, 30) }), Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.duplicateIdentifier('age')), { range: vscode_languageserver_1.Range.create(10, 23, 10, 26) })]);
725
714
  });
726
715
  it('detects mismatched member type in child class', () => {
727
716
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
@@ -729,13 +718,15 @@ describe('BrsFile BrighterScript classes', () => {
729
718
  public name
730
719
  end class
731
720
  class Duck extends Animal
732
- public function name()
721
+ public override function name()
733
722
  return "Donald"
734
723
  end function
735
724
  end class
736
725
  `);
737
726
  program.validate();
738
- (0, chai_1.expect)(program.getDiagnostics().map(x => x.message).sort()[0]).to.eql(DiagnosticMessages_1.DiagnosticMessages.classChildMemberDifferentMemberTypeThanAncestor('method', 'field', 'Animal').message);
727
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
728
+ DiagnosticMessages_1.DiagnosticMessages.classChildMemberDifferentMemberTypeThanAncestor('method', 'field', 'Animal')
729
+ ]);
739
730
  });
740
731
  it('allows untyped overridden field in child class', () => {
741
732
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
@@ -775,15 +766,15 @@ describe('BrsFile BrighterScript classes', () => {
775
766
  end class
776
767
  `);
777
768
  program.validate();
778
- (0, chai_1.expect)(program.getDiagnostics().map(x => x.message).sort()).to.eql([
779
- DiagnosticMessages_1.DiagnosticMessages.cannotFindType('Person').message,
780
- DiagnosticMessages_1.DiagnosticMessages.childFieldTypeNotAssignableToBaseProperty('Duck', 'Bird', 'age', 'float', 'integer').message,
781
- DiagnosticMessages_1.DiagnosticMessages.childFieldTypeNotAssignableToBaseProperty('Duck', 'Bird', 'name', 'integer', 'string').message,
782
- DiagnosticMessages_1.DiagnosticMessages.childFieldTypeNotAssignableToBaseProperty('Duck', 'Bird', 'owner', 'string', 'Person').message
769
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
770
+ DiagnosticMessages_1.DiagnosticMessages.cannotFindType('Person'),
771
+ DiagnosticMessages_1.DiagnosticMessages.childFieldTypeNotAssignableToBaseProperty('Duck', 'Bird', 'age', 'float', 'integer'),
772
+ DiagnosticMessages_1.DiagnosticMessages.childFieldTypeNotAssignableToBaseProperty('Duck', 'Bird', 'name', 'integer', 'string'),
773
+ DiagnosticMessages_1.DiagnosticMessages.childFieldTypeNotAssignableToBaseProperty('Duck', 'Bird', 'owner', 'string', 'Person')
783
774
  ]);
784
775
  });
785
776
  it('detects overridden methods without override keyword', () => {
786
- program.addOrReplaceFile({ src: `${rootDir}/source/main.brs`, dest: 'source/main.brs' }, `
777
+ program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.brs' }, `
787
778
  class Animal
788
779
  sub speak()
789
780
  end sub
@@ -794,7 +785,9 @@ describe('BrsFile BrighterScript classes', () => {
794
785
  end class
795
786
  `);
796
787
  program.validate();
797
- (0, chai_1.expect)(program.getDiagnostics()[0]).to.exist.and.to.include(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.missingOverrideKeyword('Animal')));
788
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
789
+ DiagnosticMessages_1.DiagnosticMessages.missingOverrideKeyword('Animal')
790
+ ]);
798
791
  });
799
792
  it('detects overridden methods with different visibility', () => {
800
793
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
@@ -816,9 +809,11 @@ describe('BrsFile BrighterScript classes', () => {
816
809
  end class
817
810
  `);
818
811
  program.validate();
819
- (0, chai_1.expect)(program.getDiagnostics()[0]).to.exist.and.to.include(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.mismatchedOverriddenMemberVisibility('Duck', 'speakInPublic', 'private', 'public', 'Animal')));
820
- (0, chai_1.expect)(program.getDiagnostics()[1]).to.exist.and.to.include(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.mismatchedOverriddenMemberVisibility('Duck', 'speakWithFriends', 'public', 'protected', 'Animal')));
821
- (0, chai_1.expect)(program.getDiagnostics()[2]).to.exist.and.to.include(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.mismatchedOverriddenMemberVisibility('Duck', 'speakWithFamily', 'public', 'private', 'Animal')));
812
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
813
+ DiagnosticMessages_1.DiagnosticMessages.mismatchedOverriddenMemberVisibility('Duck', 'speakInPublic', 'private', 'public', 'Animal'),
814
+ DiagnosticMessages_1.DiagnosticMessages.mismatchedOverriddenMemberVisibility('Duck', 'speakWithFriends', 'public', 'protected', 'Animal'),
815
+ DiagnosticMessages_1.DiagnosticMessages.mismatchedOverriddenMemberVisibility('Duck', 'speakWithFamily', 'public', 'private', 'Animal')
816
+ ]);
822
817
  });
823
818
  it('allows overridden methods with matching visibility', () => {
824
819
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
@@ -840,20 +835,95 @@ describe('BrsFile BrighterScript classes', () => {
840
835
  end class
841
836
  `);
842
837
  program.validate();
843
- (0, chai_1.expect)(program.getDiagnostics()).to.be.empty;
838
+ (0, testHelpers_spec_1.expectZeroDiagnostics)(program);
844
839
  });
845
- it('detects extending unknown parent class', () => {
846
- program.addOrReplaceFile('source/main.brs', `
847
- class Duck extends Animal
848
- sub speak()
849
- end sub
850
- end class
851
- `);
852
- program.validate();
853
- (0, chai_1.expect)(program.getDiagnostics()[0]).to.exist.and.to.deep.include(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('Animal', 'source')), { range: vscode_languageserver_1.Range.create(1, 31, 1, 37) }));
840
+ describe('detects unknown parent class', () => {
841
+ it('non-namespaced parent from outside namespace', () => {
842
+ program.addOrReplaceFile('source/main.bs', `
843
+ class Duck extends Animal
844
+ sub speak()
845
+ end sub
846
+ end class
847
+
848
+ namespace Vertibrates
849
+ class Animal
850
+ end class
851
+ end namespace
852
+ `);
853
+ program.validate();
854
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('Animal', 'source')), { range: vscode_languageserver_1.Range.create(1, 35, 1, 41) })]);
855
+ });
856
+ it('non-namespaced parent from within namespace', () => {
857
+ program.addOrReplaceFile('source/main.bs', `
858
+ namespace Vertibrates
859
+ class Duck extends Animal
860
+ sub speak()
861
+ end sub
862
+ end class
863
+ end namespace
864
+ `);
865
+ program.validate();
866
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
867
+ DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('Animal', 'source')
868
+ ]);
869
+ });
870
+ it('non-namespaced name from outside namespace alongside existing namespace', () => {
871
+ program.addOrReplaceFile('source/main.bs', `
872
+ namespace Vertibrates
873
+ class Animal
874
+ end class
875
+ end namespace
876
+
877
+ class Duck extends Animal
878
+ sub speak()
879
+ end sub
880
+ end class
881
+ `);
882
+ program.validate();
883
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
884
+ DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('Animal', 'source')
885
+ ]);
886
+ });
887
+ it('namespaced parent class from outside namespace', () => {
888
+ program.addOrReplaceFile('source/vertibrates.bs', `
889
+ namespace Vertibrates
890
+ class Bird
891
+ end class
892
+ end namespace
893
+ `);
894
+ program.addOrReplaceFile('source/Duck.bs', `
895
+ class Duck extends Vertibrates.GroundedBird
896
+ sub speak()
897
+ end sub
898
+ end class
899
+ `);
900
+ program.validate();
901
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
902
+ DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('Vertibrates.GroundedBird', 'source')
903
+ ]);
904
+ });
905
+ it('namespaced parent class from inside namespace', () => {
906
+ program.addOrReplaceFile('source/vertibrates.bs', `
907
+ namespace Vertibrates
908
+ class Bird
909
+ end class
910
+ end namespace
911
+ `);
912
+ program.addOrReplaceFile('source/Duck.bs', `
913
+ namespace Birdies
914
+ class Duck extends Vertibrates.GroundedBird
915
+ sub speak()
916
+ end sub
917
+ end class
918
+ end namespace
919
+ `);
920
+ program.validate();
921
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
922
+ DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('Vertibrates.GroundedBird', 'source')
923
+ ]);
924
+ });
854
925
  });
855
926
  it('catches newable class without namespace name', () => {
856
- var _a;
857
927
  program.addOrReplaceFile('source/main.bs', `
858
928
  namespace NameA.NameB
859
929
  class Duck
@@ -865,10 +935,11 @@ describe('BrsFile BrighterScript classes', () => {
865
935
  end sub
866
936
  `);
867
937
  program.validate();
868
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('Duck', 'source').message);
938
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
939
+ DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('Duck', 'source')
940
+ ]);
869
941
  });
870
942
  it('supports newable class namespace inference', () => {
871
- var _a;
872
943
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
873
944
  namespace NameA.NameB
874
945
  class Duck
@@ -879,10 +950,9 @@ describe('BrsFile BrighterScript classes', () => {
879
950
  end namespace
880
951
  `);
881
952
  program.validate();
882
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).not.to.exist;
953
+ (0, testHelpers_spec_1.expectZeroDiagnostics)(program);
883
954
  });
884
955
  it('catches extending unknown namespaced class', () => {
885
- var _a;
886
956
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
887
957
  namespace NameA.NameB
888
958
  class Animal
@@ -892,10 +962,11 @@ describe('BrsFile BrighterScript classes', () => {
892
962
  end namespace
893
963
  `);
894
964
  program.validate();
895
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('NameA.NameB.Animal1', 'source').message);
965
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
966
+ DiagnosticMessages_1.DiagnosticMessages.classCouldNotBeFound('NameA.NameB.Animal1', 'source')
967
+ ]);
896
968
  });
897
969
  it('supports omitting namespace prefix for items in same namespace', () => {
898
- var _a;
899
970
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
900
971
  namespace NameA.NameB
901
972
  class Animal
@@ -905,32 +976,35 @@ describe('BrsFile BrighterScript classes', () => {
905
976
  end namespace
906
977
  `);
907
978
  program.validate();
908
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).not.to.exist;
979
+ (0, testHelpers_spec_1.expectZeroDiagnostics)(program);
909
980
  });
910
981
  it('catches duplicate root-level class declarations', () => {
911
- var _a;
912
982
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
913
983
  class Animal
914
984
  end class
915
985
  class Animal
986
+ end class
916
987
  `);
917
988
  program.validate();
918
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.duplicateClassDeclaration('source', 'Animal').message);
989
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
990
+ DiagnosticMessages_1.DiagnosticMessages.duplicateClassDeclaration('source', 'Animal')
991
+ ]);
919
992
  });
920
993
  it('catches duplicate namespace-level class declarations', () => {
921
- var _a;
922
994
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
923
995
  namespace NameA.NameB
924
996
  class Animal
925
997
  end class
926
998
  class Animal
999
+ end class
927
1000
  end namespace
928
1001
  `);
929
1002
  program.validate();
930
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.duplicateClassDeclaration('source', 'NameA.NameB.Animal').message);
1003
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
1004
+ DiagnosticMessages_1.DiagnosticMessages.duplicateClassDeclaration('source', 'NameA.NameB.Animal')
1005
+ ]);
931
1006
  });
932
1007
  it('catches namespaced class name which is the same as a global class', () => {
933
- var _a;
934
1008
  program.addOrReplaceFile({ src: `${rootDir}/source/main.bs`, dest: 'source/main.bs' }, `
935
1009
  namespace NameA.NameB
936
1010
  class Animal
@@ -940,10 +1014,11 @@ describe('BrsFile BrighterScript classes', () => {
940
1014
  end class
941
1015
  `);
942
1016
  program.validate();
943
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.namespacedClassCannotShareNamewithNonNamespacedClass('Animal').message);
1017
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
1018
+ DiagnosticMessages_1.DiagnosticMessages.namespacedClassCannotShareNamewithNonNamespacedClass('Animal').message
1019
+ ]);
944
1020
  });
945
1021
  it('catches class with same name as function', () => {
946
- var _a;
947
1022
  program.addOrReplaceFile('source/main.bs', `
948
1023
  class Animal
949
1024
  end class
@@ -951,10 +1026,11 @@ describe('BrsFile BrighterScript classes', () => {
951
1026
  end sub
952
1027
  `);
953
1028
  program.validate();
954
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.functionCannotHaveSameNameAsClass('Animal').message);
1029
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
1030
+ DiagnosticMessages_1.DiagnosticMessages.functionCannotHaveSameNameAsClass('Animal').message
1031
+ ]);
955
1032
  });
956
1033
  it('catches class with same name (but different case) as function', () => {
957
- var _a;
958
1034
  program.addOrReplaceFile('source/main.bs', `
959
1035
  class ANIMAL
960
1036
  end class
@@ -962,10 +1038,11 @@ describe('BrsFile BrighterScript classes', () => {
962
1038
  end sub
963
1039
  `);
964
1040
  program.validate();
965
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.functionCannotHaveSameNameAsClass('animal').message);
1041
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
1042
+ DiagnosticMessages_1.DiagnosticMessages.functionCannotHaveSameNameAsClass('animal').message
1043
+ ]);
966
1044
  });
967
1045
  it('catches variable with same name as class', () => {
968
- var _a;
969
1046
  program.addOrReplaceFile('source/main.bs', `
970
1047
  class Animal
971
1048
  end class
@@ -974,7 +1051,9 @@ describe('BrsFile BrighterScript classes', () => {
974
1051
  end sub
975
1052
  `);
976
1053
  program.validate();
977
- (0, chai_1.expect)((_a = program.getDiagnostics()[0]) === null || _a === void 0 ? void 0 : _a.message).to.equal(DiagnosticMessages_1.DiagnosticMessages.localVarSameNameAsClass('Animal').message);
1054
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
1055
+ DiagnosticMessages_1.DiagnosticMessages.localVarSameNameAsClass('Animal').message
1056
+ ]);
978
1057
  });
979
1058
  it('allows extending classes with more than one dot in the filename', () => {
980
1059
  program.addOrReplaceFile('source/testclass.bs', `
@@ -1101,5 +1180,30 @@ describe('BrsFile BrighterScript classes', () => {
1101
1180
  `);
1102
1181
  program.validate();
1103
1182
  });
1183
+ it.skip('detects calling class constructors with too many parameters', () => {
1184
+ program.addOrReplaceFile('source/main.bs', `
1185
+ class Parameterless
1186
+ sub new()
1187
+ end sub
1188
+ end class
1189
+
1190
+ class OneParam
1191
+ sub new(param1)
1192
+ end sub
1193
+ end class
1194
+
1195
+ sub main()
1196
+ c1 = new Parameterless(1)
1197
+ c2 = new OneParam(1, 2)
1198
+ c2 = new OneParam()
1199
+ end sub
1200
+ `);
1201
+ program.validate();
1202
+ (0, testHelpers_spec_1.expectDiagnostics)(program, [
1203
+ DiagnosticMessages_1.DiagnosticMessages.mismatchArgumentCount(0, 1),
1204
+ DiagnosticMessages_1.DiagnosticMessages.mismatchArgumentCount(1, 2),
1205
+ DiagnosticMessages_1.DiagnosticMessages.mismatchArgumentCount(1, 0)
1206
+ ]);
1207
+ });
1104
1208
  });
1105
1209
  //# sourceMappingURL=BrsFile.Class.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrsFile.Class.spec.js","sourceRoot":"","sources":["../../src/files/BrsFile.Class.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrsFile.Class.spec.js","sourceRoot":"","sources":["../../src/files/BrsFile.Class.spec.ts"],"names":[],"mappings":"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"}