@cparra/apexdocs 2.25.0-alpha.0 → 2.25.0-alpha.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 (191) hide show
  1. package/__mocks__/chalk.js +12 -0
  2. package/__mocks__/log-update.js +6 -0
  3. package/eslint.config.mjs +10 -0
  4. package/examples/plain-markdown/docs/Miscellaneous/ns.BaseClass.md +16 -0
  5. package/examples/plain-markdown/docs/Miscellaneous/ns.ParentInterface.md +15 -0
  6. package/examples/plain-markdown/docs/Miscellaneous/ns.ReferencedEnum.md +8 -0
  7. package/examples/plain-markdown/docs/Miscellaneous/ns.SampleException.md +7 -0
  8. package/examples/plain-markdown/docs/Miscellaneous/ns.SampleInterface.md +115 -0
  9. package/examples/plain-markdown/docs/Sample-Enums/ns.SampleEnum.md +36 -0
  10. package/examples/plain-markdown/docs/SampleGroup/ns.SampleClass.md +173 -0
  11. package/examples/plain-markdown/docs/index.md +36 -0
  12. package/examples/plain-markdown/force-app/classes/SampleClass.cls +37 -0
  13. package/examples/plain-markdown/package.json +2 -6
  14. package/jest.config.js +4 -0
  15. package/jest.d.ts +7 -0
  16. package/lib/__spec__/core/expect-extensions.d.ts +3 -0
  17. package/lib/__spec__/core/expect-extensions.js +54 -0
  18. package/lib/__spec__/core/expect-extensions.js.map +1 -0
  19. package/lib/__spec__/core/generating-class-docs.spec.d.ts +1 -0
  20. package/lib/__spec__/core/generating-class-docs.spec.js +427 -0
  21. package/lib/__spec__/core/generating-class-docs.spec.js.map +1 -0
  22. package/lib/__spec__/core/generating-enum-docs.spec.d.ts +1 -0
  23. package/lib/__spec__/core/generating-enum-docs.spec.js +303 -0
  24. package/lib/__spec__/core/generating-enum-docs.spec.js.map +1 -0
  25. package/lib/__spec__/core/generating-interface-docs.spec.d.ts +1 -0
  26. package/lib/__spec__/core/generating-interface-docs.spec.js +361 -0
  27. package/lib/__spec__/core/generating-interface-docs.spec.js.map +1 -0
  28. package/lib/__spec__/core/generating-reference-guide.spec.d.ts +1 -0
  29. package/lib/__spec__/core/generating-reference-guide.spec.js +161 -0
  30. package/lib/__spec__/core/generating-reference-guide.spec.js.map +1 -0
  31. package/lib/adapters/apex-types.d.ts +7 -5
  32. package/lib/adapters/apex-types.js +99 -21
  33. package/lib/adapters/apex-types.js.map +1 -1
  34. package/lib/adapters/documentables.d.ts +4 -3
  35. package/lib/adapters/documentables.js +23 -8
  36. package/lib/adapters/documentables.js.map +1 -1
  37. package/lib/adapters/fields-and-properties.d.ts +4 -3
  38. package/lib/adapters/fields-and-properties.js +26 -4
  39. package/lib/adapters/fields-and-properties.js.map +1 -1
  40. package/lib/adapters/methods-and-constructors.d.ts +4 -3
  41. package/lib/adapters/methods-and-constructors.js +52 -9
  42. package/lib/adapters/methods-and-constructors.js.map +1 -1
  43. package/lib/adapters/references.d.ts +1 -1
  44. package/lib/adapters/references.js +3 -3
  45. package/lib/adapters/references.js.map +1 -1
  46. package/lib/adapters/type-utils.d.ts +1 -1
  47. package/lib/adapters/type-utils.js +1 -2
  48. package/lib/adapters/type-utils.js.map +1 -1
  49. package/lib/application/Apexdocs.js.map +1 -1
  50. package/lib/cli/generate.js +7 -7
  51. package/lib/cli/generate.js.map +1 -1
  52. package/lib/core/generate-docs.d.ts +23 -0
  53. package/lib/core/generate-docs.js +241 -0
  54. package/lib/core/generate-docs.js.map +1 -0
  55. package/lib/core/template.d.ts +10 -0
  56. package/lib/core/template.js +92 -0
  57. package/lib/core/template.js.map +1 -0
  58. package/lib/core/templates/reference-guide.d.ts +1 -0
  59. package/lib/core/templates/reference-guide.js +18 -0
  60. package/lib/core/templates/reference-guide.js.map +1 -0
  61. package/lib/index.d.ts +2 -1
  62. package/lib/index.js +14 -3
  63. package/lib/index.js.map +1 -1
  64. package/lib/model/manifest.js +8 -2
  65. package/lib/model/manifest.js.map +1 -1
  66. package/lib/model/markdown-file.d.ts +2 -2
  67. package/lib/model/markdown-file.js +5 -4
  68. package/lib/model/markdown-file.js.map +1 -1
  69. package/lib/model/markdown-generation-util/doc-comment-annotation-util.js +3 -4
  70. package/lib/model/markdown-generation-util/doc-comment-annotation-util.js.map +1 -1
  71. package/lib/model/markdown-generation-util/field-declaration-util.js +1 -2
  72. package/lib/model/markdown-generation-util/field-declaration-util.js.map +1 -1
  73. package/lib/model/markdown-generation-util/method-declaration-util.js +2 -3
  74. package/lib/model/markdown-generation-util/method-declaration-util.js.map +1 -1
  75. package/lib/model/markdown-generation-util/type-declaration-util.js +1 -2
  76. package/lib/model/markdown-generation-util/type-declaration-util.js.map +1 -1
  77. package/lib/model/markdown-home-file.js.map +1 -1
  78. package/lib/model/markdown-type-file.js.map +1 -1
  79. package/lib/model/openapi/open-api.js.map +1 -1
  80. package/lib/model/outputFile.d.ts +1 -1
  81. package/lib/model/outputFile.js +2 -9
  82. package/lib/model/outputFile.js.map +1 -1
  83. package/lib/model/types-repository.js.map +1 -1
  84. package/lib/service/apex-file-reader.js.map +1 -1
  85. package/lib/service/file-writer.js.map +1 -1
  86. package/lib/service/manifest-factory.js +1 -2
  87. package/lib/service/manifest-factory.js.map +1 -1
  88. package/lib/service/metadata-processor.js.map +1 -1
  89. package/lib/service/parser.js +1 -1
  90. package/lib/service/parser.js.map +1 -1
  91. package/lib/service/state.js.map +1 -1
  92. package/lib/service/walkers/class-walker.js.map +1 -1
  93. package/lib/service/walkers/interface-walker.js.map +1 -1
  94. package/lib/service/walkers/walker-factory.js.map +1 -1
  95. package/lib/service/walkers/walker.js.map +1 -1
  96. package/lib/settings.d.ts +0 -6
  97. package/lib/settings.js +0 -11
  98. package/lib/settings.js.map +1 -1
  99. package/lib/transpiler/factory.js.map +1 -1
  100. package/lib/transpiler/markdown/class-file-generatorHelper.d.ts +1 -1
  101. package/lib/transpiler/markdown/class-file-generatorHelper.js.map +1 -1
  102. package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.js.map +1 -1
  103. package/lib/transpiler/markdown/plain-markdown/class-template.js +51 -10
  104. package/lib/transpiler/markdown/plain-markdown/class-template.js.map +1 -1
  105. package/lib/transpiler/markdown/plain-markdown/constructors-partial-template.js +13 -16
  106. package/lib/transpiler/markdown/plain-markdown/constructors-partial-template.js.map +1 -1
  107. package/lib/transpiler/markdown/plain-markdown/documentable-partial-template.js +11 -8
  108. package/lib/transpiler/markdown/plain-markdown/documentable-partial-template.js.map +1 -1
  109. package/lib/transpiler/markdown/plain-markdown/enum-template.js +7 -6
  110. package/lib/transpiler/markdown/plain-markdown/enum-template.js.map +1 -1
  111. package/lib/transpiler/markdown/plain-markdown/fieldsPartialTemplate.js +9 -6
  112. package/lib/transpiler/markdown/plain-markdown/fieldsPartialTemplate.js.map +1 -1
  113. package/lib/transpiler/markdown/plain-markdown/grouped-members-partial-template.d.ts +1 -0
  114. package/lib/transpiler/markdown/plain-markdown/grouped-members-partial-template.js +10 -0
  115. package/lib/transpiler/markdown/plain-markdown/grouped-members-partial-template.js.map +1 -0
  116. package/lib/transpiler/markdown/plain-markdown/interface-template.js +4 -4
  117. package/lib/transpiler/markdown/plain-markdown/methods-partial-template.js +18 -20
  118. package/lib/transpiler/markdown/plain-markdown/methods-partial-template.js.map +1 -1
  119. package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.d.ts +0 -4
  120. package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.js +6 -86
  121. package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.js.map +1 -1
  122. package/lib/transpiler/markdown/plain-markdown/type-doc-partial.d.ts +1 -0
  123. package/lib/transpiler/markdown/plain-markdown/type-doc-partial.js +31 -0
  124. package/lib/transpiler/markdown/plain-markdown/type-doc-partial.js.map +1 -0
  125. package/lib/transpiler/openapi/open-api-docs-processor.js.map +1 -1
  126. package/lib/transpiler/openapi/parsers/Builder.js.map +1 -1
  127. package/lib/transpiler/openapi/parsers/MethodParser.js.map +1 -1
  128. package/lib/transpiler/openapi/parsers/ReferenceBuilder.js +3 -2
  129. package/lib/transpiler/openapi/parsers/ReferenceBuilder.js.map +1 -1
  130. package/lib/transpiler/openapi/parsers/ResponsesBuilder.js.map +1 -1
  131. package/lib/transpiler/transpiler.js.map +1 -1
  132. package/lib/util/error-logger.js.map +1 -1
  133. package/lib/util/logger.js.map +1 -1
  134. package/lib/util/string-utils.js +2 -2
  135. package/lib/util/string-utils.js.map +1 -1
  136. package/package.json +19 -19
  137. package/src/__spec__/core/expect-extensions.ts +32 -0
  138. package/src/__spec__/core/generating-class-docs.spec.ts +511 -0
  139. package/src/__spec__/core/generating-enum-docs.spec.ts +355 -0
  140. package/src/__spec__/core/generating-interface-docs.spec.ts +431 -0
  141. package/src/__spec__/core/generating-reference-guide.spec.ts +163 -0
  142. package/src/adapters/__tests__/interface-adapter.spec.ts +15 -11
  143. package/src/adapters/__tests__/references.spec.ts +1 -1
  144. package/src/adapters/apex-types.ts +196 -39
  145. package/src/adapters/documentables.ts +44 -9
  146. package/src/adapters/fields-and-properties.ts +31 -7
  147. package/src/adapters/methods-and-constructors.ts +57 -18
  148. package/src/adapters/references.ts +1 -1
  149. package/src/adapters/type-utils.ts +1 -1
  150. package/src/cli/generate.ts +96 -96
  151. package/src/core/generate-docs.ts +357 -0
  152. package/src/core/renderable/types.d.ts +131 -0
  153. package/src/core/template.ts +108 -0
  154. package/src/core/templates/reference-guide.ts +14 -0
  155. package/src/index.ts +3 -1
  156. package/src/model/manifest.ts +12 -2
  157. package/src/model/markdown-file.ts +5 -4
  158. package/src/model/markdown-generation-util/doc-comment-annotation-util.ts +1 -1
  159. package/src/model/markdown-generation-util/method-declaration-util.ts +1 -1
  160. package/src/model/outputFile.ts +2 -11
  161. package/src/service/parser.ts +1 -1
  162. package/src/settings.ts +0 -15
  163. package/src/transpiler/markdown/class-file-generatorHelper.ts +1 -1
  164. package/src/transpiler/markdown/plain-markdown/class-template.ts +51 -10
  165. package/src/transpiler/markdown/plain-markdown/constructors-partial-template.ts +13 -16
  166. package/src/transpiler/markdown/plain-markdown/documentable-partial-template.ts +11 -8
  167. package/src/transpiler/markdown/plain-markdown/enum-template.ts +7 -6
  168. package/src/transpiler/markdown/plain-markdown/fieldsPartialTemplate.ts +9 -6
  169. package/src/transpiler/markdown/plain-markdown/grouped-members-partial-template.ts +6 -0
  170. package/src/transpiler/markdown/plain-markdown/interface-template.ts +4 -4
  171. package/src/transpiler/markdown/plain-markdown/methods-partial-template.ts +18 -20
  172. package/src/transpiler/markdown/plain-markdown/plain-docsProcessor.ts +8 -100
  173. package/src/transpiler/markdown/plain-markdown/type-doc-partial.ts +27 -0
  174. package/src/transpiler/openapi/parsers/ReferenceBuilder.ts +3 -2
  175. package/tsconfig.json +1 -1
  176. package/.eslintrc.js +0 -12
  177. package/examples/plain-markdown/README.md +0 -301
  178. package/lib/templating/compile.d.ts +0 -7
  179. package/lib/templating/compile.js +0 -98
  180. package/lib/templating/compile.js.map +0 -1
  181. package/lib/templating/helpers.d.ts +0 -2
  182. package/lib/templating/helpers.js +0 -18
  183. package/lib/templating/helpers.js.map +0 -1
  184. package/lib/transpiler/markdown/plain-markdown/type-level-apex-doc-partial-template.d.ts +0 -1
  185. package/lib/transpiler/markdown/plain-markdown/type-level-apex-doc-partial-template.js +0 -31
  186. package/lib/transpiler/markdown/plain-markdown/type-level-apex-doc-partial-template.js.map +0 -1
  187. package/src/templating/__tests__/compile.spec.ts +0 -741
  188. package/src/templating/compile.ts +0 -187
  189. package/src/templating/helpers.ts +0 -14
  190. package/src/templating/types.d.ts +0 -104
  191. package/src/transpiler/markdown/plain-markdown/type-level-apex-doc-partial-template.ts +0 -27
