@nahisaho/musubix-core 1.0.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 (214) hide show
  1. package/bin/musubix.js +18 -0
  2. package/dist/__tests__/index.test.d.ts +2 -0
  3. package/dist/__tests__/index.test.d.ts.map +1 -0
  4. package/dist/__tests__/index.test.js +27 -0
  5. package/dist/__tests__/index.test.js.map +1 -0
  6. package/dist/auth/auth-manager.d.ts +320 -0
  7. package/dist/auth/auth-manager.d.ts.map +1 -0
  8. package/dist/auth/auth-manager.js +580 -0
  9. package/dist/auth/auth-manager.js.map +1 -0
  10. package/dist/cli/base.d.ts +58 -0
  11. package/dist/cli/base.d.ts.map +1 -0
  12. package/dist/cli/base.js +93 -0
  13. package/dist/cli/base.js.map +1 -0
  14. package/dist/cli/commands/help.d.ts +17 -0
  15. package/dist/cli/commands/help.d.ts.map +1 -0
  16. package/dist/cli/commands/help.js +228 -0
  17. package/dist/cli/commands/help.js.map +1 -0
  18. package/dist/cli/commands/index.d.ts +14 -0
  19. package/dist/cli/commands/index.d.ts.map +1 -0
  20. package/dist/cli/commands/index.js +25 -0
  21. package/dist/cli/commands/index.js.map +1 -0
  22. package/dist/cli/commands/init.d.ts +38 -0
  23. package/dist/cli/commands/init.d.ts.map +1 -0
  24. package/dist/cli/commands/init.js +258 -0
  25. package/dist/cli/commands/init.js.map +1 -0
  26. package/dist/cli/index.d.ts +9 -0
  27. package/dist/cli/index.d.ts.map +1 -0
  28. package/dist/cli/index.js +9 -0
  29. package/dist/cli/index.js.map +1 -0
  30. package/dist/codegen/coding-standards.d.ts +250 -0
  31. package/dist/codegen/coding-standards.d.ts.map +1 -0
  32. package/dist/codegen/coding-standards.js +976 -0
  33. package/dist/codegen/coding-standards.js.map +1 -0
  34. package/dist/codegen/coverage-reporter.d.ts +264 -0
  35. package/dist/codegen/coverage-reporter.d.ts.map +1 -0
  36. package/dist/codegen/coverage-reporter.js +697 -0
  37. package/dist/codegen/coverage-reporter.js.map +1 -0
  38. package/dist/codegen/dependency-analyzer.d.ts +271 -0
  39. package/dist/codegen/dependency-analyzer.d.ts.map +1 -0
  40. package/dist/codegen/dependency-analyzer.js +661 -0
  41. package/dist/codegen/dependency-analyzer.js.map +1 -0
  42. package/dist/codegen/generator.d.ts +275 -0
  43. package/dist/codegen/generator.d.ts.map +1 -0
  44. package/dist/codegen/generator.js +781 -0
  45. package/dist/codegen/generator.js.map +1 -0
  46. package/dist/codegen/index.d.ts +18 -0
  47. package/dist/codegen/index.d.ts.map +1 -0
  48. package/dist/codegen/index.js +27 -0
  49. package/dist/codegen/index.js.map +1 -0
  50. package/dist/codegen/integration-test-generator.d.ts +312 -0
  51. package/dist/codegen/integration-test-generator.d.ts.map +1 -0
  52. package/dist/codegen/integration-test-generator.js +765 -0
  53. package/dist/codegen/integration-test-generator.js.map +1 -0
  54. package/dist/codegen/pattern-conformance.d.ts +309 -0
  55. package/dist/codegen/pattern-conformance.d.ts.map +1 -0
  56. package/dist/codegen/pattern-conformance.js +590 -0
  57. package/dist/codegen/pattern-conformance.js.map +1 -0
  58. package/dist/codegen/quality-metrics.d.ts +235 -0
  59. package/dist/codegen/quality-metrics.d.ts.map +1 -0
  60. package/dist/codegen/quality-metrics.js +439 -0
  61. package/dist/codegen/quality-metrics.js.map +1 -0
  62. package/dist/codegen/security-scanner.d.ts +179 -0
  63. package/dist/codegen/security-scanner.d.ts.map +1 -0
  64. package/dist/codegen/security-scanner.js +495 -0
  65. package/dist/codegen/security-scanner.js.map +1 -0
  66. package/dist/codegen/static-analyzer.d.ts +188 -0
  67. package/dist/codegen/static-analyzer.d.ts.map +1 -0
  68. package/dist/codegen/static-analyzer.js +490 -0
  69. package/dist/codegen/static-analyzer.js.map +1 -0
  70. package/dist/codegen/unit-test-generator.d.ts +289 -0
  71. package/dist/codegen/unit-test-generator.d.ts.map +1 -0
  72. package/dist/codegen/unit-test-generator.js +634 -0
  73. package/dist/codegen/unit-test-generator.js.map +1 -0
  74. package/dist/design/adr-generator.d.ts +227 -0
  75. package/dist/design/adr-generator.d.ts.map +1 -0
  76. package/dist/design/adr-generator.js +423 -0
  77. package/dist/design/adr-generator.js.map +1 -0
  78. package/dist/design/c4-generator.d.ts +267 -0
  79. package/dist/design/c4-generator.d.ts.map +1 -0
  80. package/dist/design/c4-generator.js +453 -0
  81. package/dist/design/c4-generator.js.map +1 -0
  82. package/dist/design/framework-optimizer.d.ts +190 -0
  83. package/dist/design/framework-optimizer.d.ts.map +1 -0
  84. package/dist/design/framework-optimizer.js +589 -0
  85. package/dist/design/framework-optimizer.js.map +1 -0
  86. package/dist/design/index.d.ts +12 -0
  87. package/dist/design/index.d.ts.map +1 -0
  88. package/dist/design/index.js +13 -0
  89. package/dist/design/index.js.map +1 -0
  90. package/dist/design/pattern-detector.d.ts +270 -0
  91. package/dist/design/pattern-detector.d.ts.map +1 -0
  92. package/dist/design/pattern-detector.js +621 -0
  93. package/dist/design/pattern-detector.js.map +1 -0
  94. package/dist/design/solid-validator.d.ts +188 -0
  95. package/dist/design/solid-validator.d.ts.map +1 -0
  96. package/dist/design/solid-validator.js +579 -0
  97. package/dist/design/solid-validator.js.map +1 -0
  98. package/dist/error/data-persistence.d.ts +311 -0
  99. package/dist/error/data-persistence.d.ts.map +1 -0
  100. package/dist/error/data-persistence.js +586 -0
  101. package/dist/error/data-persistence.js.map +1 -0
  102. package/dist/error/graceful-degradation.d.ts +309 -0
  103. package/dist/error/graceful-degradation.d.ts.map +1 -0
  104. package/dist/error/graceful-degradation.js +510 -0
  105. package/dist/error/graceful-degradation.js.map +1 -0
  106. package/dist/error/index.d.ts +11 -0
  107. package/dist/error/index.d.ts.map +1 -0
  108. package/dist/error/index.js +19 -0
  109. package/dist/error/index.js.map +1 -0
  110. package/dist/explanation/explanation-generator.d.ts +228 -0
  111. package/dist/explanation/explanation-generator.d.ts.map +1 -0
  112. package/dist/explanation/explanation-generator.js +662 -0
  113. package/dist/explanation/explanation-generator.js.map +1 -0
  114. package/dist/explanation/index.d.ts +11 -0
  115. package/dist/explanation/index.d.ts.map +1 -0
  116. package/dist/explanation/index.js +19 -0
  117. package/dist/explanation/index.js.map +1 -0
  118. package/dist/explanation/reasoning-chain.d.ts +314 -0
  119. package/dist/explanation/reasoning-chain.d.ts.map +1 -0
  120. package/dist/explanation/reasoning-chain.js +414 -0
  121. package/dist/explanation/reasoning-chain.js.map +1 -0
  122. package/dist/explanation/visual-explanation.d.ts +315 -0
  123. package/dist/explanation/visual-explanation.d.ts.map +1 -0
  124. package/dist/explanation/visual-explanation.js +667 -0
  125. package/dist/explanation/visual-explanation.js.map +1 -0
  126. package/dist/index.d.ts +33 -0
  127. package/dist/index.d.ts.map +1 -0
  128. package/dist/index.js +47 -0
  129. package/dist/index.js.map +1 -0
  130. package/dist/requirements/decomposer.d.ts +235 -0
  131. package/dist/requirements/decomposer.d.ts.map +1 -0
  132. package/dist/requirements/decomposer.js +587 -0
  133. package/dist/requirements/decomposer.js.map +1 -0
  134. package/dist/requirements/related-finder.d.ts +261 -0
  135. package/dist/requirements/related-finder.d.ts.map +1 -0
  136. package/dist/requirements/related-finder.js +629 -0
  137. package/dist/requirements/related-finder.js.map +1 -0
  138. package/dist/traceability/impact.d.ts +196 -0
  139. package/dist/traceability/impact.d.ts.map +1 -0
  140. package/dist/traceability/impact.js +438 -0
  141. package/dist/traceability/impact.js.map +1 -0
  142. package/dist/traceability/index.d.ts +9 -0
  143. package/dist/traceability/index.d.ts.map +1 -0
  144. package/dist/traceability/index.js +10 -0
  145. package/dist/traceability/index.js.map +1 -0
  146. package/dist/traceability/manager.d.ts +266 -0
  147. package/dist/traceability/manager.d.ts.map +1 -0
  148. package/dist/traceability/manager.js +412 -0
  149. package/dist/traceability/manager.js.map +1 -0
  150. package/dist/types/common.d.ts +294 -0
  151. package/dist/types/common.d.ts.map +1 -0
  152. package/dist/types/common.js +15 -0
  153. package/dist/types/common.js.map +1 -0
  154. package/dist/types/ears.d.ts +158 -0
  155. package/dist/types/ears.d.ts.map +1 -0
  156. package/dist/types/ears.js +33 -0
  157. package/dist/types/ears.js.map +1 -0
  158. package/dist/types/errors.d.ts +176 -0
  159. package/dist/types/errors.d.ts.map +1 -0
  160. package/dist/types/errors.js +55 -0
  161. package/dist/types/errors.js.map +1 -0
  162. package/dist/types/index.d.ts +10 -0
  163. package/dist/types/index.d.ts.map +1 -0
  164. package/dist/types/index.js +10 -0
  165. package/dist/types/index.js.map +1 -0
  166. package/dist/utils/data-protector.d.ts +122 -0
  167. package/dist/utils/data-protector.d.ts.map +1 -0
  168. package/dist/utils/data-protector.js +275 -0
  169. package/dist/utils/data-protector.js.map +1 -0
  170. package/dist/utils/error-handler.d.ts +101 -0
  171. package/dist/utils/error-handler.d.ts.map +1 -0
  172. package/dist/utils/error-handler.js +324 -0
  173. package/dist/utils/error-handler.js.map +1 -0
  174. package/dist/utils/i18n-manager.d.ts +259 -0
  175. package/dist/utils/i18n-manager.d.ts.map +1 -0
  176. package/dist/utils/i18n-manager.js +554 -0
  177. package/dist/utils/i18n-manager.js.map +1 -0
  178. package/dist/utils/index.d.ts +10 -0
  179. package/dist/utils/index.d.ts.map +1 -0
  180. package/dist/utils/index.js +10 -0
  181. package/dist/utils/index.js.map +1 -0
  182. package/dist/utils/logger.d.ts +120 -0
  183. package/dist/utils/logger.d.ts.map +1 -0
  184. package/dist/utils/logger.js +237 -0
  185. package/dist/utils/logger.js.map +1 -0
  186. package/dist/utils/performance-profiler.d.ts +251 -0
  187. package/dist/utils/performance-profiler.d.ts.map +1 -0
  188. package/dist/utils/performance-profiler.js +458 -0
  189. package/dist/utils/performance-profiler.js.map +1 -0
  190. package/dist/utils/scalability-optimizer.d.ts +294 -0
  191. package/dist/utils/scalability-optimizer.d.ts.map +1 -0
  192. package/dist/utils/scalability-optimizer.js +606 -0
  193. package/dist/utils/scalability-optimizer.js.map +1 -0
  194. package/dist/utils/structured-logger.d.ts +294 -0
  195. package/dist/utils/structured-logger.d.ts.map +1 -0
  196. package/dist/utils/structured-logger.js +630 -0
  197. package/dist/utils/structured-logger.js.map +1 -0
  198. package/dist/utils/version-compatibility.d.ts +217 -0
  199. package/dist/utils/version-compatibility.d.ts.map +1 -0
  200. package/dist/utils/version-compatibility.js +443 -0
  201. package/dist/utils/version-compatibility.js.map +1 -0
  202. package/dist/validators/ears-validator.d.ts +182 -0
  203. package/dist/validators/ears-validator.d.ts.map +1 -0
  204. package/dist/validators/ears-validator.js +357 -0
  205. package/dist/validators/ears-validator.js.map +1 -0
  206. package/dist/validators/index.d.ts +8 -0
  207. package/dist/validators/index.d.ts.map +1 -0
  208. package/dist/validators/index.js +9 -0
  209. package/dist/validators/index.js.map +1 -0
  210. package/dist/version.d.ts +8 -0
  211. package/dist/version.d.ts.map +1 -0
  212. package/dist/version.js +8 -0
  213. package/dist/version.js.map +1 -0
  214. package/package.json +100 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/codegen/generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Code Generation Module