@@ -0,0 +1,427 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const expect_extensions_1 = require("./expect-extensions");
4
+ const generate_docs_1 = require("../../core/generate-docs");
5
+ describe('Generates interface documentation', () => {
6
+ beforeAll(() => {
7
+ (0, expect_extensions_1.extendExpect)();
8
+ });
9
+ describe('documentation output', () => {
10
+ it('always returns markdown as the format', () => {
11
+ const input = 'public class MyClass {}';
12
+ const result = (0, generate_docs_1.generateDocs)([input]);
13
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data.format).toBe('markdown'));
14
+ });
15
+ it('returns the name of the class', () => {
16
+ const input = 'public class MyClass {}';
17
+ const result = (0, generate_docs_1.generateDocs)([input]);
18
+ expect(result).documentationBundleHasLength(1);
19
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data.docs[0].typeName).toBe('MyClass'));
20
+ });
21
+ it('returns the type as class', () => {
22
+ const input = 'public class MyClass {}';
23
+ const result = (0, generate_docs_1.generateDocs)([input]);
24
+ expect(result).documentationBundleHasLength(1);
25
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data.docs[0].type).toBe('class'));
26
+ });
27
+ it('does not return classes out of scope', () => {
28
+ const input1 = `
29
+ global class MyClass {}
30
+ `;
31
+ const input2 = `
32
+ public class AnotherClass {}
33
+ `;
34
+ const result = (0, generate_docs_1.generateDocs)([input1, input2], { scope: ['global'] });
35
+ expect(result).documentationBundleHasLength(1);
36
+ });
37
+ it('does not return classes that have an @ignore in the docs', () => {
38
+ const input = `
39
+ /**
40
+ * @ignore
41
+ */
42
+ public class MyClass {}`;
43
+ const result = (0, generate_docs_1.generateDocs)([input]);
44
+ expect(result).documentationBundleHasLength(0);
45
+ });
46
+ it('does not return class methods that have @ignore in the docs', () => {
47
+ const input = `
48
+ public class MyClass {
49
+ /**
50
+ * @ignore
51
+ */
52
+ public void myMethod() {}
53
+ }`;
54
+ const result = (0, generate_docs_1.generateDocs)([input]);
55
+ expect(result).documentationBundleHasLength(1);
56
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data.docs[0].docContents).not.toContain('myMethod'));
57
+ });
58
+ it('does not return class properties that have @ignore in the docs', () => {
59
+ const input = `
60
+ public class MyClass {
61
+ /**
62
+ * @ignore
63
+ */
64
+ public String myProperty { get; set; }
65
+ }`;
66
+ const result = (0, generate_docs_1.generateDocs)([input]);
67
+ expect(result).documentationBundleHasLength(1);
68
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data.docs[0].docContents).not.toContain('myProperty'));
69
+ });
70
+ it('does not return class fields that have @ignore in the docs', () => {
71
+ const input = `
72
+ public class MyClass {
73
+ /**
74
+ * @ignore
75
+ */
76
+ public String myField;
77
+ }`;
78
+ const result = (0, generate_docs_1.generateDocs)([input]);
79
+ expect(result).documentationBundleHasLength(1);
80
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data.docs[0].docContents).not.toContain('myField'));
81
+ });
82
+ it('does not return class inner classes that have @ignore in the docs', () => {
83
+ const input = `
84
+ public class MyClass {
85
+ /**
86
+ * @ignore
87
+ */
88
+ public class InnerClass {}
89
+ }`;
90
+ const result = (0, generate_docs_1.generateDocs)([input]);
91
+ expect(result).documentationBundleHasLength(1);
92
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data.docs[0].docContents).not.toContain('InnerClass'));
93
+ });
94
+ it('does not return class inner interfaces that have @ignore in the docs', () => {
95
+ const input = `
96
+ public class MyClass {
97
+ /**
98
+ * @ignore
99
+ */
100
+ public interface InnerInterface {}
101
+ }`;
102
+ const result = (0, generate_docs_1.generateDocs)([input]);
103
+ expect(result).documentationBundleHasLength(1);
104
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data.docs[0].docContents).not.toContain('InnerInterface'));
105
+ });
106
+ it('does not return class inner enums that have @ignore in the docs', () => {
107
+ const input = `
108
+ public class MyClass {
109
+ /**
110
+ * @ignore
111
+ */
112
+ public enum InnerEnum {}
113
+ }`;
114
+ const result = (0, generate_docs_1.generateDocs)([input]);
115
+ expect(result).documentationBundleHasLength(1);
116
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data.docs[0].docContents).not.toContain('InnerEnum'));
117
+ });
118
+ });
119
+ describe('documentation content', () => {
120
+ describe('type level information', () => {
121
+ it('generates a heading with the class name', () => {
122
+ const input = 'public class MyClass {}';
123
+ const output = `# MyClass Class`;
124
+ const result = (0, generate_docs_1.generateDocs)([input]);
125
+ expect(result).documentationBundleHasLength(1);
126
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains(output));
127
+ });
128
+ it('displays type level annotations', () => {
129
+ const input = `
130
+ @NamespaceAccessible
131
+ public class MyClass {
132
+ @Deprecated
133
+ public void myMethod() {}
134
+ }
135
+ `;
136
+ const result = (0, generate_docs_1.generateDocs)([input]);
137
+ expect(result).documentationBundleHasLength(1);
138
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('NAMESPACEACCESSIBLE'));
139
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('DEPRECATED'));
140
+ });
141
+ it('displays the description', () => {
142
+ const input = `
143
+ /**
144
+ * This is a description
145
+ */
146
+ public class MyClass {}
147
+ `;
148
+ const result = (0, generate_docs_1.generateDocs)([input]);
149
+ expect(result).documentationBundleHasLength(1);
150
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('This is a description'));
151
+ });
152
+ it('display custom documentation tags', () => {
153
+ const input = `
154
+ /**
155
+ * @custom-tag My Value
156
+ */
157
+ public class MyClass {}
158
+ `;
159
+ const result = (0, generate_docs_1.generateDocs)([input]);
160
+ expect(result).documentationBundleHasLength(1);
161
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('Custom Tag'));
162
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('My Value'));
163
+ });
164
+ it('displays the group', () => {
165
+ const input = `
166
+ /**
167
+ * @group MyGroup
168
+ */
169
+ public class MyClass {}`;
170
+ const result = (0, generate_docs_1.generateDocs)([input]);
171
+ expect(result).documentationBundleHasLength(1);
172
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('Group'));
173
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('MyGroup'));
174
+ });
175
+ it('displays the author', () => {
176
+ const input = `
177
+ /**
178
+ * @author John Doe
179
+ */
180
+ public class MyClass {}`;
181
+ const result = (0, generate_docs_1.generateDocs)([input]);
182
+ expect(result).documentationBundleHasLength(1);
183
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('Author'));
184
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('John Doe'));
185
+ });
186
+ it('displays the date', () => {
187
+ const input = `
188
+ /**
189
+ * @date 2021-01-01
190
+ */
191
+ public class MyClass {}`;
192
+ const result = (0, generate_docs_1.generateDocs)([input]);
193
+ expect(result).documentationBundleHasLength(1);
194
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('Date'));
195
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('2021-01-01'));
196
+ });
197
+ it('displays descriptions', () => {
198
+ const input = `
199
+ /**
200
+ * @description This is a description
201
+ */
202
+ public class MyClass {}`;
203
+ const result = (0, generate_docs_1.generateDocs)([input]);
204
+ expect(result).documentationBundleHasLength(1);
205
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('This is a description'));
206
+ });
207
+ it('displays descriptions with links', () => {
208
+ const input1 = `
209
+ /**
210
+ * @description This is a description with a {@link ClassRef} reference
211
+ */
212
+ public enum MyClass {}
213
+ `;
214
+ const input2 = 'public class ClassRef {}';
215
+ const result = (0, generate_docs_1.generateDocs)([input1, input2]);
216
+ expect(result).documentationBundleHasLength(2);
217
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('This is a description with a [ClassRef](./ClassRef.md) reference'));
218
+ });
219
+ it('displays descriptions with emails', () => {
220
+ const input = `
221
+ /**
222
+ * @description This is a description with an {@email test@testerson.com} email
223
+ */
224
+ public class MyClass {}
225
+ `;
226
+ const result = (0, generate_docs_1.generateDocs)([input]);
227
+ expect(result).documentationBundleHasLength(1);
228
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('This is a description with an [test@testerson.com](mailto:test@testerson.com) email'));
229
+ });
230
+ it('displays sees with accurately resolved links', () => {
231
+ const input1 = `
232
+ /**
233
+ * @see ClassRef
234
+ */
235
+ public class MyClass {}
236
+ `;
237
+ const input2 = 'public class ClassRef {}';
238
+ const result = (0, generate_docs_1.generateDocs)([input1, input2]);
239
+ expect(result).documentationBundleHasLength(2);
240
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('See'));
241
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('[ClassRef](./ClassRef.md)'));
242
+ });
243
+ it('displays sees without links when the reference is not found', () => {
244
+ const input = `
245
+ /**
246
+ * @see ClassRef
247
+ */
248
+ public class MyClass {}
249
+ `;
250
+ const result = (0, generate_docs_1.generateDocs)([input]);
251
+ expect(result).documentationBundleHasLength(1);
252
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('See'));
253
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('ClassRef'));
254
+ });
255
+ it('displays the namespace if present in the config', () => {
256
+ const input = 'public class MyClass {}';
257
+ const result = (0, generate_docs_1.generateDocs)([input], { namespace: 'MyNamespace' });
258
+ expect(result).documentationBundleHasLength(1);
259
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('## Namespace'));
260
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('MyNamespace'));
261
+ });
262
+ it('does not display the namespace if not present in the config', () => {
263
+ const input = 'public class MyClass {}';
264
+ const result = (0, generate_docs_1.generateDocs)([input]);
265
+ expect(result).documentationBundleHasLength(1);
266
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContainsNot('## Namespace'));
267
+ });
268
+ it('displays a mermaid diagram', () => {
269
+ const input = `
270
+ /**
271
+ * @mermaid
272
+ * graph TD
273
+ * A[Square Rect] -- Link text --> B((Circle))
274
+ * A --> C(Round Rect)
275
+ * B --> D{Rhombus}
276
+ * C --> D
277
+ */
278
+ public class MyClass {}
279
+ `;
280
+ const result = (0, generate_docs_1.generateDocs)([input]);
281
+ expect(result).documentationBundleHasLength(1);
282
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('```mermaid'));
283
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('graph TD'));
284
+ });
285
+ it('displays an example code block', () => {
286
+ const input = `
287
+ /**
288
+ * @example
289
+ * public class MyClass {
290
+ * public void myMethod() {
291
+ * System.debug('Hello, World!');
292
+ * }
293
+ * }
294
+ */
295
+ public class MyClass {}`;
296
+ const result = (0, generate_docs_1.generateDocs)([input]);
297
+ expect(result).documentationBundleHasLength(1);
298
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('```apex'));
299
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('public class MyClass'));
300
+ });
301
+ });
302
+ });
303
+ describe('member information', () => {
304
+ it('displays the Method heading', () => {
305
+ const input = `
306
+ public class MyClass {
307
+ public void myMethod() {}
308
+ }
309
+ `;
310
+ const result = (0, generate_docs_1.generateDocs)([input]);
311
+ expect(result).documentationBundleHasLength(1);
312
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('## Methods'));
313
+ });
314
+ it('displays the Property heading', () => {
315
+ const input = `
316
+ public class MyClass {
317
+ public String myProperty { get; set; }
318
+ }
319
+ `;
320
+ const result = (0, generate_docs_1.generateDocs)([input]);
321
+ expect(result).documentationBundleHasLength(1);
322
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('## Properties'));
323
+ });
324
+ it('displays the Field heading', () => {
325
+ const input = `
326
+ public class MyClass {
327
+ public String myField;
328
+ }
329
+ `;
330
+ const result = (0, generate_docs_1.generateDocs)([input]);
331
+ expect(result).documentationBundleHasLength(1);
332
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('## Fields'));
333
+ });
334
+ it('displays the Constructor heading', () => {
335
+ const input = `
336
+ public class MyClass {
337
+ public MyClass() {}
338
+ }
339
+ `;
340
+ const result = (0, generate_docs_1.generateDocs)([input]);
341
+ expect(result).documentationBundleHasLength(1);
342
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('## Constructors'));
343
+ });
344
+ it('displays the Inner Class heading', () => {
345
+ const input = `
346
+ public class MyClass {
347
+ public class InnerClass {}
348
+ }
349
+ `;
350
+ const result = (0, generate_docs_1.generateDocs)([input]);
351
+ expect(result).documentationBundleHasLength(1);
352
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('## Classes'));
353
+ });
354
+ it('displays the Inner Interface heading', () => {
355
+ const input = `
356
+ public class MyClass {
357
+ public interface InnerInterface {}
358
+ }
359
+ `;
360
+ const result = (0, generate_docs_1.generateDocs)([input]);
361
+ expect(result).documentationBundleHasLength(1);
362
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('## Interfaces'));
363
+ });
364
+ it('displays the Inner Enum heading', () => {
365
+ const input = `
366
+ public class MyClass {
367
+ public enum InnerEnum {}
368
+ }
369
+ `;
370
+ const result = (0, generate_docs_1.generateDocs)([input]);
371
+ expect(result).documentationBundleHasLength(1);
372
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('## Enums'));
373
+ });
374
+ it('supports having mermaid diagrams in descriptions', () => {
375
+ const input = `
376
+ public class MyClass {
377
+ /**
378
+ * @mermaid
379
+ * graph TD
380
+ * A[Square Rect] -- Link text --> B((Circle))
381
+ * A --> C(Round Rect)
382
+ * B --> D{Rhombus}
383
+ * C --> D
384
+ */
385
+ public void myMethod() {}
386
+ }
387
+ `;
388
+ const result = (0, generate_docs_1.generateDocs)([input]);
389
+ expect(result).documentationBundleHasLength(1);
390
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('```mermaid'));
391
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('graph TD'));
392
+ });
393
+ it('supports having example code blocks in method descriptions', () => {
394
+ const input = `
395
+ public class MyClass {
396
+ /**
397
+ * @example
398
+ * public class MyClass {
399
+ * public void myMethod() {
400
+ * System.debug('Hello, World!');
401
+ * }
402
+ * }
403
+ */
404
+ public void myMethod() {}
405
+ }
406
+ `;
407
+ const result = (0, generate_docs_1.generateDocs)([input]);
408
+ expect(result).documentationBundleHasLength(1);
409
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('```apex'));
410
+ (0, expect_extensions_1.assertEither)(result, (data) => expect(data).firstDocContains('public class MyClass'));
411
+ });
412
+ it('displays an "inherited" tag if the method was inherited from a different interface', () => {
413
+ const input1 = `
414
+ public virtual class MyClass {
415
+ public void myMethod() {}
416
+ }
417
+ `;
418
+ const input2 = `
419
+ public class AnotherClass extends MyClass {}
420
+ `;
421
+ const result = (0, generate_docs_1.generateDocs)([input1, input2]);
422
+ expect(result).documentationBundleHasLength(2);
423
+ (0, expect_extensions_1.assertEither)(result, (data) => { var _a; return expect((_a = data.docs.find((doc) => doc.typeName === 'AnotherClass')) === null || _a === void 0 ? void 0 : _a.docContents).toContain('Inherited'); });
424
+ });
425
+ });
426
+ });
427
+ //# sourceMappingURL=generating-class-docs.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generating-class-docs.spec.js","sourceRoot":"","sources":["../../../src/__spec__/core/generating-class-docs.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};