3
+ *
4
+ * Exports all code generation, testing, and quality analysis components
5
+ *
6
+ * @packageDocumentation
7
+ * @module codegen
8
+ */
9
+ export { CodeGenerator, createCodeGenerator, type TargetLanguage, type TemplateType, type CodeStructureDefinition, type PropertyDefinition, type MethodDefinition, type GeneratedCode, type CodeGeneratorOptions, } from './generator.js';
10
+ export { StaticAnalyzer, createStaticAnalyzer, type IssueSeverity, type IssueCategory, type AnalysisRule, type AnalysisResult, type StaticAnalyzerConfig, } from './static-analyzer.js';
11
+ export { QualityMetricsCalculator, createQualityMetricsCalculator, type MetricType, type FileMetrics, type FunctionMetrics, type ClassMetrics, type ProjectMetrics, type QualityMetricsConfig, } from './quality-metrics.js';
12
+ export { SecurityScanner, createSecurityScanner, type VulnerabilitySeverity, type VulnerabilityCategory, type SecurityVulnerability, type SecurityScanResult, type SecurityRule, type SecurityScannerConfig, } from './security-scanner.js';
13
+ export { PatternConformanceChecker, createPatternConformanceChecker, type ConformanceLevel, type PatternConformanceResult, type ConformanceElement, type ConformanceViolation, type PatternSpecification, type ParticipantSpec, type RelationshipSpec, type PatternConformanceConfig, } from './pattern-conformance.js';
14
+ export { DependencyAnalyzer, createDependencyAnalyzer, type DependencyType, type DependencyStrength, type ModuleType, type DependencyInfo, type ModuleInfo, type ExportInfo, type DependencyGraph, type DependencyAnalysisResult, type DependencyMetrics, type DependencyIssue, type DependencyAnalyzerConfig, } from './dependency-analyzer.js';
15
+ export { UnitTestGenerator, createUnitTestGenerator, type TestFramework, type AssertionStyle, type TestTargetType, type TestCaseInfo, type TestInput, type TestOutput, type TestMock, type TestSuiteInfo, type FunctionToTest, type GeneratedTestResult, type UnitTestGeneratorConfig, } from './unit-test-generator.js';
16
+ export { IntegrationTestGenerator, createIntegrationTestGenerator, type IntegrationTestType, type TestFixture, type IntegrationTestScenario, type TestStep, type ExpectedOutcome, type ApiEndpointInfo, type ServiceInteractionInfo, type IntegrationTestSuite, type GeneratedIntegrationTest, type IntegrationTestGeneratorConfig, } from './integration-test-generator.js';
17
+ export { CoverageReporter, createCoverageReporter, type CoverageMetricType, type ThresholdStatus, type FileCoverage, type CoverageMetric, type BranchInfo, type CoverageSummary, type CoverageThreshold, type CoverageReport, type ThresholdResult, type CoverageTrend, type ReportFormat, type CoverageReporterConfig, } from './coverage-reporter.js';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/codegen/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,oBAAoB,GAC1B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,qBAAqB,GAC3B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,yBAAyB,EACzB,+BAA+B,EAC/B,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,GAC9B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,wBAAwB,GAC9B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,GAC7B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAC5B,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,8BAA8B,GACpC,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,sBAAsB,GAC5B,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Code Generation Module
3
+ *
4
+ * Exports all code generation, testing, and quality analysis components
5
+ *
6
+ * @packageDocumentation
7
+ * @module codegen
8
+ */
9
+ // Code Generator
10
+ export { CodeGenerator, createCodeGenerator, } from './generator.js';
11
+ // Static Analyzer
12
+ export { StaticAnalyzer, createStaticAnalyzer, } from './static-analyzer.js';
13
+ // Quality Metrics Calculator
14
+ export { QualityMetricsCalculator, createQualityMetricsCalculator, } from './quality-metrics.js';
15
+ // Security Scanner
16
+ export { SecurityScanner, createSecurityScanner, } from './security-scanner.js';
17
+ // Pattern Conformance Checker
18
+ export { PatternConformanceChecker, createPatternConformanceChecker, } from './pattern-conformance.js';
19
+ // Dependency Analyzer
20
+ export { DependencyAnalyzer, createDependencyAnalyzer, } from './dependency-analyzer.js';
21
+ // Unit Test Generator
22
+ export { UnitTestGenerator, createUnitTestGenerator, } from './unit-test-generator.js';
23
+ // Integration Test Generator
24
+ export { IntegrationTestGenerator, createIntegrationTestGenerator, } from './integration-test-generator.js';
25
+ // Coverage Reporter
26
+ export { CoverageReporter, createCoverageReporter, } from './coverage-reporter.js';
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/codegen/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,iBAAiB;AACjB,OAAO,EACL,aAAa,EACb,mBAAmB,GAQpB,MAAM,gBAAgB,CAAC;AAExB,kBAAkB;AAClB,OAAO,EACL,cAAc,EACd,oBAAoB,GAMrB,MAAM,sBAAsB,CAAC;AAE9B,6BAA6B;AAC7B,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAO/B,MAAM,sBAAsB,CAAC;AAE9B,mBAAmB;AACnB,OAAO,EACL,eAAe,EACf,qBAAqB,GAOtB,MAAM,uBAAuB,CAAC;AAE/B,8BAA8B;AAC9B,OAAO,EACL,yBAAyB,EACzB,+BAA+B,GAShC,MAAM,0BAA0B,CAAC;AAElC,sBAAsB;AACtB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GAYzB,MAAM,0BAA0B,CAAC;AAElC,sBAAsB;AACtB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GAYxB,MAAM,0BAA0B,CAAC;AAElC,6BAA6B;AAC7B,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAW/B,MAAM,iCAAiC,CAAC;AAEzC,oBAAoB;AACpB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,GAavB,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,312 @@
1
+ /**
2
+ * Integration Test Generator
3
+ *
4
+ * Generates integration tests for component interactions
5
+ *
6
+ * @packageDocumentation
7
+ * @module codegen/integration-test-generator
8
+ *
9
+ * @see REQ-TST-002 - Integration Test Generation
10
+ * @see Article VII - Quality Assurance Standards
11
+ */
12
+ import type { TestFramework, AssertionStyle, TestMock } from './unit-test-generator.js';
13
+ /**
14
+ * Integration test type
15
+ */
16
+ export type IntegrationTestType = 'api' | 'database' | 'service' | 'component' | 'workflow' | 'event' | 'message-queue' | 'file-system' | 'external-service';
17
+ /**
18
+ * Test fixture
19
+ */
20
+ export interface TestFixture {
21
+ /** Fixture name */
22
+ name: string;
23
+ /** Fixture type */
24
+ type: 'database' | 'file' | 'mock-server' | 'state' | 'config';
25
+ /** Setup data */
26
+ data: unknown;
27
+ /** Cleanup required */
28
+ cleanupRequired: boolean;
29
+ }
30
+ /**
31
+ * Integration test scenario
32
+ */
33
+ export interface IntegrationTestScenario {
34
+ /** Scenario name */
35
+ name: string;
36
+ /** Description */
37
+ description: string;
38
+ /** Test type */
39
+ type: IntegrationTestType;
40
+ /** Components involved */
41
+ components: string[];
42
+ /** Preconditions */
43
+ preconditions: string[];
44
+ /** Steps */
45
+ steps: TestStep[];
46
+ /** Expected outcomes */
47
+ expectedOutcomes: ExpectedOutcome[];
48
+ /** Fixtures */
49
+ fixtures?: TestFixture[];
50
+ /** Mocks */
51
+ mocks?: TestMock[];
52
+ /** Timeout (ms) */
53
+ timeout?: number;
54
+ /** Tags */
55
+ tags?: string[];
56
+ }
57
+ /**
58
+ * Test step
59
+ */
60
+ export interface TestStep {
61
+ /** Step number */
62
+ order: number;
63
+ /** Action description */
64
+ action: string;
65
+ /** Target component */
66
+ target: string;
67
+ /** Method/endpoint */
68
+ method?: string;
69
+ /** Input data */
70
+ input?: unknown;
71
+ /** Wait condition */
72
+ waitFor?: string;
73
+ /** Delay (ms) */
74
+ delay?: number;
75
+ }
76
+ /**
77
+ * Expected outcome
78
+ */
79
+ export interface ExpectedOutcome {
80
+ /** Component */
81
+ component: string;
82
+ /** Assertion type */
83
+ type: 'state' | 'response' | 'event' | 'side-effect' | 'data';
84
+ /** Expected value */
85
+ expected: unknown;
86
+ /** Matcher */
87
+ matcher?: 'equals' | 'contains' | 'matches' | 'exists' | 'called';
88
+ }
89
+ /**
90
+ * API endpoint info
91
+ */
92
+ export interface ApiEndpointInfo {
93
+ /** HTTP method */
94
+ method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
95
+ /** Path */
96
+ path: string;
97
+ /** Base URL */
98
+ baseUrl?: string;
99
+ /** Headers */
100
+ headers?: Record<string, string>;
101
+ /** Query parameters */
102
+ queryParams?: Record<string, string>;
103
+ /** Request body schema */
104
+ requestBody?: Record<string, unknown>;
105
+ /** Response schema */
106
+ responseSchema?: Record<string, unknown>;
107
+ /** Authentication type */
108
+ auth?: 'none' | 'bearer' | 'basic' | 'api-key';
109
+ }
110
+ /**
111
+ * Service interaction info
112
+ */
113
+ export interface ServiceInteractionInfo {
114
+ /** Source service */
115
+ source: string;
116
+ /** Target service */
117
+ target: string;
118
+ /** Interaction type */
119
+ type: 'sync' | 'async' | 'event' | 'message';
120
+ /** Method/topic */
121
+ method: string;
122
+ /** Input */
123
+ input?: Record<string, unknown>;
124
+ /** Expected output */
125
+ output?: Record<string, unknown>;
126
+ }
127
+ /**
128
+ * Integration test suite
129
+ */
130
+ export interface IntegrationTestSuite {
131
+ /** Suite name */
132
+ name: string;
133
+ /** Description */
134
+ description: string;
135
+ /** Test type */
136
+ type: IntegrationTestType;
137
+ /** Scenarios */
138
+ scenarios: IntegrationTestScenario[];
139
+ /** Global fixtures */
140
+ fixtures: TestFixture[];
141
+ /** Global setup */
142
+ globalSetup?: string;
143
+ /** Global teardown */
144
+ globalTeardown?: string;
145
+ }
146
+ /**
147
+ * Generated integration test
148
+ */
149
+ export interface GeneratedIntegrationTest {
150
+ /** Test content */
151
+ content: string;
152
+ /** File path */
153
+ filePath: string;
154
+ /** Scenario count */
155
+ scenarioCount: number;
156
+ /** Fixtures used */
157
+ fixtures: string[];
158
+ /** External dependencies */
159
+ externalDependencies: string[];
160
+ /** Estimated duration (ms) */
161
+ estimatedDuration: number;
162
+ /** Warnings */
163
+ warnings: string[];
164
+ }
165
+ /**
166
+ * Integration test generator config
167
+ */
168
+ export interface IntegrationTestGeneratorConfig {
169
+ /** Test framework */
170
+ framework: TestFramework;
171
+ /** Assertion style */
172
+ assertionStyle: AssertionStyle;
173
+ /** Include fixtures */
174
+ includeFixtures: boolean;
175
+ /** Generate cleanup */
176
+ generateCleanup: boolean;
177
+ /** Default timeout */
178
+ defaultTimeout: number;
179
+ /** Test file suffix */
180
+ testFileSuffix: string;
181
+ /** Use containers */
182
+ useContainers: boolean;
183
+ /** Base URL for API tests */
184
+ apiBaseUrl: string;
185
+ /** Database connection string pattern */
186
+ dbConnectionPattern: string;
187
+ }
188
+ /**
189
+ * Default configuration
190
+ */
191
+ export declare const DEFAULT_INTEGRATION_CONFIG: IntegrationTestGeneratorConfig;
192
+ /**
193
+ * Integration Test Generator
194
+ */
195
+ export declare class IntegrationTestGenerator {
196
+ private config;
197
+ constructor(config?: Partial<IntegrationTestGeneratorConfig>);
198
+ /**
199
+ * Generate API integration tests
200
+ */
201
+ generateApiTests(endpoints: ApiEndpointInfo[], targetFile: string): GeneratedIntegrationTest;
202
+ /**
203
+ * Generate service integration tests
204
+ */
205
+ generateServiceTests(interactions: ServiceInteractionInfo[], targetFile: string): GeneratedIntegrationTest;
206
+ /**
207
+ * Generate database integration tests
208
+ */
209
+ generateDatabaseTests(operations: Array<{
210
+ name: string;
211
+ type: 'insert' | 'update' | 'delete' | 'select' | 'transaction';
212
+ table: string;
213
+ data?: unknown;
214
+ }>, targetFile: string): GeneratedIntegrationTest;
215
+ /**
216
+ * Generate workflow integration tests
217
+ */
218
+ generateWorkflowTests(workflows: Array<{
219
+ name: string;
220
+ steps: string[];
221
+ expectedState: Record<string, unknown>;
222
+ }>, targetFile: string): GeneratedIntegrationTest;
223
+ /**
224
+ * Generate from scenarios
225
+ */
226
+ generateFromScenarios(scenarios: IntegrationTestScenario[], suiteName: string, targetFile: string): GeneratedIntegrationTest;
227
+ /**
228
+ * Create API scenario
229
+ */
230
+ private createApiScenario;
231
+ /**
232
+ * Create service scenario
233
+ */
234
+ private createServiceScenario;
235
+ /**
236
+ * Create database scenario
237
+ */
238
+ private createDatabaseScenario;
239
+ /**
240
+ * Create workflow scenario
241
+ */
242
+ private createWorkflowScenario;
243
+ /**
244
+ * Generate test file
245
+ */
246
+ private generateTestFile;
247
+ /**
248
+ * Generate imports
249
+ */
250
+ private generateImports;
251
+ /**
252
+ * Generate fixture setup
253
+ */
254
+ private generateFixtureSetup;
255
+ /**
256
+ * Generate scenario test
257
+ */
258
+ private generateScenarioTest;
259
+ /**
260
+ * Generate API test
261
+ */
262
+ private generateApiTest;
263
+ /**
264
+ * Generate database test
265
+ */
266
+ private generateDatabaseTest;
267
+ /**
268
+ * Generate service test
269
+ */
270
+ private generateServiceTest;
271
+ /**
272
+ * Generate workflow test
273
+ */
274
+ private generateWorkflowTest;
275
+ /**
276
+ * Generate generic test
277
+ */
278
+ private generateGenericTest;
279
+ /**
280
+ * Generate database setup
281
+ */
282
+ private generateDatabaseSetup;
283
+ /**
284
+ * Generate database teardown
285
+ */
286
+ private generateDatabaseTeardown;
287
+ /**
288
+ * Collect fixtures from scenarios
289
+ */
290
+ private collectFixtures;
291
+ /**
292
+ * Collect external dependencies
293
+ */
294
+ private collectExternalDependencies;
295
+ /**
296
+ * Estimate duration
297
+ */
298
+ private estimateDuration;
299
+ /**
300
+ * Get test file path
301
+ */
302
+ private getTestFilePath;
303
+ /**
304
+ * Generate warnings
305
+ */
306
+ private generateWarnings;
307
+ }
308
+ /**
309
+ * Create integration test generator instance
310
+ */
311
+ export declare function createIntegrationTestGenerator(config?: Partial<IntegrationTestGeneratorConfig>): IntegrationTestGenerator;
312
+ //# sourceMappingURL=integration-test-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integration-test-generator.d.ts","sourceRoot":"","sources":["../../src/codegen/integration-test-generator.ts"],"names":[],"mappings":"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"}