@sprucelabs/spruce-cli 19.1.40 → 19.1.42

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 (837) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/build/.spruce/errors/errors.types.js.map +1 -1
  3. package/build/.spruce/errors/options.types.js.map +1 -1
  4. package/build/.spruce/errors/spruceCli/actionCancelled.schema.js.map +1 -1
  5. package/build/.spruce/errors/spruceCli/bootError.schema.js.map +1 -1
  6. package/build/.spruce/errors/spruceCli/buildFailed.schema.js.map +1 -1
  7. package/build/.spruce/errors/spruceCli/cacheNotEnabled.schema.js.map +1 -1
  8. package/build/.spruce/errors/spruceCli/commandAborted.schema.js.map +1 -1
  9. package/build/.spruce/errors/spruceCli/commandBlocked.schema.js.map +1 -1
  10. package/build/.spruce/errors/spruceCli/commandNotImplemented.schema.js.map +1 -1
  11. package/build/.spruce/errors/spruceCli/createAutoloaderFailed.schema.js.map +1 -1
  12. package/build/.spruce/errors/spruceCli/dependencyExists.schema.js.map +1 -1
  13. package/build/.spruce/errors/spruceCli/deployFailed.schema.js.map +1 -1
  14. package/build/.spruce/errors/spruceCli/directoryEmpty.schema.js.map +1 -1
  15. package/build/.spruce/errors/spruceCli/directoryNotSkill.schema.js.map +1 -1
  16. package/build/.spruce/errors/spruceCli/dockerNotStarted.schema.js.map +1 -1
  17. package/build/.spruce/errors/spruceCli/executingCommandFailed.schema.js.map +1 -1
  18. package/build/.spruce/errors/spruceCli/failedToImport.schema.js.map +1 -1
  19. package/build/.spruce/errors/spruceCli/featureNotInstalled.schema.js.map +1 -1
  20. package/build/.spruce/errors/spruceCli/fileExists.schema.js.map +1 -1
  21. package/build/.spruce/errors/spruceCli/generic.schema.js.map +1 -1
  22. package/build/.spruce/errors/spruceCli/invalidCommand.schema.js.map +1 -1
  23. package/build/.spruce/errors/spruceCli/invalidEventContract.schema.js.map +1 -1
  24. package/build/.spruce/errors/spruceCli/invalidFeatureCode.schema.js.map +1 -1
  25. package/build/.spruce/errors/spruceCli/invalidTestDirectory.schema.js.map +1 -1
  26. package/build/.spruce/errors/spruceCli/lintFailed.schema.js.map +1 -1
  27. package/build/.spruce/errors/spruceCli/mercuryResponseError.schema.js.map +1 -1
  28. package/build/.spruce/errors/spruceCli/missingDependencies.schema.js.map +1 -1
  29. package/build/.spruce/errors/spruceCli/missingDependenciesDependency.schema.js.map +1 -1
  30. package/build/.spruce/errors/spruceCli/noOrganizationsFound.schema.js.map +1 -1
  31. package/build/.spruce/errors/spruceCli/noSkillsRegistered.schema.js.map +1 -1
  32. package/build/.spruce/errors/spruceCli/notImplemented.schema.js.map +1 -1
  33. package/build/.spruce/errors/spruceCli/notLoggedIn.schema.js.map +1 -1
  34. package/build/.spruce/errors/spruceCli/schemaExists.schema.js.map +1 -1
  35. package/build/.spruce/errors/spruceCli/schemaFailedToImport.schema.js.map +1 -1
  36. package/build/.spruce/errors/spruceCli/schemaTemplateItemBuildingFailed.schema.js.map +1 -1
  37. package/build/.spruce/errors/spruceCli/skillNotFound.schema.js.map +1 -1
  38. package/build/.spruce/errors/spruceCli/skillNotRegistered.schema.js.map +1 -1
  39. package/build/.spruce/errors/spruceCli/skillViewExists.schema.js.map +1 -1
  40. package/build/.spruce/errors/spruceCli/storeExists.schema.js.map +1 -1
  41. package/build/.spruce/errors/spruceCli/testFailed.schema.js.map +1 -1
  42. package/build/.spruce/errors/spruceCli/themeExists.schema.js.map +1 -1
  43. package/build/.spruce/errors/spruceCli/transportAlreadyExists.schema.js.map +1 -1
  44. package/build/.spruce/errors/spruceCli/vscodeNotInstalled.schema.js.map +1 -1
  45. package/build/.spruce/events/events.contract.js.map +1 -1
  46. package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js.map +1 -1
  47. package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js.map +1 -1
  48. package/build/.spruce/events/heartwood/getActiveTheme.v2021_02_11.contract.js.map +1 -1
  49. package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js.map +1 -1
  50. package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.js.map +1 -1
  51. package/build/.spruce/events/heartwood/registerDashboardCards.v2021_02_11.contract.js.map +1 -1
  52. package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js.map +1 -1
  53. package/build/.spruce/events/heartwood/upsertTheme.v2021_02_11.contract.js.map +1 -1
  54. package/build/.spruce/events/spruceCli/registerSkillViews.v2021_04_11.contract.js.map +1 -1
  55. package/build/.spruce/schemas/fields/fieldClassMap.js.map +1 -1
  56. package/build/.spruce/schemas/fields/fields.types.js.map +1 -1
  57. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitPayload.schema.js.map +1 -1
  58. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTarget.schema.js.map +1 -1
  59. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  60. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitPayload.schema.js.map +1 -1
  61. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTarget.schema.js.map +1 -1
  62. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTargetAndPayload.schema.js.map +1 -1
  63. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlResponsePayload.schema.js.map +1 -1
  64. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTarget.schema.js.map +1 -1
  65. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTargetAndPayload.schema.js.map +1 -1
  66. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeResponsePayload.schema.js.map +1 -1
  67. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  68. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsResponsePayload.schema.js.map +1 -1
  69. package/build/.spruce/schemas/heartwood/v2021_02_11/getViewControllersEmitTarget.schema.js.map +1 -1
  70. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.js.map +1 -1
  71. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.js.map +1 -1
  72. package/build/.spruce/schemas/heartwood/v2021_02_11/registerDashboardCardsResponsePayload.schema.js.map +1 -1
  73. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitPayload.schema.js.map +1 -1
  74. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  75. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsResponsePayload.schema.js.map +1 -1
  76. package/build/.spruce/schemas/heartwood/v2021_02_11/theme.schema.js.map +1 -1
  77. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitPayload.schema.js.map +1 -1
  78. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTarget.schema.js.map +1 -1
  79. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTargetAndPayload.schema.js.map +1 -1
  80. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeResponsePayload.schema.js.map +1 -1
  81. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/theme.schema.js.map +1 -1
  82. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/themeProps.schema.js.map +1 -1
  83. package/build/.spruce/schemas/schemas.types.js.map +1 -1
  84. package/build/.spruce/schemas/spruce/v2020_07_22/choice.schema.js.map +1 -1
  85. package/build/.spruce/schemas/spruce/v2020_07_22/link.schema.js.map +1 -1
  86. package/build/.spruce/schemas/spruce/v2020_07_22/location.schema.js.map +1 -1
  87. package/build/.spruce/schemas/spruce/v2020_07_22/message.schema.js.map +1 -1
  88. package/build/.spruce/schemas/spruce/v2020_07_22/messageSource.schema.js.map +1 -1
  89. package/build/.spruce/schemas/spruce/v2020_07_22/messageTarget.schema.js.map +1 -1
  90. package/build/.spruce/schemas/spruce/v2020_07_22/organization.schema.js.map +1 -1
  91. package/build/.spruce/schemas/spruce/v2020_07_22/person.schema.js.map +1 -1
  92. package/build/.spruce/schemas/spruce/v2020_07_22/personLocation.schema.js.map +1 -1
  93. package/build/.spruce/schemas/spruce/v2020_07_22/personOrganization.schema.js.map +1 -1
  94. package/build/.spruce/schemas/spruce/v2020_07_22/role.schema.js.map +1 -1
  95. package/build/.spruce/schemas/spruce/v2020_07_22/sendMessage.schema.js.map +1 -1
  96. package/build/.spruce/schemas/spruce/v2020_07_22/skill.schema.js.map +1 -1
  97. package/build/.spruce/schemas/spruce/v2020_07_22/skillCreator.schema.js.map +1 -1
  98. package/build/.spruce/schemas/spruceCli/v2020_07_22/actionResponse.schema.js.map +1 -1
  99. package/build/.spruce/schemas/spruceCli/v2020_07_22/bootSkillOptions.schema.js.map +1 -1
  100. package/build/.spruce/schemas/spruceCli/v2020_07_22/createConversationTopicOptions.schema.js.map +1 -1
  101. package/build/.spruce/schemas/spruceCli/v2020_07_22/createErrorOptions.schema.js.map +1 -1
  102. package/build/.spruce/schemas/spruceCli/v2020_07_22/createOrganizationOptions.schema.js.map +1 -1
  103. package/build/.spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema.js.map +1 -1
  104. package/build/.spruce/schemas/spruceCli/v2020_07_22/createTestOptions.schema.js.map +1 -1
  105. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedDir.schema.js.map +1 -1
  106. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedFile.schema.js.map +1 -1
  107. package/build/.spruce/schemas/spruceCli/v2020_07_22/installSkillAtOrganizationOptions.schema.js.map +1 -1
  108. package/build/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.js.map +1 -1
  109. package/build/.spruce/schemas/spruceCli/v2020_07_22/namedTemplateItem.schema.js.map +1 -1
  110. package/build/.spruce/schemas/spruceCli/v2020_07_22/nodeFeatureOptions.schema.js.map +1 -1
  111. package/build/.spruce/schemas/spruceCli/v2020_07_22/npmPackage.schema.js.map +1 -1
  112. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboardOptions.schema.js.map +1 -1
  113. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboarding.schema.js.map +1 -1
  114. package/build/.spruce/schemas/spruceCli/v2020_07_22/personWithToken.schema.js.map +1 -1
  115. package/build/.spruce/schemas/spruceCli/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.schema.js.map +1 -1
  116. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.js.map +1 -1
  117. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema.js.map +1 -1
  118. package/build/.spruce/schemas/spruceCli/v2020_07_22/skillFeature.schema.js.map +1 -1
  119. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema.js.map +1 -1
  120. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema.js.map +1 -1
  121. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemaFieldsOptions.schema.js.map +1 -1
  122. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema.js.map +1 -1
  123. package/build/.spruce/schemas/spruceCli/v2020_07_22/testOptions.schema.js.map +1 -1
  124. package/build/.spruce/schemas/spruceCli/v2020_07_22/upgradeSkillOptions.schema.js.map +1 -1
  125. package/build/.spruce/schemas/spruceCli/v2020_07_22/watcherDidDetectChangesEmitPayload.schema.js.map +1 -1
  126. package/build/.spruce/schemas/spruceEventUtils/v2021_09_13/eventSource.schema.js.map +1 -1
  127. package/build/.spruce/skill.types.js.map +1 -1
  128. package/build/GlobalEmitter.js +4 -5
  129. package/build/GlobalEmitter.js.map +1 -1
  130. package/build/InFlightEntertainment.js.map +1 -1
  131. package/build/__tests__/behavioral/AddingADependency.test.js +7 -8
  132. package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
  133. package/build/__tests__/behavioral/BlockingCommands.test.js +7 -8
  134. package/build/__tests__/behavioral/BlockingCommands.test.js.map +1 -1
  135. package/build/__tests__/behavioral/BootingTheCli.test.js +4 -5
  136. package/build/__tests__/behavioral/BootingTheCli.test.js.map +1 -1
  137. package/build/__tests__/behavioral/BootingWithBadFiles.test.js +4 -5
  138. package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
  139. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js +4 -5
  140. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js.map +1 -1
  141. package/build/__tests__/behavioral/DeployingASkill.test.js +9 -10
  142. package/build/__tests__/behavioral/DeployingASkill.test.js.map +1 -1
  143. package/build/__tests__/behavioral/DeployingToSandbox.test.js +8 -9
  144. package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
  145. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js +4 -5
  146. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js.map +1 -1
  147. package/build/__tests__/behavioral/GettingCliVersion.test.js +5 -6
  148. package/build/__tests__/behavioral/GettingCliVersion.test.js.map +1 -1
  149. package/build/__tests__/behavioral/ManagingDependencies.test.js +7 -8
  150. package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
  151. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js +7 -8
  152. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js.map +1 -1
  153. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js +4 -5
  154. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
  155. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js +7 -8
  156. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
  157. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js +7 -8
  158. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
  159. package/build/__tests__/behavioral/SettingRemote.test.js +7 -8
  160. package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
  161. package/build/__tests__/behavioral/SettingUpVscode.test.js +4 -5
  162. package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
  163. package/build/__tests__/behavioral/TestingAConversation.test.js +4 -5
  164. package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
  165. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js +4 -5
  166. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js.map +1 -1
  167. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js +4 -5
  168. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js.map +1 -1
  169. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js +4 -5
  170. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js.map +1 -1
  171. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js +4 -5
  172. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js.map +1 -1
  173. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js +8 -9
  174. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
  175. package/build/__tests__/behavioral/events/CreatingAListener.test.js +8 -9
  176. package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
  177. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js +7 -8
  178. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
  179. package/build/__tests__/behavioral/events/EventWriter.test.js +4 -5
  180. package/build/__tests__/behavioral/events/EventWriter.test.js.map +1 -1
  181. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js +4 -5
  182. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js.map +1 -1
  183. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js +7 -8
  184. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
  185. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js +4 -5
  186. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js.map +1 -1
  187. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js +4 -5
  188. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js.map +1 -1
  189. package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js +7 -8
  190. package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js.map +1 -1
  191. package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js +5 -6
  192. package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js.map +1 -1
  193. package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js +8 -9
  194. package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js.map +1 -1
  195. package/build/__tests__/behavioral/events/SettingUpEvents.test.js +4 -5
  196. package/build/__tests__/behavioral/events/SettingUpEvents.test.js.map +1 -1
  197. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js +5 -6
  198. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
  199. package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js +7 -8
  200. package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js.map +1 -1
  201. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js +4 -5
  202. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js.map +1 -1
  203. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js +5 -7
  204. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
  205. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js +4 -5
  206. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js.map +1 -1
  207. package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js +4 -5
  208. package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js.map +1 -1
  209. package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js +4 -5
  210. package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js.map +1 -1
  211. package/build/__tests__/behavioral/permissions/PermissionStore.test.js +8 -9
  212. package/build/__tests__/behavioral/permissions/PermissionStore.test.js.map +1 -1
  213. package/build/__tests__/behavioral/permissions/PermissionWriter.test.js +4 -5
  214. package/build/__tests__/behavioral/permissions/PermissionWriter.test.js.map +1 -1
  215. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js +8 -10
  216. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js.map +1 -1
  217. package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js +5 -6
  218. package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js.map +1 -1
  219. package/build/__tests__/behavioral/permissions/support/generateShortAlphaId.js.map +1 -1
  220. package/build/__tests__/behavioral/permissions/support/renderPermissionTestFile.js.map +1 -1
  221. package/build/__tests__/behavioral/permissions/support/sortPermissionContracts.js.map +1 -1
  222. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js +4 -5
  223. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js.map +1 -1
  224. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js +4 -5
  225. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js.map +1 -1
  226. package/build/__tests__/behavioral/polish/SettingUpPolish.test.js +4 -5
  227. package/build/__tests__/behavioral/polish/SettingUpPolish.test.js.map +1 -1
  228. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js +4 -5
  229. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js.map +1 -1
  230. package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js +4 -5
  231. package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js.map +1 -1
  232. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js +4 -5
  233. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js.map +1 -1
  234. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js +4 -5
  235. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
  236. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js +4 -5
  237. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js.map +1 -1
  238. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js +4 -5
  239. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js.map +1 -1
  240. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js +8 -9
  241. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
  242. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js +4 -5
  243. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js.map +1 -1
  244. package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js +9 -10
  245. package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
  246. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js +4 -5
  247. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js.map +1 -1
  248. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js +4 -5
  249. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
  250. package/build/__tests__/behavioral/skill/BootingASkill.test.js +7 -8
  251. package/build/__tests__/behavioral/skill/BootingASkill.test.js.map +1 -1
  252. package/build/__tests__/behavioral/skill/CreatingASkill.test.js +5 -6
  253. package/build/__tests__/behavioral/skill/CreatingASkill.test.js.map +1 -1
  254. package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js +5 -6
  255. package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js.map +1 -1
  256. package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js +8 -9
  257. package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js.map +1 -1
  258. package/build/__tests__/behavioral/skill/RebuildingASkill.test.js +7 -8
  259. package/build/__tests__/behavioral/skill/RebuildingASkill.test.js.map +1 -1
  260. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js +19 -14
  261. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js.map +1 -1
  262. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js +4 -5
  263. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js.map +1 -1
  264. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js +7 -8
  265. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js.map +1 -1
  266. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js +8 -9
  267. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
  268. package/build/__tests__/behavioral/tests/CreatingATest.test.js +4 -5
  269. package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
  270. package/build/__tests__/behavioral/tests/RunningTests.test.js +8 -9
  271. package/build/__tests__/behavioral/tests/RunningTests.test.js.map +1 -1
  272. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +4 -5
  273. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
  274. package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js +7 -8
  275. package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js.map +1 -1
  276. package/build/__tests__/behavioral/tests/SettingUpTests.test.js +4 -5
  277. package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
  278. package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js +4 -5
  279. package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js.map +1 -1
  280. package/build/__tests__/behavioral/tests/TestingDataStores.test.js +7 -8
  281. package/build/__tests__/behavioral/tests/TestingDataStores.test.js.map +1 -1
  282. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js +8 -9
  283. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -1
  284. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js +8 -9
  285. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -1
  286. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js +5 -6
  287. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
  288. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js +5 -6
  289. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -1
  290. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js +5 -6
  291. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -1
  292. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js +8 -9
  293. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
  294. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js +5 -6
  295. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
  296. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.d.ts +5 -0
  297. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js +238 -74
  298. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -1
  299. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js +4 -5
  300. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
  301. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js +5 -6
  302. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -1
  303. package/build/__tests__/behavioral/views/CreatingASkillView.test.js +8 -9
  304. package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
  305. package/build/__tests__/behavioral/views/CreatingATheme.test.js +7 -8
  306. package/build/__tests__/behavioral/views/CreatingATheme.test.js.map +1 -1
  307. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js +8 -9
  308. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js.map +1 -1
  309. package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js +7 -8
  310. package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js.map +1 -1
  311. package/build/__tests__/behavioral/views/SettingUpViews.test.js +4 -5
  312. package/build/__tests__/behavioral/views/SettingUpViews.test.js.map +1 -1
  313. package/build/__tests__/behavioral/views/TestingViewControllers.test.js +8 -9
  314. package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
  315. package/build/__tests__/behavioral/views/WatchingSkillViews.test.js +8 -9
  316. package/build/__tests__/behavioral/views/WatchingSkillViews.test.js.map +1 -1
  317. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js +4 -5
  318. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js.map +1 -1
  319. package/build/__tests__/implementation/ActionExecuter.test.js +4 -5
  320. package/build/__tests__/implementation/ActionExecuter.test.js.map +1 -1
  321. package/build/__tests__/implementation/ActionExecuter2.test.js +4 -5
  322. package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
  323. package/build/__tests__/implementation/ActionExecuter3.test.js +4 -5
  324. package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
  325. package/build/__tests__/implementation/ActionExecuter4.test.js +5 -6
  326. package/build/__tests__/implementation/ActionExecuter4.test.js.map +1 -1
  327. package/build/__tests__/implementation/ArgParser.test.js +4 -5
  328. package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
  329. package/build/__tests__/implementation/BuildService.test.js +4 -5
  330. package/build/__tests__/implementation/BuildService.test.js.map +1 -1
  331. package/build/__tests__/implementation/BulkImporting.test.js +7 -8
  332. package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
  333. package/build/__tests__/implementation/CachingImports.test.js +8 -9
  334. package/build/__tests__/implementation/CachingImports.test.js.map +1 -1
  335. package/build/__tests__/implementation/CommandOptionBuilder.test.js +4 -5
  336. package/build/__tests__/implementation/CommandOptionBuilder.test.js.map +1 -1
  337. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js +8 -9
  338. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
  339. package/build/__tests__/implementation/DataStoreStore.test.js +8 -9
  340. package/build/__tests__/implementation/DataStoreStore.test.js.map +1 -1
  341. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js +4 -5
  342. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js.map +1 -1
  343. package/build/__tests__/implementation/EventContractCleanerUtil.test.js +4 -5
  344. package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
  345. package/build/__tests__/implementation/EventStore.test.js +8 -9
  346. package/build/__tests__/implementation/EventStore.test.js.map +1 -1
  347. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js +8 -9
  348. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
  349. package/build/__tests__/implementation/FeatureCommandAttacher.test.js +8 -9
  350. package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
  351. package/build/__tests__/implementation/FeatureFixture.test.js +8 -9
  352. package/build/__tests__/implementation/FeatureFixture.test.js.map +1 -1
  353. package/build/__tests__/implementation/FeatureInstaller.test.js +8 -9
  354. package/build/__tests__/implementation/FeatureInstaller.test.js.map +1 -1
  355. package/build/__tests__/implementation/FeaturesUtil.test.js +4 -5
  356. package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
  357. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js +7 -8
  358. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js.map +1 -1
  359. package/build/__tests__/implementation/GlobalEmitter.test.js +4 -5
  360. package/build/__tests__/implementation/GlobalEmitter.test.js.map +1 -1
  361. package/build/__tests__/implementation/Introspection.test.js +4 -5
  362. package/build/__tests__/implementation/Introspection.test.js.map +1 -1
  363. package/build/__tests__/implementation/JestJsonParser.test.js +8 -9
  364. package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
  365. package/build/__tests__/implementation/LintService.test.js +4 -5
  366. package/build/__tests__/implementation/LintService.test.js.map +1 -1
  367. package/build/__tests__/implementation/ListenerStore.test.js +4 -5
  368. package/build/__tests__/implementation/ListenerStore.test.js.map +1 -1
  369. package/build/__tests__/implementation/OnboardingScriptLoader.test.js +7 -8
  370. package/build/__tests__/implementation/OnboardingScriptLoader.test.js.map +1 -1
  371. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js +8 -9
  372. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js.map +1 -1
  373. package/build/__tests__/implementation/OnboardingStore.test.js +8 -9
  374. package/build/__tests__/implementation/OnboardingStore.test.js.map +1 -1
  375. package/build/__tests__/implementation/OrganizationStore.test.js +4 -5
  376. package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
  377. package/build/__tests__/implementation/ParentTestFinder.test.js +4 -5
  378. package/build/__tests__/implementation/ParentTestFinder.test.js.map +1 -1
  379. package/build/__tests__/implementation/PkgService.test.js +8 -9
  380. package/build/__tests__/implementation/PkgService.test.js.map +1 -1
  381. package/build/__tests__/implementation/SchemaStore.test.js +4 -5
  382. package/build/__tests__/implementation/SchemaStore.test.js.map +1 -1
  383. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js +8 -9
  384. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js.map +1 -1
  385. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js +8 -9
  386. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js.map +1 -1
  387. package/build/__tests__/implementation/ServiceFactory.test.js +8 -9
  388. package/build/__tests__/implementation/ServiceFactory.test.js.map +1 -1
  389. package/build/__tests__/implementation/SettingUpANodeModule.test.js +4 -5
  390. package/build/__tests__/implementation/SettingUpANodeModule.test.js.map +1 -1
  391. package/build/__tests__/implementation/SkillStore.test.js +8 -9
  392. package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
  393. package/build/__tests__/implementation/StoreFeature.test.js +4 -5
  394. package/build/__tests__/implementation/StoreFeature.test.js.map +1 -1
  395. package/build/__tests__/implementation/TestReporter.test.js +8 -9
  396. package/build/__tests__/implementation/TestReporter.test.js.map +1 -1
  397. package/build/__tests__/implementation/TestRunner.test.js +8 -9
  398. package/build/__tests__/implementation/TestRunner.test.js.map +1 -1
  399. package/build/__tests__/implementation/ValueTypeMapping.test.js +5 -6
  400. package/build/__tests__/implementation/ValueTypeMapping.test.js.map +1 -1
  401. package/build/__tests__/implementation/Widgets.test.js +8 -9
  402. package/build/__tests__/implementation/Widgets.test.js.map +1 -1
  403. package/build/__tests__/support/EventFaker.d.ts +2 -0
  404. package/build/__tests__/support/EventFaker.js +54 -0
  405. package/build/__tests__/support/EventFaker.js.map +1 -1
  406. package/build/__tests__/support/onTestFileResult.js.map +1 -1
  407. package/build/__tests__/support/scripts/first.script.js.map +1 -1
  408. package/build/__tests__/support/scripts/second.script.js.map +1 -1
  409. package/build/__tests__/support/scripts/third.test.script.js.map +1 -1
  410. package/build/addons/filePrompt.addon.js.map +1 -1
  411. package/build/boot.js.map +1 -1
  412. package/build/cli/Cli.js.map +1 -1
  413. package/build/components/AbstractComponent.js.map +1 -1
  414. package/build/components/FormComponent.js +5 -6
  415. package/build/components/FormComponent.js.map +1 -1
  416. package/build/components/QuizComponent.js.map +1 -1
  417. package/build/constants.js.map +1 -1
  418. package/build/errors/SpruceError.js +5 -6
  419. package/build/errors/SpruceError.js.map +1 -1
  420. package/build/errors/actionCancelled.builder.js.map +1 -1
  421. package/build/errors/bootError.builder.js.map +1 -1
  422. package/build/errors/buildFailed.builder.js.map +1 -1
  423. package/build/errors/cacheNotEnabled.builder.js.map +1 -1
  424. package/build/errors/commandAborted.builder.js.map +1 -1
  425. package/build/errors/commandBlocked.builder.js.map +1 -1
  426. package/build/errors/commandNotImplemented.builder.js.map +1 -1
  427. package/build/errors/createAutoloaderFailed.builder.js.map +1 -1
  428. package/build/errors/dependencyExists.builder.js.map +1 -1
  429. package/build/errors/deployFailed.builder.js.map +1 -1
  430. package/build/errors/directoryEmpty.builder.js.map +1 -1
  431. package/build/errors/directoryNotSkill.builder.js.map +1 -1
  432. package/build/errors/dockerNotStarted.builder.js.map +1 -1
  433. package/build/errors/executingCommandFailed.builder.js.map +1 -1
  434. package/build/errors/failedToImport.builder.js.map +1 -1
  435. package/build/errors/featureNotInstalled.builder.js.map +1 -1
  436. package/build/errors/fileExists.builder.js.map +1 -1
  437. package/build/errors/generic.builder.js.map +1 -1
  438. package/build/errors/invalidCommand.builder.js.map +1 -1
  439. package/build/errors/invalidEventContract.builder.js.map +1 -1
  440. package/build/errors/invalidFeatureCode.builder.js.map +1 -1
  441. package/build/errors/invalidTestDirectory.builder.js.map +1 -1
  442. package/build/errors/lintFailed.builder.js.map +1 -1
  443. package/build/errors/mercuryResponseError.builder.js.map +1 -1
  444. package/build/errors/missingDependencies.builder.js.map +1 -1
  445. package/build/errors/noOrganizationsFound.builder.js.map +1 -1
  446. package/build/errors/noSkillsRegistered.builder.js.map +1 -1
  447. package/build/errors/notImplemented.builder.js.map +1 -1
  448. package/build/errors/notLoggedIn.builder.js.map +1 -1
  449. package/build/errors/schemaExists.builder.js.map +1 -1
  450. package/build/errors/schemaFailedToImport.builder.js.map +1 -1
  451. package/build/errors/schemaTemplateItemBuildingFailed.builder.js.map +1 -1
  452. package/build/errors/skillNotFound.builder.js.map +1 -1
  453. package/build/errors/skillNotRegistered.builder.js.map +1 -1
  454. package/build/errors/skillViewExists.builder.js.map +1 -1
  455. package/build/errors/storeExists.builder.js.map +1 -1
  456. package/build/errors/testFailed.builder.js.map +1 -1
  457. package/build/errors/themeExists.builder.js.map +1 -1
  458. package/build/errors/transportAlreadyExists.builder.js.map +1 -1
  459. package/build/errors/vscodeNotInstalled.builder.js.map +1 -1
  460. package/build/features/AbstractAction.js.map +1 -1
  461. package/build/features/AbstractFeature.js.map +1 -1
  462. package/build/features/ActionExecuter.js.map +1 -1
  463. package/build/features/ActionFactory.d.ts +1 -2
  464. package/build/features/ActionFactory.js.map +1 -1
  465. package/build/features/ActionQuestionAsker.js.map +1 -1
  466. package/build/features/FeatureCommandAttacher.js.map +1 -1
  467. package/build/features/FeatureInstaller.js.map +1 -1
  468. package/build/features/FeatureInstallerFactory.js.map +1 -1
  469. package/build/features/OverrideActionDecorator.js.map +1 -1
  470. package/build/features/cache/CacheFeature.js +5 -6
  471. package/build/features/cache/CacheFeature.js.map +1 -1
  472. package/build/features/cache/actions/DisableAction.js +5 -6
  473. package/build/features/cache/actions/DisableAction.js.map +1 -1
  474. package/build/features/cache/actions/EnableAction.js +5 -6
  475. package/build/features/cache/actions/EnableAction.js.map +1 -1
  476. package/build/features/cache/constants.js.map +1 -1
  477. package/build/features/conversation/ConversationFeature.js +5 -6
  478. package/build/features/conversation/ConversationFeature.js.map +1 -1
  479. package/build/features/conversation/actions/CreateAction.js +5 -6
  480. package/build/features/conversation/actions/CreateAction.js.map +1 -1
  481. package/build/features/conversation/actions/TestAction.js +5 -6
  482. package/build/features/conversation/actions/TestAction.js.map +1 -1
  483. package/build/features/conversation/stores/ConversationStore.js +5 -6
  484. package/build/features/conversation/stores/ConversationStore.js.map +1 -1
  485. package/build/features/conversation/writers/ConversationWriter.js +4 -5
  486. package/build/features/conversation/writers/ConversationWriter.js.map +1 -1
  487. package/build/features/dependencies/DependencyFeature.js +5 -6
  488. package/build/features/dependencies/DependencyFeature.js.map +1 -1
  489. package/build/features/dependencies/actions/AddAction.js +5 -6
  490. package/build/features/dependencies/actions/AddAction.js.map +1 -1
  491. package/build/features/dependencies/actions/ManageAction.js +5 -6
  492. package/build/features/dependencies/actions/ManageAction.js.map +1 -1
  493. package/build/features/deploy/DeployFeature.js +5 -6
  494. package/build/features/deploy/DeployFeature.js.map +1 -1
  495. package/build/features/deploy/actions/HerokuAction.js +5 -6
  496. package/build/features/deploy/actions/HerokuAction.js.map +1 -1
  497. package/build/features/deploy/writers/DeployWriter.js +4 -5
  498. package/build/features/deploy/writers/DeployWriter.js.map +1 -1
  499. package/build/features/error/ErrorFeature.js +5 -6
  500. package/build/features/error/ErrorFeature.js.map +1 -1
  501. package/build/features/error/ParentTestFinder.js.map +1 -1
  502. package/build/features/error/actions/CreateAction.js +5 -6
  503. package/build/features/error/actions/CreateAction.js.map +1 -1
  504. package/build/features/error/actions/SyncAction.js +5 -6
  505. package/build/features/error/actions/SyncAction.js.map +1 -1
  506. package/build/features/error/writers/ErrorWriter.js +4 -5
  507. package/build/features/error/writers/ErrorWriter.js.map +1 -1
  508. package/build/features/event/EventFeature.js +5 -6
  509. package/build/features/event/EventFeature.js.map +1 -1
  510. package/build/features/event/actions/CreateAction.js +5 -6
  511. package/build/features/event/actions/CreateAction.js.map +1 -1
  512. package/build/features/event/actions/ListenAction.js +5 -6
  513. package/build/features/event/actions/ListenAction.js.map +1 -1
  514. package/build/features/event/actions/SetRemoteAction.js +5 -6
  515. package/build/features/event/actions/SetRemoteAction.js.map +1 -1
  516. package/build/features/event/actions/SyncAction.js +5 -6
  517. package/build/features/event/actions/SyncAction.js.map +1 -1
  518. package/build/features/event/actions/SyncListenersAction.js +5 -6
  519. package/build/features/event/actions/SyncListenersAction.js.map +1 -1
  520. package/build/features/event/builders/EventContractBuilder.js.map +1 -1
  521. package/build/features/event/builders/ListenerTemplateItemBuilder.js.map +1 -1
  522. package/build/features/event/services/EventSettingsService.js.map +1 -1
  523. package/build/features/event/services/RemoteService.js.map +1 -1
  524. package/build/features/event/stores/EventStore.js +5 -6
  525. package/build/features/event/stores/EventStore.js.map +1 -1
  526. package/build/features/event/stores/ListenerStore.js +5 -6
  527. package/build/features/event/stores/ListenerStore.js.map +1 -1
  528. package/build/features/event/writers/EventWriter.js +4 -5
  529. package/build/features/event/writers/EventWriter.js.map +1 -1
  530. package/build/features/eventContract/EventContractFeature.js +5 -6
  531. package/build/features/eventContract/EventContractFeature.js.map +1 -1
  532. package/build/features/eventContract/actions/PullAction.js +5 -6
  533. package/build/features/eventContract/actions/PullAction.js.map +1 -1
  534. package/build/features/feature.utilities.js.map +1 -1
  535. package/build/features/features.types.js.map +1 -1
  536. package/build/features/log/LogFeature.js +5 -6
  537. package/build/features/log/LogFeature.js.map +1 -1
  538. package/build/features/log/actions/CreateTransportAction.js +5 -6
  539. package/build/features/log/actions/CreateTransportAction.js.map +1 -1
  540. package/build/features/log/writers/LogWriter.js +4 -5
  541. package/build/features/log/writers/LogWriter.js.map +1 -1
  542. package/build/features/node/NodeFeature.js +5 -6
  543. package/build/features/node/NodeFeature.js.map +1 -1
  544. package/build/features/node/actions/CreateAction.js +5 -6
  545. package/build/features/node/actions/CreateAction.js.map +1 -1
  546. package/build/features/node/actions/UpdateDependenciesAction.js +5 -6
  547. package/build/features/node/actions/UpdateDependenciesAction.js.map +1 -1
  548. package/build/features/node/actions/UpgradeAction.js +13 -11
  549. package/build/features/node/actions/UpgradeAction.js.map +1 -1
  550. package/build/features/node/writers/NodeWriter.js +4 -5
  551. package/build/features/node/writers/NodeWriter.js.map +1 -1
  552. package/build/features/onboard/OnboardFeature.js +5 -6
  553. package/build/features/onboard/OnboardFeature.js.map +1 -1
  554. package/build/features/onboard/ScriptLoader.js.map +1 -1
  555. package/build/features/onboard/ScriptPlayer.js.map +1 -1
  556. package/build/features/onboard/actions/OnboardAction.js +5 -6
  557. package/build/features/onboard/actions/OnboardAction.js.map +1 -1
  558. package/build/features/onboard/scripts/onboarding.first.script.js.map +1 -1
  559. package/build/features/onboard/scripts/onboarding.immersive.script.js.map +1 -1
  560. package/build/features/onboard/scripts/onboarding.returning.script.js.map +1 -1
  561. package/build/features/onboard/scripts/onboarding.short.script.js.map +1 -1
  562. package/build/features/onboard/scripts/todo/todo.create.skill.script.js.map +1 -1
  563. package/build/features/onboard/scripts/todo/todo.test.script.js.map +1 -1
  564. package/build/features/onboard/scripts/wrongCommand.script.js.map +1 -1
  565. package/build/features/onboard/stores/OnboardingStore.js +5 -6
  566. package/build/features/onboard/stores/OnboardingStore.js.map +1 -1
  567. package/build/features/organization/OrganizationFeature.js +5 -6
  568. package/build/features/organization/OrganizationFeature.js.map +1 -1
  569. package/build/features/organization/actions/CreateAction.js +5 -6
  570. package/build/features/organization/actions/CreateAction.js.map +1 -1
  571. package/build/features/organization/actions/InstallAction.js +5 -6
  572. package/build/features/organization/actions/InstallAction.js.map +1 -1
  573. package/build/features/organization/stores/OrganizationStore.js +5 -6
  574. package/build/features/organization/stores/OrganizationStore.js.map +1 -1
  575. package/build/features/permission/PermissionFeature.js +5 -6
  576. package/build/features/permission/PermissionFeature.js.map +1 -1
  577. package/build/features/permission/actions/CreateAction.js +5 -6
  578. package/build/features/permission/actions/CreateAction.js.map +1 -1
  579. package/build/features/permission/actions/SyncAction.js +5 -6
  580. package/build/features/permission/actions/SyncAction.js.map +1 -1
  581. package/build/features/permission/stores/PermissionStore.js +5 -6
  582. package/build/features/permission/stores/PermissionStore.js.map +1 -1
  583. package/build/features/permission/writers/PermissionWriter.js +4 -5
  584. package/build/features/permission/writers/PermissionWriter.js.map +1 -1
  585. package/build/features/person/PersonFeature.js +5 -6
  586. package/build/features/person/PersonFeature.js.map +1 -1
  587. package/build/features/person/actions/LoginAction.js +5 -6
  588. package/build/features/person/actions/LoginAction.js.map +1 -1
  589. package/build/features/person/actions/LogoutAction.js +5 -6
  590. package/build/features/person/actions/LogoutAction.js.map +1 -1
  591. package/build/features/person/actions/WhoamiAction.js +5 -6
  592. package/build/features/person/actions/WhoamiAction.js.map +1 -1
  593. package/build/features/polish/PolishFeature.js +5 -6
  594. package/build/features/polish/PolishFeature.js.map +1 -1
  595. package/build/features/polish/actions/SetupAction.js +5 -6
  596. package/build/features/polish/actions/SetupAction.js.map +1 -1
  597. package/build/features/polish/writers/PolishWriter.js +4 -5
  598. package/build/features/polish/writers/PolishWriter.js.map +1 -1
  599. package/build/features/sandbox/SandboxFeature.js +5 -6
  600. package/build/features/sandbox/SandboxFeature.js.map +1 -1
  601. package/build/features/sandbox/actions/SetupAction.js +5 -6
  602. package/build/features/sandbox/actions/SetupAction.js.map +1 -1
  603. package/build/features/sandbox/writers/SandboxWriter.js +4 -5
  604. package/build/features/sandbox/writers/SandboxWriter.js.map +1 -1
  605. package/build/features/schema/SchemaFeature.js +5 -6
  606. package/build/features/schema/SchemaFeature.js.map +1 -1
  607. package/build/features/schema/ValueTypeBuilder.js.map +1 -1
  608. package/build/features/schema/actions/CreateAction.js +5 -6
  609. package/build/features/schema/actions/CreateAction.js.map +1 -1
  610. package/build/features/schema/actions/SyncAction.js +5 -6
  611. package/build/features/schema/actions/SyncAction.js.map +1 -1
  612. package/build/features/schema/actions/SyncFieldsAction.js +5 -6
  613. package/build/features/schema/actions/SyncFieldsAction.js.map +1 -1
  614. package/build/features/schema/services/SchemaService.js +4 -5
  615. package/build/features/schema/services/SchemaService.js.map +1 -1
  616. package/build/features/schema/stores/SchemaStore.js +5 -6
  617. package/build/features/schema/stores/SchemaStore.js.map +1 -1
  618. package/build/features/schema/utilities/schema.utility.js.map +1 -1
  619. package/build/features/schema/utilities/schemaDisk.utility.js.map +1 -1
  620. package/build/features/schema/utilities/schemaGenerator.utility.js.map +1 -1
  621. package/build/features/schema/writers/SchemaWriter.js +5 -6
  622. package/build/features/schema/writers/SchemaWriter.js.map +1 -1
  623. package/build/features/skill/SkillFeature.js +5 -6
  624. package/build/features/skill/SkillFeature.js.map +1 -1
  625. package/build/features/skill/actions/BootAction.js +5 -6
  626. package/build/features/skill/actions/BootAction.js.map +1 -1
  627. package/build/features/skill/actions/CreateAction.js +5 -6
  628. package/build/features/skill/actions/CreateAction.js.map +1 -1
  629. package/build/features/skill/actions/DashboardAction.js +5 -6
  630. package/build/features/skill/actions/DashboardAction.js.map +1 -1
  631. package/build/features/skill/actions/LoginAction.js +5 -6
  632. package/build/features/skill/actions/LoginAction.js.map +1 -1
  633. package/build/features/skill/actions/RebuildAction.js +5 -6
  634. package/build/features/skill/actions/RebuildAction.js.map +1 -1
  635. package/build/features/skill/actions/RegisterAction.js +5 -6
  636. package/build/features/skill/actions/RegisterAction.js.map +1 -1
  637. package/build/features/skill/stores/SkillStore.js +5 -6
  638. package/build/features/skill/stores/SkillStore.js.map +1 -1
  639. package/build/features/skill/updaters/Updater.js.map +1 -1
  640. package/build/features/skill/writers/SkillWriter.js +4 -5
  641. package/build/features/skill/writers/SkillWriter.js.map +1 -1
  642. package/build/features/store/StoreFeature.js +5 -6
  643. package/build/features/store/StoreFeature.js.map +1 -1
  644. package/build/features/store/actions/CreateAction.js +5 -6
  645. package/build/features/store/actions/CreateAction.js.map +1 -1
  646. package/build/features/store/actions/SyncAction.js +5 -6
  647. package/build/features/store/actions/SyncAction.js.map +1 -1
  648. package/build/features/store/stores/StoreStore.js +5 -6
  649. package/build/features/store/stores/StoreStore.js.map +1 -1
  650. package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js.map +1 -1
  651. package/build/features/store/writers/StoreWriter.js +4 -5
  652. package/build/features/store/writers/StoreWriter.js.map +1 -1
  653. package/build/features/test/TestFeature.js +5 -6
  654. package/build/features/test/TestFeature.js.map +1 -1
  655. package/build/features/test/TestLogItemGenerator.js.map +1 -1
  656. package/build/features/test/TestReporter.js +2 -2
  657. package/build/features/test/TestReporter.js.map +1 -1
  658. package/build/features/test/TestRunner.js +5 -6
  659. package/build/features/test/TestRunner.js.map +1 -1
  660. package/build/features/test/actions/CreateAction.js +5 -6
  661. package/build/features/test/actions/CreateAction.js.map +1 -1
  662. package/build/features/test/actions/SetupAction.js +5 -6
  663. package/build/features/test/actions/SetupAction.js.map +1 -1
  664. package/build/features/test/actions/TestAction.js +5 -6
  665. package/build/features/test/actions/TestAction.js.map +1 -1
  666. package/build/features/test/test.types.js.map +1 -1
  667. package/build/features/test/writers/TestWriter.js +4 -5
  668. package/build/features/test/writers/TestWriter.js.map +1 -1
  669. package/build/features/universalDevDependencies.js.map +1 -1
  670. package/build/features/universalFileDescriptions.js.map +1 -1
  671. package/build/features/universalScripts.js.map +1 -1
  672. package/build/features/validateAndNormalize.utility.js.map +1 -1
  673. package/build/features/view/ViewFeature.js +5 -6
  674. package/build/features/view/ViewFeature.js.map +1 -1
  675. package/build/features/view/actions/CreateAction.js +5 -6
  676. package/build/features/view/actions/CreateAction.js.map +1 -1
  677. package/build/features/view/actions/CreateThemeAction.js +5 -6
  678. package/build/features/view/actions/CreateThemeAction.js.map +1 -1
  679. package/build/features/view/actions/SyncAction.js +5 -6
  680. package/build/features/view/actions/SyncAction.js.map +1 -1
  681. package/build/features/view/actions/WatchAction.js +5 -6
  682. package/build/features/view/actions/WatchAction.js.map +1 -1
  683. package/build/features/view/stores/ViewStore.js +5 -6
  684. package/build/features/view/stores/ViewStore.js.map +1 -1
  685. package/build/features/view/writers/ViewWriter.js +4 -5
  686. package/build/features/view/writers/ViewWriter.js.map +1 -1
  687. package/build/features/vscode/VsCodeFeature.js +5 -6
  688. package/build/features/vscode/VsCodeFeature.js.map +1 -1
  689. package/build/features/vscode/actions/SetupAction.js +5 -6
  690. package/build/features/vscode/actions/SetupAction.js.map +1 -1
  691. package/build/features/vscode/services/VsCodeService.js +4 -5
  692. package/build/features/vscode/services/VsCodeService.js.map +1 -1
  693. package/build/features/vscode/writers/VsCodeWriter.js +4 -5
  694. package/build/features/vscode/writers/VsCodeWriter.js.map +1 -1
  695. package/build/features/watch/WatchFeature.js +5 -6
  696. package/build/features/watch/WatchFeature.js.map +1 -1
  697. package/build/index.js.map +1 -1
  698. package/build/interfaces/SpyInterface.js.map +1 -1
  699. package/build/interfaces/TerminalInterface.js.map +1 -1
  700. package/build/schemas/v2020_07_22/actionResponse.builder.js.map +1 -1
  701. package/build/schemas/v2020_07_22/bootSkillOptions.builder.js.map +1 -1
  702. package/build/schemas/v2020_07_22/createConversationTopicOptions.builder.js.map +1 -1
  703. package/build/schemas/v2020_07_22/createErrorOptions.builder.js.map +1 -1
  704. package/build/schemas/v2020_07_22/createOrganizationOptions.builder.js.map +1 -1
  705. package/build/schemas/v2020_07_22/createSchemaOptions.builder.js.map +1 -1
  706. package/build/schemas/v2020_07_22/createTestOptions.builder.js.map +1 -1
  707. package/build/schemas/v2020_07_22/generatedFile.builder.js.map +1 -1
  708. package/build/schemas/v2020_07_22/installSkillAtOrganizationOptions.builder.js.map +1 -1
  709. package/build/schemas/v2020_07_22/listenEventOptions.builder.js.map +1 -1
  710. package/build/schemas/v2020_07_22/namedTemplateItem.builder.js.map +1 -1
  711. package/build/schemas/v2020_07_22/nodeFeatureOptions.builder.js.map +1 -1
  712. package/build/schemas/v2020_07_22/onboardOptions.builder.js.map +1 -1
  713. package/build/schemas/v2020_07_22/onboarding.builder.js.map +1 -1
  714. package/build/schemas/v2020_07_22/personWithToken.builder.js.map +1 -1
  715. package/build/schemas/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.builder.js.map +1 -1
  716. package/build/schemas/v2020_07_22/setupTestsOptions.builder.js.map +1 -1
  717. package/build/schemas/v2020_07_22/setupVscodeOptions.builder.js.map +1 -1
  718. package/build/schemas/v2020_07_22/skillFeature.builder.js.map +1 -1
  719. package/build/schemas/v2020_07_22/syncErrorOptions.builder.js.map +1 -1
  720. package/build/schemas/v2020_07_22/syncEventOptions.builder.js.map +1 -1
  721. package/build/schemas/v2020_07_22/syncSchemaFieldsOptions.builder.js.map +1 -1
  722. package/build/schemas/v2020_07_22/syncSchemasOptions.builder.js.map +1 -1
  723. package/build/schemas/v2020_07_22/testOptions.builder.js.map +1 -1
  724. package/build/schemas/v2020_07_22/upgradeSkillOptions.builder.js.map +1 -1
  725. package/build/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.js.map +1 -1
  726. package/build/services/BuildService.js.map +1 -1
  727. package/build/services/CommandService.js.map +1 -1
  728. package/build/services/DependencyService.js.map +1 -1
  729. package/build/services/GameService.js.map +1 -1
  730. package/build/services/ImportService.js.map +1 -1
  731. package/build/services/LintService.js.map +1 -1
  732. package/build/services/PkgService.js +5 -6
  733. package/build/services/PkgService.js.map +1 -1
  734. package/build/services/ServiceFactory.d.ts +7 -4
  735. package/build/services/ServiceFactory.js +15 -0
  736. package/build/services/ServiceFactory.js.map +1 -1
  737. package/build/services/TypeCheckerService.js.map +1 -1
  738. package/build/stores/AbstractLocalStore.js +4 -5
  739. package/build/stores/AbstractLocalStore.js.map +1 -1
  740. package/build/stores/AbstractStore.js.map +1 -1
  741. package/build/stores/StoreFactory.js.map +1 -1
  742. package/build/templateItemBuilders/EventTemplateItemBuilder.js.map +1 -1
  743. package/build/templateItemBuilders/FieldTemplateItemBuilder.js.map +1 -1
  744. package/build/templateItemBuilders/SchemaTemplateItemBuilder.js.map +1 -1
  745. package/build/tests/AbstractCliTest.d.ts +2 -0
  746. package/build/tests/AbstractCliTest.js +10 -7
  747. package/build/tests/AbstractCliTest.js.map +1 -1
  748. package/build/tests/AbstractErrorTest.js +4 -5
  749. package/build/tests/AbstractErrorTest.js.map +1 -1
  750. package/build/tests/AbstractEventTest.js +4 -5
  751. package/build/tests/AbstractEventTest.js.map +1 -1
  752. package/build/tests/AbstractSchemaTest.js +4 -5
  753. package/build/tests/AbstractSchemaTest.js.map +1 -1
  754. package/build/tests/AbstractSkillTest.js +5 -6
  755. package/build/tests/AbstractSkillTest.js.map +1 -1
  756. package/build/tests/AbstractTestTest.js +4 -5
  757. package/build/tests/AbstractTestTest.js.map +1 -1
  758. package/build/tests/CommandFaker.js.map +1 -1
  759. package/build/tests/JestJsonParser.js.map +1 -1
  760. package/build/tests/MockProgramFactory.js.map +1 -1
  761. package/build/tests/buildTestCache.js.map +1 -1
  762. package/build/tests/cleanTestCache.js.map +1 -1
  763. package/build/tests/cleanTestData.js.map +1 -1
  764. package/build/tests/constants.js.map +1 -1
  765. package/build/tests/fixtures/FeatureFixture.js.map +1 -1
  766. package/build/tests/fixtures/MercuryFixture.js.map +1 -1
  767. package/build/tests/fixtures/OrganizationFixture.js.map +1 -1
  768. package/build/tests/fixtures/PersonFixture.js.map +1 -1
  769. package/build/tests/fixtures/SkillFixture.js.map +1 -1
  770. package/build/tests/fixtures/ViewFixture.js.map +1 -1
  771. package/build/tests/utilities/test.utility.js.map +1 -1
  772. package/build/tests/utilities/uiAssert.utility.js.map +1 -1
  773. package/build/types/apiClient.types.js.map +1 -1
  774. package/build/types/cli.types.js.map +1 -1
  775. package/build/types/graphicsInterface.types.js.map +1 -1
  776. package/build/updaters/ScriptUpdater.js.map +1 -1
  777. package/build/utilities/action.utility.js.map +1 -1
  778. package/build/utilities/apiClient.utility.js.map +1 -1
  779. package/build/utilities/argParser.utility.js.map +1 -1
  780. package/build/utilities/commander.utility.js.map +1 -1
  781. package/build/utilities/duration.utility.js.map +1 -1
  782. package/build/utilities/eventContractCleaner.utility.js.map +1 -1
  783. package/build/utilities/form.utility.js.map +1 -1
  784. package/build/utilities/introspection.utility.js.map +1 -1
  785. package/build/utilities/isCi.js.map +1 -1
  786. package/build/utilities/tsConfig.utility.js.map +1 -1
  787. package/build/utilities/ui.utility.js.map +1 -1
  788. package/build/widgets/Theme.js.map +1 -1
  789. package/build/widgets/WidgetFactory.js.map +1 -1
  790. package/build/widgets/keySelectChoices.js.map +1 -1
  791. package/build/widgets/terminalKit/TKButtonWidget.js +5 -6
  792. package/build/widgets/terminalKit/TKButtonWidget.js.map +1 -1
  793. package/build/widgets/terminalKit/TkBaseWidget.js +6 -7
  794. package/build/widgets/terminalKit/TkBaseWidget.js.map +1 -1
  795. package/build/widgets/terminalKit/TkInputWidget.js +5 -6
  796. package/build/widgets/terminalKit/TkInputWidget.js.map +1 -1
  797. package/build/widgets/terminalKit/TkLayoutCellWidget.js +6 -7
  798. package/build/widgets/terminalKit/TkLayoutCellWidget.js.map +1 -1
  799. package/build/widgets/terminalKit/TkLayoutWidget.js +5 -6
  800. package/build/widgets/terminalKit/TkLayoutWidget.js.map +1 -1
  801. package/build/widgets/terminalKit/TkMenuBarWidget.js +5 -6
  802. package/build/widgets/terminalKit/TkMenuBarWidget.js.map +1 -1
  803. package/build/widgets/terminalKit/TkPopupWidget.js +6 -7
  804. package/build/widgets/terminalKit/TkPopupWidget.js.map +1 -1
  805. package/build/widgets/terminalKit/TkProgressBarWidget.js +5 -6
  806. package/build/widgets/terminalKit/TkProgressBarWidget.js.map +1 -1
  807. package/build/widgets/terminalKit/TkTextWidget.js +5 -6
  808. package/build/widgets/terminalKit/TkTextWidget.js.map +1 -1
  809. package/build/widgets/terminalKit/TkWindowWidget.js +5 -6
  810. package/build/widgets/terminalKit/TkWindowWidget.js.map +1 -1
  811. package/build/widgets/terminalKit/termKit.utility.js.map +1 -1
  812. package/build/widgets/types/button.types.js.map +1 -1
  813. package/build/widgets/types/factory.types.js.map +1 -1
  814. package/build/widgets/types/input.types.js.map +1 -1
  815. package/build/widgets/types/layout.types.js.map +1 -1
  816. package/build/widgets/types/menuBar.types.js.map +1 -1
  817. package/build/widgets/types/popup.types.js.map +1 -1
  818. package/build/widgets/types/progressBar.types.js.map +1 -1
  819. package/build/widgets/types/table.types.js.map +1 -1
  820. package/build/widgets/types/text.types.js.map +1 -1
  821. package/build/widgets/types/widgets.types.js.map +1 -1
  822. package/build/widgets/types/window.types.js.map +1 -1
  823. package/build/widgets/widget.utilities.js.map +1 -1
  824. package/build/writers/AbstractWriter.js.map +1 -1
  825. package/build/writers/WriterFactory.js.map +1 -1
  826. package/package.json +38 -38
  827. package/src/__tests__/behavioral/skill/RegisteringASkill.test.ts +3 -0
  828. package/src/__tests__/behavioral/upgrading/UpgradingASkill5.test.ts +72 -6
  829. package/src/__tests__/support/EventFaker.ts +22 -0
  830. package/src/components/FormComponent.ts +3 -2
  831. package/src/features/ActionFactory.ts +2 -3
  832. package/src/features/node/actions/UpgradeAction.ts +2 -0
  833. package/src/features/test/TestReporter.ts +2 -2
  834. package/src/features/watch/WatchFeature.ts +3 -6
  835. package/src/services/ServiceFactory.ts +37 -22
  836. package/src/stores/AbstractStore.ts +4 -3
  837. package/src/tests/AbstractCliTest.ts +5 -0
@@ -10,10 +10,10 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
10
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
11
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
13
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
16
14
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
17
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
18
  var _path = _interopRequireDefault(require("path"));
19
19
  var _mercuryEventEmitter = require("@sprucelabs/mercury-event-emitter");
@@ -24,8 +24,8 @@ var _SpruceError = _interopRequireDefault(require("../../errors/SpruceError"));
24
24
  var _JestJsonParser = _interopRequireDefault(require("../../tests/JestJsonParser"));
25
25
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26
26
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
28
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
27
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
28
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
29
29
  var testRunnerContract = (0, _mercuryTypes.buildEventContract)({
30
30
  eventSignatures: {
31
31
  'did-error': {
@@ -57,11 +57,10 @@ var testRunnerContract = (0, _mercuryTypes.buildEventContract)({
57
57
  });
58
58
  var TestRunner = exports["default"] = /*#__PURE__*/function (_AbstractEventEmitter) {
59
59
  (0, _inherits2["default"])(TestRunner, _AbstractEventEmitter);
60
- var _super = _createSuper(TestRunner);
61
60
  function TestRunner(options) {
62
61
  var _this;
63
62
  (0, _classCallCheck2["default"])(this, TestRunner);
64
- _this = _super.call(this, testRunnerContract);
63
+ _this = _callSuper(this, TestRunner, [testRunnerContract]);
65
64
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "cwd", void 0);
66
65
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "commandService", void 0);
67
66
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "wasKilled", false);
@@ -1 +1 @@
1
- {"version":3,"file":"TestRunner.js","names":["_path","_interopRequireDefault","require","_mercuryEventEmitter","_mercuryTypes","_schema","_spruceSkillUtils","_SpruceError","_JestJsonParser","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","testRunnerContract","buildEventContract","eventSignatures","emitPayloadSchema","buildSchema","id","fields","message","type","isRequired","results","options","valueType","TestRunner","exports","_AbstractEventEmitter","_inherits2","_super","_this","_classCallCheck2","_assertThisInitialized2","totalTestFiles","cwd","commandService","_createClass2","key","value","_run","_asyncToGenerator2","_regenerator","mark","_callee3","_options$debugPort","_options$pattern","_this2","jestPath","debugArgs","pattern","escapeShell","command","parser","wrap","_callee3$","_context3","prev","next","wasKilled","resolvePathToJest","debugPort","concat","cmd","replace","JestJsonParser","testResults","execute","forceColor","onError","_onError","_callee","data","isDebugMessaging","_callee$","_context","isDebugMessage","emit","stop","_x2","onData","_onData","_callee2","_callee2$","_context2","write","getResults","_x3","t0","abrupt","run","_x","search","hasFailedTests","_this$testResults$tot","totalFailed","hasSkippedTests","_this$testResults$tot2","totalSkipped","kill","fullPath","diskUtil","resolvePath","pathParts","split","pathUtil","sep","path","join","_toConsumableArray2","doesFileExist","pop","SpruceError","code","dir","AbstractEventEmitter"],"sources":["../../../src/features/test/TestRunner.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { AbstractEventEmitter } from '@sprucelabs/mercury-event-emitter'\nimport {\n\tbuildEventContract,\n\tMercuryEventEmitter,\n} from '@sprucelabs/mercury-types'\nimport { buildSchema } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../../errors/SpruceError'\nimport CommandService from '../../services/CommandService'\nimport JestJsonParser from '../../tests/JestJsonParser'\nimport { SpruceTestResults } from './test.types'\n\nconst testRunnerContract = buildEventContract({\n\teventSignatures: {\n\t\t'did-error': {\n\t\t\temitPayloadSchema: buildSchema({\n\t\t\t\tid: 'testRunnerDidErrorEmitPayload',\n\t\t\t\tfields: {\n\t\t\t\t\tmessage: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t},\n\t\t'did-update': {\n\t\t\temitPayloadSchema: buildSchema({\n\t\t\t\tid: 'testRunnerDidUpdateEmitPayload',\n\t\t\t\tfields: {\n\t\t\t\t\tresults: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tvalueType: 'SpruceTestResults',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t},\n\t},\n})\ntype TestRunnerContract = typeof testRunnerContract\n\nexport default class TestRunner extends AbstractEventEmitter<TestRunnerContract> {\n\tprivate cwd: string\n\tprivate commandService: CommandService\n\tprivate wasKilled = false\n\tprivate testResults: SpruceTestResults = { totalTestFiles: 0 }\n\n\tpublic constructor(options: { cwd: string; commandService: CommandService }) {\n\t\tsuper(testRunnerContract)\n\t\tthis.cwd = options.cwd\n\t\tthis.commandService = options.commandService\n\t}\n\n\tpublic async run(options?: {\n\t\tpattern?: string | null\n\t\tdebugPort?: number | null\n\t}): Promise<SpruceTestResults & { wasKilled: boolean }> {\n\t\tthis.wasKilled = false\n\n\t\tconst jestPath = this.resolvePathToJest()\n\t\tconst debugArgs =\n\t\t\t(options?.debugPort ?? 0) > 0 ? `--inspect=${options?.debugPort}` : ``\n\t\tconst pattern = options?.pattern ?? ''\n\t\tlet escapeShell = function (cmd: string) {\n\t\t\treturn '--testPathPattern=\"' + cmd.replace(/([\"\\s'$`\\\\])/g, '\\\\$1') + '\"'\n\t\t}\n\t\tconst command = `node --experimental-vm-modules --unhandled-rejections=strict ${debugArgs} ${jestPath} --reporters=\"@sprucelabs/jest-json-reporter\" --testRunner=\"jest-circus/runner\" --passWithNoTests ${\n\t\t\tpattern ? escapeShell(pattern) : ''\n\t\t}`\n\n\t\tconst parser = new JestJsonParser()\n\n\t\tthis.testResults = {\n\t\t\ttotalTestFiles: 0,\n\t\t}\n\n\t\ttry {\n\t\t\tawait this.commandService.execute(command, {\n\t\t\t\tforceColor: true,\n\t\t\t\tonError: async (data) => {\n\t\t\t\t\tconst isDebugMessaging = this.isDebugMessage(data)\n\n\t\t\t\t\tif (!isDebugMessaging) {\n\t\t\t\t\t\tawait (this as MercuryEventEmitter<TestRunnerContract>).emit(\n\t\t\t\t\t\t\t'did-error',\n\t\t\t\t\t\t\t{ message: data }\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tonData: async (data) => {\n\t\t\t\t\tparser.write(data)\n\t\t\t\t\tthis.testResults = parser.getResults()\n\t\t\t\t\tawait (this as MercuryEventEmitter<TestRunnerContract>).emit(\n\t\t\t\t\t\t'did-update',\n\t\t\t\t\t\t{ results: this.testResults }\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t})\n\t\t} catch (err) {\n\t\t\tif (!this.testResults.totalTestFiles) {\n\t\t\t\tthrow err\n\t\t\t}\n\t\t}\n\n\t\treturn { ...this.testResults, wasKilled: this.wasKilled }\n\t}\n\n\tprivate isDebugMessage(data: string) {\n\t\treturn (\n\t\t\tdata.search(/^ attached/i) === 0 ||\n\t\t\tdata.search(/^ listening/i) === 0 ||\n\t\t\tdata.search(/^waiting for the /i) === 0\n\t\t)\n\t}\n\n\tpublic hasFailedTests() {\n\t\treturn (this.testResults.totalFailed ?? 0) > 0\n\t}\n\n\tpublic hasSkippedTests() {\n\t\treturn (this.testResults.totalSkipped ?? 0) > 0\n\t}\n\n\tpublic kill() {\n\t\tthis.wasKilled = true\n\t\tthis.commandService.kill()\n\t}\n\n\tprivate resolvePathToJest() {\n\t\tconst jestPath = 'node_modules/.bin/jest'\n\t\tconst fullPath = diskUtil.resolvePath(this.cwd)\n\t\tconst pathParts = fullPath.split(pathUtil.sep)\n\n\t\twhile (pathParts.length > 0) {\n\t\t\tconst path =\n\t\t\t\tpathUtil.sep + pathUtil.join(...pathParts) + pathUtil.sep + jestPath\n\n\t\t\tif (diskUtil.doesFileExist(path)) {\n\t\t\t\treturn path\n\t\t\t}\n\n\t\t\tpathParts.pop()\n\t\t}\n\n\t\tthrow new SpruceError({ code: 'INVALID_TEST_DIRECTORY', dir: this.cwd })\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"TestRunner.js","names":["_path","_interopRequireDefault","require","_mercuryEventEmitter","_mercuryTypes","_schema","_spruceSkillUtils","_SpruceError","_JestJsonParser","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","testRunnerContract","buildEventContract","eventSignatures","emitPayloadSchema","buildSchema","id","fields","message","type","isRequired","results","options","valueType","TestRunner","exports","_AbstractEventEmitter","_inherits2","_this","_classCallCheck2","_assertThisInitialized2","totalTestFiles","cwd","commandService","_createClass2","key","value","_run","_asyncToGenerator2","_regenerator","mark","_callee3","_options$debugPort","_options$pattern","_this2","jestPath","debugArgs","pattern","escapeShell","command","parser","wrap","_callee3$","_context3","prev","next","wasKilled","resolvePathToJest","debugPort","concat","cmd","replace","JestJsonParser","testResults","execute","forceColor","onError","_onError","_callee","data","isDebugMessaging","_callee$","_context","isDebugMessage","emit","stop","_x2","onData","_onData","_callee2","_callee2$","_context2","write","getResults","_x3","t0","abrupt","run","_x","search","hasFailedTests","_this$testResults$tot","totalFailed","hasSkippedTests","_this$testResults$tot2","totalSkipped","kill","fullPath","diskUtil","resolvePath","pathParts","split","pathUtil","sep","path","join","_toConsumableArray2","doesFileExist","pop","SpruceError","code","dir","AbstractEventEmitter"],"sources":["../../../src/features/test/TestRunner.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { AbstractEventEmitter } from '@sprucelabs/mercury-event-emitter'\nimport {\n\tbuildEventContract,\n\tMercuryEventEmitter,\n} from '@sprucelabs/mercury-types'\nimport { buildSchema } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../../errors/SpruceError'\nimport CommandService from '../../services/CommandService'\nimport JestJsonParser from '../../tests/JestJsonParser'\nimport { SpruceTestResults } from './test.types'\n\nconst testRunnerContract = buildEventContract({\n\teventSignatures: {\n\t\t'did-error': {\n\t\t\temitPayloadSchema: buildSchema({\n\t\t\t\tid: 'testRunnerDidErrorEmitPayload',\n\t\t\t\tfields: {\n\t\t\t\t\tmessage: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t},\n\t\t'did-update': {\n\t\t\temitPayloadSchema: buildSchema({\n\t\t\t\tid: 'testRunnerDidUpdateEmitPayload',\n\t\t\t\tfields: {\n\t\t\t\t\tresults: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tvalueType: 'SpruceTestResults',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t},\n\t},\n})\ntype TestRunnerContract = typeof testRunnerContract\n\nexport default class TestRunner extends AbstractEventEmitter<TestRunnerContract> {\n\tprivate cwd: string\n\tprivate commandService: CommandService\n\tprivate wasKilled = false\n\tprivate testResults: SpruceTestResults = { totalTestFiles: 0 }\n\n\tpublic constructor(options: { cwd: string; commandService: CommandService }) {\n\t\tsuper(testRunnerContract)\n\t\tthis.cwd = options.cwd\n\t\tthis.commandService = options.commandService\n\t}\n\n\tpublic async run(options?: {\n\t\tpattern?: string | null\n\t\tdebugPort?: number | null\n\t}): Promise<SpruceTestResults & { wasKilled: boolean }> {\n\t\tthis.wasKilled = false\n\n\t\tconst jestPath = this.resolvePathToJest()\n\t\tconst debugArgs =\n\t\t\t(options?.debugPort ?? 0) > 0 ? `--inspect=${options?.debugPort}` : ``\n\t\tconst pattern = options?.pattern ?? ''\n\t\tlet escapeShell = function (cmd: string) {\n\t\t\treturn '--testPathPattern=\"' + cmd.replace(/([\"\\s'$`\\\\])/g, '\\\\$1') + '\"'\n\t\t}\n\t\tconst command = `node --experimental-vm-modules --unhandled-rejections=strict ${debugArgs} ${jestPath} --reporters=\"@sprucelabs/jest-json-reporter\" --testRunner=\"jest-circus/runner\" --passWithNoTests ${\n\t\t\tpattern ? escapeShell(pattern) : ''\n\t\t}`\n\n\t\tconst parser = new JestJsonParser()\n\n\t\tthis.testResults = {\n\t\t\ttotalTestFiles: 0,\n\t\t}\n\n\t\ttry {\n\t\t\tawait this.commandService.execute(command, {\n\t\t\t\tforceColor: true,\n\t\t\t\tonError: async (data) => {\n\t\t\t\t\tconst isDebugMessaging = this.isDebugMessage(data)\n\n\t\t\t\t\tif (!isDebugMessaging) {\n\t\t\t\t\t\tawait (this as MercuryEventEmitter<TestRunnerContract>).emit(\n\t\t\t\t\t\t\t'did-error',\n\t\t\t\t\t\t\t{ message: data }\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tonData: async (data) => {\n\t\t\t\t\tparser.write(data)\n\t\t\t\t\tthis.testResults = parser.getResults()\n\t\t\t\t\tawait (this as MercuryEventEmitter<TestRunnerContract>).emit(\n\t\t\t\t\t\t'did-update',\n\t\t\t\t\t\t{ results: this.testResults }\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t})\n\t\t} catch (err) {\n\t\t\tif (!this.testResults.totalTestFiles) {\n\t\t\t\tthrow err\n\t\t\t}\n\t\t}\n\n\t\treturn { ...this.testResults, wasKilled: this.wasKilled }\n\t}\n\n\tprivate isDebugMessage(data: string) {\n\t\treturn (\n\t\t\tdata.search(/^ attached/i) === 0 ||\n\t\t\tdata.search(/^ listening/i) === 0 ||\n\t\t\tdata.search(/^waiting for the /i) === 0\n\t\t)\n\t}\n\n\tpublic hasFailedTests() {\n\t\treturn (this.testResults.totalFailed ?? 0) > 0\n\t}\n\n\tpublic hasSkippedTests() {\n\t\treturn (this.testResults.totalSkipped ?? 0) > 0\n\t}\n\n\tpublic kill() {\n\t\tthis.wasKilled = true\n\t\tthis.commandService.kill()\n\t}\n\n\tprivate resolvePathToJest() {\n\t\tconst jestPath = 'node_modules/.bin/jest'\n\t\tconst fullPath = diskUtil.resolvePath(this.cwd)\n\t\tconst pathParts = fullPath.split(pathUtil.sep)\n\n\t\twhile (pathParts.length > 0) {\n\t\t\tconst path =\n\t\t\t\tpathUtil.sep + pathUtil.join(...pathParts) + pathUtil.sep + jestPath\n\n\t\t\tif (diskUtil.doesFileExist(path)) {\n\t\t\t\treturn path\n\t\t\t}\n\n\t\t\tpathParts.pop()\n\t\t}\n\n\t\tthrow new SpruceError({ code: 'INVALID_TEST_DIRECTORY', dir: this.cwd })\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AAIA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,iBAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAN,sBAAA,CAAAC,OAAA;AAEA,IAAAM,eAAA,GAAAP,sBAAA,CAAAC,OAAA;AAAuD,SAAAO,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAoB,WAAAlB,CAAA,EAAAI,CAAA,EAAAN,CAAA,WAAAM,CAAA,OAAAe,gBAAA,aAAAf,CAAA,OAAAgB,2BAAA,aAAApB,CAAA,EAAAqB,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAnB,CAAA,EAAAN,CAAA,YAAAqB,gBAAA,aAAAnB,CAAA,EAAAwB,WAAA,IAAApB,CAAA,CAAAK,KAAA,CAAAT,CAAA,EAAAF,CAAA;AAAA,SAAAuB,0BAAA,cAAArB,CAAA,IAAAyB,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAN,OAAA,CAAAC,SAAA,CAAAE,OAAA,iCAAAzB,CAAA,aAAAqB,yBAAA,YAAAA,0BAAA,aAAArB,CAAA;AAGvD,IAAM6B,kBAAkB,GAAG,IAAAC,gCAAkB,EAAC;EAC7CC,eAAe,EAAE;IAChB,WAAW,EAAE;MACZC,iBAAiB,EAAE,IAAAC,mBAAW,EAAC;QAC9BC,EAAE,EAAE,+BAA+B;QACnCC,MAAM,EAAE;UACPC,OAAO,EAAE;YACRC,IAAI,EAAE,MAAM;YACZC,UAAU,EAAE;UACb;QACD;MACD,CAAC;IACF,CAAC;IACD,YAAY,EAAE;MACbN,iBAAiB,EAAE,IAAAC,mBAAW,EAAC;QAC9BC,EAAE,EAAE,gCAAgC;QACpCC,MAAM,EAAE;UACPI,OAAO,EAAE;YACRF,IAAI,EAAE,KAAK;YACXC,UAAU,EAAE,IAAI;YAChBE,OAAO,EAAE;cACRC,SAAS,EAAE;YACZ;UACD;QACD;MACD,CAAC;IACF;EACD;AACD,CAAC,CAAC;AAAA,IAGmBC,UAAU,GAAAC,OAAA,qCAAAC,qBAAA;EAAA,IAAAC,UAAA,aAAAH,UAAA,EAAAE,qBAAA;EAM9B,SAAAF,WAAmBF,OAAwD,EAAE;IAAA,IAAAM,KAAA;IAAA,IAAAC,gBAAA,mBAAAL,UAAA;IAC5EI,KAAA,GAAA5B,UAAA,OAAAwB,UAAA,GAAMb,kBAAkB;IAAC,IAAAf,gBAAA,iBAAAkC,uBAAA,aAAAF,KAAA;IAAA,IAAAhC,gBAAA,iBAAAkC,uBAAA,aAAAF,KAAA;IAAA,IAAAhC,gBAAA,iBAAAkC,uBAAA,aAAAF,KAAA,gBAJN,KAAK;IAAA,IAAAhC,gBAAA,iBAAAkC,uBAAA,aAAAF,KAAA,kBACgB;MAAEG,cAAc,EAAE;IAAE,CAAC;IAI7DH,KAAA,CAAKI,GAAG,GAAGV,OAAO,CAACU,GAAG;IACtBJ,KAAA,CAAKK,cAAc,GAAGX,OAAO,CAACW,cAAc;IAAA,OAAAL,KAAA;EAC7C;EAAC,IAAAM,aAAA,aAAAV,UAAA;IAAAW,GAAA;IAAAC,KAAA;MAAA,IAAAC,IAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAED,SAAAC,SAAiBnB,OAGhB;QAAA,IAAAoB,kBAAA;UAAAC,gBAAA;UAAAC,MAAA;QAAA,IAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,EAAAC,WAAA,EAAAC,OAAA,EAAAC,MAAA;QAAA,OAAAX,YAAA,YAAAY,IAAA,UAAAC,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAC,IAAA,GAAAD,SAAA,CAAAE,IAAA;YAAA;cACA,IAAI,CAACC,SAAS,GAAG,KAAK;cAEhBX,QAAQ,GAAG,IAAI,CAACY,iBAAiB,CAAC,CAAC;cACnCX,SAAS,GACd,EAAAJ,kBAAA,GAACpB,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEoC,SAAS,cAAAhB,kBAAA,cAAAA,kBAAA,GAAI,CAAC,IAAI,CAAC,gBAAAiB,MAAA,CAAgBrC,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEoC,SAAS,MAAO;cACjEX,OAAO,IAAAJ,gBAAA,GAAGrB,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEyB,OAAO,cAAAJ,gBAAA,cAAAA,gBAAA,GAAI,EAAE;cAClCK,WAAW,GAAG,SAAdA,WAAWA,CAAaY,GAAW,EAAE;gBACxC,OAAO,qBAAqB,GAAGA,GAAG,CAACC,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,GAAG;cAC1E,CAAC;cACKZ,OAAO,mEAAAU,MAAA,CAAmEb,SAAS,OAAAa,MAAA,CAAId,QAAQ,4GAAAc,MAAA,CACpGZ,OAAO,GAAGC,WAAW,CAACD,OAAO,CAAC,GAAG,EAAE;cAG9BG,MAAM,GAAG,IAAIY,0BAAc,CAAC,CAAC;cAEnC,IAAI,CAACC,WAAW,GAAG;gBAClBhC,cAAc,EAAE;cACjB,CAAC;cAAAsB,SAAA,CAAAC,IAAA;cAAAD,SAAA,CAAAE,IAAA;cAAA,OAGM,IAAI,CAACtB,cAAc,CAAC+B,OAAO,CAACf,OAAO,EAAE;gBAC1CgB,UAAU,EAAE,IAAI;gBAChBC,OAAO;kBAAA,IAAAC,QAAA,OAAA7B,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAE,SAAA4B,QAAOC,IAAI;oBAAA,IAAAC,gBAAA;oBAAA,OAAA/B,YAAA,YAAAY,IAAA,UAAAoB,SAAAC,QAAA;sBAAA,kBAAAA,QAAA,CAAAlB,IAAA,GAAAkB,QAAA,CAAAjB,IAAA;wBAAA;0BACbe,gBAAgB,GAAG1B,MAAI,CAAC6B,cAAc,CAACJ,IAAI,CAAC;0BAAA,IAE7CC,gBAAgB;4BAAAE,QAAA,CAAAjB,IAAA;4BAAA;0BAAA;0BAAAiB,QAAA,CAAAjB,IAAA;0BAAA,OACbX,MAAI,CAA6C8B,IAAI,CAC3D,WAAW,EACX;4BAAExD,OAAO,EAAEmD;0BAAK,CACjB,CAAC;wBAAA;wBAAA;0BAAA,OAAAG,QAAA,CAAAG,IAAA;sBAAA;oBAAA,GAAAP,OAAA;kBAAA,CAEF;kBAAA,SAAAF,QAAAU,GAAA;oBAAA,OAAAT,QAAA,CAAA5E,KAAA,OAAAE,SAAA;kBAAA;kBAAA,OAAAyE,OAAA;gBAAA;gBACDW,MAAM;kBAAA,IAAAC,OAAA,OAAAxC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAE,SAAAuC,SAAOV,IAAI;oBAAA,OAAA9B,YAAA,YAAAY,IAAA,UAAA6B,UAAAC,SAAA;sBAAA,kBAAAA,SAAA,CAAA3B,IAAA,GAAA2B,SAAA,CAAA1B,IAAA;wBAAA;0BAClBL,MAAM,CAACgC,KAAK,CAACb,IAAI,CAAC;0BAClBzB,MAAI,CAACmB,WAAW,GAAGb,MAAM,CAACiC,UAAU,CAAC,CAAC;0BAAAF,SAAA,CAAA1B,IAAA;0BAAA,OAC/BX,MAAI,CAA6C8B,IAAI,CAC3D,YAAY,EACZ;4BAAErD,OAAO,EAAEuB,MAAI,CAACmB;0BAAY,CAC7B,CAAC;wBAAA;wBAAA;0BAAA,OAAAkB,SAAA,CAAAN,IAAA;sBAAA;oBAAA,GAAAI,QAAA;kBAAA,CACD;kBAAA,SAAAF,OAAAO,GAAA;oBAAA,OAAAN,OAAA,CAAAvF,KAAA,OAAAE,SAAA;kBAAA;kBAAA,OAAAoF,MAAA;gBAAA;cACF,CAAC,CAAC;YAAA;cAAAxB,SAAA,CAAAE,IAAA;cAAA;YAAA;cAAAF,SAAA,CAAAC,IAAA;cAAAD,SAAA,CAAAgC,EAAA,GAAAhC,SAAA;cAAA,IAEG,IAAI,CAACU,WAAW,CAAChC,cAAc;gBAAAsB,SAAA,CAAAE,IAAA;gBAAA;cAAA;cAAA,MAAAF,SAAA,CAAAgC,EAAA;YAAA;cAAA,OAAAhC,SAAA,CAAAiC,MAAA,WAAA9F,aAAA,CAAAA,aAAA,KAKzB,IAAI,CAACuE,WAAW;gBAAEP,SAAS,EAAE,IAAI,CAACA;cAAS;YAAA;YAAA;cAAA,OAAAH,SAAA,CAAAsB,IAAA;UAAA;QAAA,GAAAlC,QAAA;MAAA,CACvD;MAAA,SAAA8C,IAAAC,EAAA;QAAA,OAAAnD,IAAA,CAAA9C,KAAA,OAAAE,SAAA;MAAA;MAAA,OAAA8F,GAAA;IAAA;EAAA;IAAApD,GAAA;IAAAC,KAAA,EAED,SAAAqC,eAAuBJ,IAAY,EAAE;MACpC,OACCA,IAAI,CAACoB,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAChCpB,IAAI,CAACoB,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,IACjCpB,IAAI,CAACoB,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC;IAEzC;EAAC;IAAAtD,GAAA;IAAAC,KAAA,EAED,SAAAsD,eAAA,EAAwB;MAAA,IAAAC,qBAAA;MACvB,OAAO,EAAAA,qBAAA,GAAC,IAAI,CAAC5B,WAAW,CAAC6B,WAAW,cAAAD,qBAAA,cAAAA,qBAAA,GAAI,CAAC,IAAI,CAAC;IAC/C;EAAC;IAAAxD,GAAA;IAAAC,KAAA,EAED,SAAAyD,gBAAA,EAAyB;MAAA,IAAAC,sBAAA;MACxB,OAAO,EAAAA,sBAAA,GAAC,IAAI,CAAC/B,WAAW,CAACgC,YAAY,cAAAD,sBAAA,cAAAA,sBAAA,GAAI,CAAC,IAAI,CAAC;IAChD;EAAC;IAAA3D,GAAA;IAAAC,KAAA,EAED,SAAA4D,KAAA,EAAc;MACb,IAAI,CAACxC,SAAS,GAAG,IAAI;MACrB,IAAI,CAACvB,cAAc,CAAC+D,IAAI,CAAC,CAAC;IAC3B;EAAC;IAAA7D,GAAA;IAAAC,KAAA,EAED,SAAAqB,kBAAA,EAA4B;MAC3B,IAAMZ,QAAQ,GAAG,wBAAwB;MACzC,IAAMoD,QAAQ,GAAGC,0BAAQ,CAACC,WAAW,CAAC,IAAI,CAACnE,GAAG,CAAC;MAC/C,IAAMoE,SAAS,GAAGH,QAAQ,CAACI,KAAK,CAACC,gBAAQ,CAACC,GAAG,CAAC;MAE9C,OAAOH,SAAS,CAAC1G,MAAM,GAAG,CAAC,EAAE;QAC5B,IAAM8G,IAAI,GACTF,gBAAQ,CAACC,GAAG,GAAGD,gBAAQ,CAACG,IAAI,CAAAlH,KAAA,CAAb+G,gBAAQ,MAAAI,mBAAA,aAASN,SAAS,EAAC,GAAGE,gBAAQ,CAACC,GAAG,GAAG1D,QAAQ;QAErE,IAAIqD,0BAAQ,CAACS,aAAa,CAACH,IAAI,CAAC,EAAE;UACjC,OAAOA,IAAI;QACZ;QAEAJ,SAAS,CAACQ,GAAG,CAAC,CAAC;MAChB;MAEA,MAAM,IAAIC,uBAAW,CAAC;QAAEC,IAAI,EAAE,wBAAwB;QAAEC,GAAG,EAAE,IAAI,CAAC/E;MAAI,CAAC,CAAC;IACzE;EAAC;EAAA,OAAAR,UAAA;AAAA,EAxGsCwF,yCAAoB","ignoreList":[]}
@@ -10,10 +10,10 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
10
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
11
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
13
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
16
14
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
17
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
18
  var _path = _interopRequireDefault(require("path"));
19
19
  var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
@@ -21,18 +21,17 @@ var _createTestOptions = _interopRequireDefault(require("../../../.spruce/schema
21
21
  var _AbstractAction2 = _interopRequireDefault(require("../../AbstractAction"));
22
22
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
23
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
25
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
24
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
25
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
26
26
  var CreateAction = exports["default"] = /*#__PURE__*/function (_AbstractAction) {
27
27
  (0, _inherits2["default"])(CreateAction, _AbstractAction);
28
- var _super = _createSuper(CreateAction);
29
28
  function CreateAction() {
30
29
  var _this;
31
30
  (0, _classCallCheck2["default"])(this, CreateAction);
32
31
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
33
32
  args[_key] = arguments[_key];
34
33
  }
35
- _this = _super.call.apply(_super, [this].concat(args));
34
+ _this = _callSuper(this, CreateAction, [].concat(args));
36
35
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "optionsSchema", _createTestOptions["default"]);
37
36
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "invocationMessage", 'Creating a test... 🛡');
38
37
  return _this;
@@ -1 +1 @@
1
- {"version":3,"file":"CreateAction.js","names":["_path","_interopRequireDefault","require","_spruceSkillUtils","_createTestOptions","_AbstractAction2","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","CreateAction","exports","_AbstractAction","_inherits2","_super","_this","_classCallCheck2","_len","args","Array","_key","concat","_assertThisInitialized2","createTestActionSchema","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","normalizedOptions","testDestinationDir","namePascal","nameCamel","type","resolvedDestination","testFeature","parentTestClass","candidates","writer","results","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","diskUtil","resolvePath","cwd","ui","startLoading","parent","stopLoading","buildParentClassCandidates","sent","doesDirExist","promptForSubDir","promptForParentTestClassAndOptionallyInstallDependencies","Writer","generateTest","namesUtil","toPascal","abrupt","files","hints","stop","execute","_x","_promptForSubDir","_callee2","match","_callee2$","_context2","prompt","label","isRequired","defaultValue","path","_x2","_promptForParentTestClassAndOptionallyInstallDependencies","_callee3","idx","_callee3$","_context3","choices","_toConsumableArray2","map","candidate","optionallyInstallFeatureBasedOnSelection","buildParentClassFromCandidate","_x3","_x4","_x5","_optionallyInstallFeatureBasedOnSelection","_callee4","isInstalled","_callee4$","_context4","featureCode","features","name","install","code","_x6","_match$import","isDefaultExport","importPath","resolveRelativePath","replace","pathUtil","extname","AbstractAction"],"sources":["../../../../src/features/test/actions/CreateAction.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport createTestActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createTestOptions.schema'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\nimport TestFeature, { ParentClassCandidate } from '../TestFeature'\n\ntype OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptions\n\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = createTestActionSchema\n\tpublic invocationMessage = 'Creating a test... 🛡'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\t\tconst { testDestinationDir, namePascal, nameCamel, type } =\n\t\t\tnormalizedOptions\n\n\t\tlet resolvedDestination = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\ttestDestinationDir,\n\t\t\ttype\n\t\t)\n\n\t\tthis.ui.startLoading('Checking potential parent test classes')\n\n\t\tconst testFeature = this.parent as TestFeature\n\n\t\tthis.ui.stopLoading()\n\n\t\tlet parentTestClass:\n\t\t\t| undefined\n\t\t\t| { name: string; importPath: string; isDefaultExport: boolean }\n\n\t\tconst candidates = await testFeature.buildParentClassCandidates()\n\n\t\tif (diskUtil.doesDirExist(resolvedDestination)) {\n\t\t\tresolvedDestination = await this.promptForSubDir(resolvedDestination)\n\t\t}\n\n\t\tif (candidates.length > 0) {\n\t\t\tparentTestClass =\n\t\t\t\tawait this.promptForParentTestClassAndOptionallyInstallDependencies(\n\t\t\t\t\tcandidates,\n\t\t\t\t\tparentTestClass,\n\t\t\t\t\tresolvedDestination\n\t\t\t\t)\n\t\t}\n\n\t\tthis.ui.startLoading('Generating test file...')\n\n\t\tconst writer = this.Writer('test')\n\n\t\tconst results = await writer.generateTest(resolvedDestination, {\n\t\t\t...normalizedOptions,\n\t\t\ttype,\n\t\t\tnameCamel,\n\t\t\tparentTestClass,\n\t\t\tnamePascal: namePascal ?? namesUtil.toPascal(nameCamel),\n\t\t})\n\n\t\treturn {\n\t\t\tfiles: results,\n\t\t\thints: [\"run `spruce test` in your skill when you're ready!\"],\n\t\t}\n\t}\n\tprivate async promptForSubDir(resolvedDestination: string) {\n\t\tconst match = await this.ui.prompt({\n\t\t\ttype: 'directory',\n\t\t\tlabel: 'Where should I write this test?',\n\t\t\tisRequired: true,\n\t\t\tdefaultValue: {\n\t\t\t\tpath: diskUtil.resolvePath(resolvedDestination),\n\t\t\t},\n\t\t})\n\n\t\tresolvedDestination = diskUtil.resolvePath(resolvedDestination, match.path)\n\n\t\treturn resolvedDestination\n\t}\n\n\tprivate async promptForParentTestClassAndOptionallyInstallDependencies(\n\t\tcandidates: ParentClassCandidate[],\n\t\tparentTestClass:\n\t\t\t| { name: string; importPath: string; isDefaultExport: boolean }\n\t\t\t| undefined,\n\t\tresolvedDestination: string\n\t) {\n\t\tconst idx = await this.ui.prompt({\n\t\t\ttype: 'select',\n\t\t\tisRequired: true,\n\t\t\tlabel: 'Which abstract test class do you want to extend?',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{ value: '', label: 'AbstractSpruceTest (default)' },\n\t\t\t\t\t...candidates.map((candidate, idx) => ({\n\t\t\t\t\t\tvalue: `${idx}`,\n\t\t\t\t\t\tlabel: candidate.label,\n\t\t\t\t\t})),\n\t\t\t\t],\n\t\t\t},\n\t\t})\n\n\t\tif (idx !== '' && candidates[+idx]) {\n\t\t\tconst match = candidates[+idx]\n\n\t\t\tif (match) {\n\t\t\t\tawait this.optionallyInstallFeatureBasedOnSelection(match)\n\n\t\t\t\tparentTestClass = this.buildParentClassFromCandidate(\n\t\t\t\t\tmatch,\n\t\t\t\t\tresolvedDestination\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t\treturn parentTestClass\n\t}\n\n\tprivate async optionallyInstallFeatureBasedOnSelection(\n\t\tmatch: ParentClassCandidate\n\t) {\n\t\tif (match.featureCode) {\n\t\t\tconst isInstalled = await this.features.isInstalled(match.featureCode)\n\n\t\t\tif (!isInstalled) {\n\t\t\t\tthis.ui.startLoading(`Installing ${match.name}...`)\n\t\t\t\tawait this.features.install({\n\t\t\t\t\tfeatures: [{ code: match.featureCode as any }],\n\t\t\t\t})\n\t\t\t\tthis.ui.stopLoading()\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate buildParentClassFromCandidate(\n\t\tmatch: ParentClassCandidate,\n\t\tresolvedDestination: string\n\t): {\n\t\tname: string\n\t\tlabel: string\n\t\timportPath: string\n\t\tisDefaultExport: boolean\n\t} {\n\t\treturn {\n\t\t\tname: match.name,\n\t\t\tlabel: match.label,\n\t\t\tisDefaultExport: match.isDefaultExport,\n\t\t\timportPath:\n\t\t\t\tmatch.import ??\n\t\t\t\tdiskUtil.resolveRelativePath(\n\t\t\t\t\tresolvedDestination,\n\t\t\t\t\t//@ts-ignore\n\t\t\t\t\tmatch.path.replace(pathUtil.extname(match.path), '')\n\t\t\t\t),\n\t\t}\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"CreateAction.js","names":["_path","_interopRequireDefault","require","_spruceSkillUtils","_createTestOptions","_AbstractAction2","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","CreateAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","args","Array","_key","concat","_assertThisInitialized2","createTestActionSchema","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","normalizedOptions","testDestinationDir","namePascal","nameCamel","type","resolvedDestination","testFeature","parentTestClass","candidates","writer","results","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","diskUtil","resolvePath","cwd","ui","startLoading","parent","stopLoading","buildParentClassCandidates","sent","doesDirExist","promptForSubDir","promptForParentTestClassAndOptionallyInstallDependencies","Writer","generateTest","namesUtil","toPascal","abrupt","files","hints","stop","execute","_x","_promptForSubDir","_callee2","match","_callee2$","_context2","prompt","label","isRequired","defaultValue","path","_x2","_promptForParentTestClassAndOptionallyInstallDependencies","_callee3","idx","_callee3$","_context3","choices","_toConsumableArray2","map","candidate","optionallyInstallFeatureBasedOnSelection","buildParentClassFromCandidate","_x3","_x4","_x5","_optionallyInstallFeatureBasedOnSelection","_callee4","isInstalled","_callee4$","_context4","featureCode","features","name","install","code","_x6","_match$import","isDefaultExport","importPath","resolveRelativePath","replace","pathUtil","extname","AbstractAction"],"sources":["../../../../src/features/test/actions/CreateAction.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport createTestActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createTestOptions.schema'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\nimport TestFeature, { ParentClassCandidate } from '../TestFeature'\n\ntype OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptions\n\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = createTestActionSchema\n\tpublic invocationMessage = 'Creating a test... 🛡'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\t\tconst { testDestinationDir, namePascal, nameCamel, type } =\n\t\t\tnormalizedOptions\n\n\t\tlet resolvedDestination = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\ttestDestinationDir,\n\t\t\ttype\n\t\t)\n\n\t\tthis.ui.startLoading('Checking potential parent test classes')\n\n\t\tconst testFeature = this.parent as TestFeature\n\n\t\tthis.ui.stopLoading()\n\n\t\tlet parentTestClass:\n\t\t\t| undefined\n\t\t\t| { name: string; importPath: string; isDefaultExport: boolean }\n\n\t\tconst candidates = await testFeature.buildParentClassCandidates()\n\n\t\tif (diskUtil.doesDirExist(resolvedDestination)) {\n\t\t\tresolvedDestination = await this.promptForSubDir(resolvedDestination)\n\t\t}\n\n\t\tif (candidates.length > 0) {\n\t\t\tparentTestClass =\n\t\t\t\tawait this.promptForParentTestClassAndOptionallyInstallDependencies(\n\t\t\t\t\tcandidates,\n\t\t\t\t\tparentTestClass,\n\t\t\t\t\tresolvedDestination\n\t\t\t\t)\n\t\t}\n\n\t\tthis.ui.startLoading('Generating test file...')\n\n\t\tconst writer = this.Writer('test')\n\n\t\tconst results = await writer.generateTest(resolvedDestination, {\n\t\t\t...normalizedOptions,\n\t\t\ttype,\n\t\t\tnameCamel,\n\t\t\tparentTestClass,\n\t\t\tnamePascal: namePascal ?? namesUtil.toPascal(nameCamel),\n\t\t})\n\n\t\treturn {\n\t\t\tfiles: results,\n\t\t\thints: [\"run `spruce test` in your skill when you're ready!\"],\n\t\t}\n\t}\n\tprivate async promptForSubDir(resolvedDestination: string) {\n\t\tconst match = await this.ui.prompt({\n\t\t\ttype: 'directory',\n\t\t\tlabel: 'Where should I write this test?',\n\t\t\tisRequired: true,\n\t\t\tdefaultValue: {\n\t\t\t\tpath: diskUtil.resolvePath(resolvedDestination),\n\t\t\t},\n\t\t})\n\n\t\tresolvedDestination = diskUtil.resolvePath(resolvedDestination, match.path)\n\n\t\treturn resolvedDestination\n\t}\n\n\tprivate async promptForParentTestClassAndOptionallyInstallDependencies(\n\t\tcandidates: ParentClassCandidate[],\n\t\tparentTestClass:\n\t\t\t| { name: string; importPath: string; isDefaultExport: boolean }\n\t\t\t| undefined,\n\t\tresolvedDestination: string\n\t) {\n\t\tconst idx = await this.ui.prompt({\n\t\t\ttype: 'select',\n\t\t\tisRequired: true,\n\t\t\tlabel: 'Which abstract test class do you want to extend?',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{ value: '', label: 'AbstractSpruceTest (default)' },\n\t\t\t\t\t...candidates.map((candidate, idx) => ({\n\t\t\t\t\t\tvalue: `${idx}`,\n\t\t\t\t\t\tlabel: candidate.label,\n\t\t\t\t\t})),\n\t\t\t\t],\n\t\t\t},\n\t\t})\n\n\t\tif (idx !== '' && candidates[+idx]) {\n\t\t\tconst match = candidates[+idx]\n\n\t\t\tif (match) {\n\t\t\t\tawait this.optionallyInstallFeatureBasedOnSelection(match)\n\n\t\t\t\tparentTestClass = this.buildParentClassFromCandidate(\n\t\t\t\t\tmatch,\n\t\t\t\t\tresolvedDestination\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t\treturn parentTestClass\n\t}\n\n\tprivate async optionallyInstallFeatureBasedOnSelection(\n\t\tmatch: ParentClassCandidate\n\t) {\n\t\tif (match.featureCode) {\n\t\t\tconst isInstalled = await this.features.isInstalled(match.featureCode)\n\n\t\t\tif (!isInstalled) {\n\t\t\t\tthis.ui.startLoading(`Installing ${match.name}...`)\n\t\t\t\tawait this.features.install({\n\t\t\t\t\tfeatures: [{ code: match.featureCode as any }],\n\t\t\t\t})\n\t\t\t\tthis.ui.stopLoading()\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate buildParentClassFromCandidate(\n\t\tmatch: ParentClassCandidate,\n\t\tresolvedDestination: string\n\t): {\n\t\tname: string\n\t\tlabel: string\n\t\timportPath: string\n\t\tisDefaultExport: boolean\n\t} {\n\t\treturn {\n\t\t\tname: match.name,\n\t\t\tlabel: match.label,\n\t\t\tisDefaultExport: match.isDefaultExport,\n\t\t\timportPath:\n\t\t\t\tmatch.import ??\n\t\t\t\tdiskUtil.resolveRelativePath(\n\t\t\t\t\tresolvedDestination,\n\t\t\t\t\t//@ts-ignore\n\t\t\t\t\tmatch.path.replace(pathUtil.extname(match.path), '')\n\t\t\t\t),\n\t\t}\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -9,26 +9,25 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
9
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
13
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
12
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
17
  var _setupTestsOptions = _interopRequireDefault(require("../../../.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema"));
18
18
  var _action = _interopRequireDefault(require("../../../utilities/action.utility"));
19
19
  var _AbstractAction2 = _interopRequireDefault(require("../../AbstractAction"));
20
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
21
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
20
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
21
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
22
22
  var SetupAction = exports["default"] = /*#__PURE__*/function (_AbstractAction) {
23
23
  (0, _inherits2["default"])(SetupAction, _AbstractAction);
24
- var _super = _createSuper(SetupAction);
25
24
  function SetupAction() {
26
25
  var _this;
27
26
  (0, _classCallCheck2["default"])(this, SetupAction);
28
27
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
29
28
  args[_key] = arguments[_key];
30
29
  }
31
- _this = _super.call.apply(_super, [this].concat(args));
30
+ _this = _callSuper(this, SetupAction, [].concat(args));
32
31
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "optionsSchema", _setupTestsOptions["default"]);
33
32
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "commandAliases", ['setup.testing']);
34
33
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "invocationMessage", 'Setting up for testing... 🛡');
@@ -1 +1 @@
1
- {"version":3,"file":"SetupAction.js","names":["_setupTestsOptions","_interopRequireDefault","require","_action","_AbstractAction2","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","SetupAction","exports","_AbstractAction","_inherits2","_super","_this","_classCallCheck2","_len","length","args","Array","_key","concat","_defineProperty2","_assertThisInitialized2","setupTestsOptionsSchema","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","_registerResponse$err","_err$options","_err$options2","normalizedOptions","demoNumber","skillSlug","loginResponse","registerResponse","err","isDuplicateSlugError","loginAsSkillResponse","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","Action","execute","phone","pin","substr","sent","nameReadable","nameKebab","errors","responseErrors","code","abrupt","actionUtil","mergeActionResults","stop","_x","AbstractAction"],"sources":["../../../../src/features/test/actions/SetupAction.ts"],"sourcesContent":["import { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport setupTestsOptionsSchema from '#spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.SetupTestsOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.SetupTestsOptions\n\nexport default class SetupAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = setupTestsOptionsSchema\n\tpublic commandAliases = ['setup.testing']\n\tpublic invocationMessage = 'Setting up for testing... 🛡'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\t\tconst { demoNumber, skillSlug } = normalizedOptions\n\n\t\tconst loginResponse = await this.Action('person', 'login').execute({\n\t\t\tphone: demoNumber,\n\t\t\tpin: demoNumber.substr(demoNumber.length - 4),\n\t\t})\n\n\t\tconst registerResponse = await this.Action('skill', 'register').execute({\n\t\t\tnameReadable: skillSlug,\n\t\t\tnameKebab: skillSlug,\n\t\t})\n\n\t\tconst err = registerResponse.errors?.[0]\n\n\t\tconst isDuplicateSlugError =\n\t\t\terr?.options?.responseErrors?.length === 1 &&\n\t\t\terr?.options?.responseErrors?.[0]?.options?.code === 'DUPLICATE_SLUG'\n\n\t\tlet loginAsSkillResponse: any = {}\n\n\t\tif (isDuplicateSlugError) {\n\t\t\tdelete registerResponse.errors\n\n\t\t\tloginAsSkillResponse = await this.Action('skill', 'login').execute({\n\t\t\t\tskillSlug,\n\t\t\t})\n\t\t}\n\n\t\treturn actionUtil.mergeActionResults(\n\t\t\t{},\n\t\t\tloginResponse,\n\t\t\tregisterResponse,\n\t\t\tloginAsSkillResponse\n\t\t)\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"SetupAction.js","names":["_setupTestsOptions","_interopRequireDefault","require","_action","_AbstractAction2","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","SetupAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","_assertThisInitialized2","setupTestsOptionsSchema","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","_registerResponse$err","_err$options","_err$options2","normalizedOptions","demoNumber","skillSlug","loginResponse","registerResponse","err","isDuplicateSlugError","loginAsSkillResponse","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","Action","execute","phone","pin","substr","sent","nameReadable","nameKebab","errors","responseErrors","code","abrupt","actionUtil","mergeActionResults","stop","_x","AbstractAction"],"sources":["../../../../src/features/test/actions/SetupAction.ts"],"sourcesContent":["import { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport setupTestsOptionsSchema from '#spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.SetupTestsOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.SetupTestsOptions\n\nexport default class SetupAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = setupTestsOptionsSchema\n\tpublic commandAliases = ['setup.testing']\n\tpublic invocationMessage = 'Setting up for testing... 🛡'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\t\tconst { demoNumber, skillSlug } = normalizedOptions\n\n\t\tconst loginResponse = await this.Action('person', 'login').execute({\n\t\t\tphone: demoNumber,\n\t\t\tpin: demoNumber.substr(demoNumber.length - 4),\n\t\t})\n\n\t\tconst registerResponse = await this.Action('skill', 'register').execute({\n\t\t\tnameReadable: skillSlug,\n\t\t\tnameKebab: skillSlug,\n\t\t})\n\n\t\tconst err = registerResponse.errors?.[0]\n\n\t\tconst isDuplicateSlugError =\n\t\t\terr?.options?.responseErrors?.length === 1 &&\n\t\t\terr?.options?.responseErrors?.[0]?.options?.code === 'DUPLICATE_SLUG'\n\n\t\tlet loginAsSkillResponse: any = {}\n\n\t\tif (isDuplicateSlugError) {\n\t\t\tdelete registerResponse.errors\n\n\t\t\tloginAsSkillResponse = await this.Action('skill', 'login').execute({\n\t\t\t\tskillSlug,\n\t\t\t})\n\t\t}\n\n\t\treturn actionUtil.mergeActionResults(\n\t\t\t{},\n\t\t\tloginResponse,\n\t\t\tregisterResponse,\n\t\t\tloginAsSkillResponse\n\t\t)\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -9,10 +9,10 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
9
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
13
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
12
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
17
  var _path = _interopRequireDefault(require("path"));
18
18
  var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
@@ -25,16 +25,15 @@ var _TestRunner = _interopRequireDefault(require("../TestRunner"));
25
25
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
26
26
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
27
27
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
28
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
29
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
28
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
29
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
30
30
  var optionsSchema = exports.optionsSchema = _testOptions["default"];
31
31
  var TestAction = exports["default"] = /*#__PURE__*/function (_AbstractAction) {
32
32
  (0, _inherits2["default"])(TestAction, _AbstractAction);
33
- var _super = _createSuper(TestAction);
34
33
  function TestAction(options) {
35
34
  var _this;
36
35
  (0, _classCallCheck2["default"])(this, TestAction);
37
- _this = _super.call(this, options);
36
+ _this = _callSuper(this, TestAction, [options]);
38
37
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "optionsSchema", optionsSchema);
39
38
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "invocationMessage", 'Starting tests... 🛡');
40
39
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "testReporter", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"TestAction.js","names":["_path","_interopRequireDefault","require","_spruceSkillUtils","_open","_testOptions","_SpruceError","_AbstractAction2","_TestReporter","_TestRunner","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","optionsSchema","exports","testOptionsSchema","TestAction","_AbstractAction","_inherits2","_super","options","_this","_classCallCheck2","_defineProperty2","_assertThisInitialized2","totalTestFiles","_createClass2","key","_execute","_asyncToGenerator2","_regenerator","mark","_callee","_this$watcher","_this$testReporter","_testResults$totalTes","_testResults$totalPas","_testResults$totalFai","_testResults$totalSki","_testResults$totalTod","_testResults$totalFai2","_settings$get","settings","normalizedOptions","pattern","shouldReportWhileRunning","inspect","shouldHoldAtStart","watchMode","shouldReturnImmediately","_this$handleToggleSma","promise","testResults","actionResponse","wrap","_callee$","_context","prev","Service","get","validateAndNormalizeOptions","originalInspect","hasWatchEverBeenEnabled","testReporter","TestReporter","cwd","status","isDebugging","filterPattern","undefined","handleRestart","bind","handleStartStop","handleQuit","handleRerunTestFile","handleOpenTestFile","handleFilterPatternChange","handleToggleDebug","handletoggleStandardWatch","handleToggleSmartWatch","start","watcher","getFeature","startWatching","delay","emitter","on","handleFileChange","runnerStatus","startTestRunner","abrupt","meta","emit","reporter","sent","stopWatching","destroy","summaryLines","concat","totalTests","totalPassed","totalFailed","totalSkipped","totalTodo","errors","generateErrorsFromTestResults","stop","execute","_x","payload","_this2","changes","shouldRestart","filesWeCareAbout","_iterator","_step","change","_change$values","values","path","doWeCareAboutThisFileChanging","_this$testReporter3","setStatusLabel","push","_this$testReporter2","fileChangeTimeout","clearTimeout","startCountdownTimer","watchDelaySec","setTimeout","smartFilter","generateFilterFromChangedFiles","restart","_this3","filter","file","search","map","fileToFilterPattern","join","ext","pathUtil","extname","_this$testReporter4","setIsDebugging","_this$testReporter5","setWatchMode","mode","_this$testReporter6","kill","_this$testReporter7","setFilterPattern","_pathUtil$dirname$spl","filename","basename","replace","dirname","split","sep","pop","_this$testReporter8","_this$holdPromiseReso","holdPromiseResolve","_this$testRunner","_this$holdPromiseReso2","testRunner","_handleOpenTestFile","_callee2","fileName","_callee2$","_context2","openTestFile","_x2","_startTestRunner","_callee3","_this$testReporter9","_this$testReporter10","_this4","_this$testRunner2","_this$testRunner3","_this$pattern","_this$testReporter13","firstUpdate","_this$testReporter11","_this$testReporter12","_callee3$","_context3","waitForStart","lastTestResults","setStatus","stopCountdownTimer","TestRunner","commandService","_this4$testReporter3","_this4$testReporter4","_this4$testReporter","_this4$testReporter2","reset","results","failed","testFiles","find","updateResults","render","_this4$testReporter5","_this4$testReporter6","appendError","message","run","debugPort","hasFailedTests","hasSkippedTests","Promise","resolve","_this4$testReporter7","_x3","_waitForStart","_callee4","_this5","_callee4$","_context4","_openTestFile","_callee5","_callee5$","_context5","diskUtil","resolvePath","open","_x4","_testResults$testFile","_this6","forEach","_file$tests","tests","_test$errorMessages","errorMessages","mapErrorResultToSpruceError","SpruceError","code","testName","errorMessage","getWatchMode","AbstractAction"],"sources":["../../../../src/features/test/actions/TestAction.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { SpruceSchemas } from '@sprucelabs/mercury-types'\nimport { SchemaValues } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport open from 'open'\nimport testOptionsSchema from '#spruce/schemas/spruceCli/v2020_07_22/testOptions.schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse, ActionOptions } from '../../features.types'\nimport WatchFeature from '../../watch/WatchFeature'\nimport {\n\tSpruceTestFile,\n\tSpruceTestFileTest,\n\tSpruceTestResults,\n} from '../test.types'\nimport TestReporter, { WatchMode } from '../TestReporter'\nimport TestRunner from '../TestRunner'\n\nexport const optionsSchema = testOptionsSchema\n\nexport type OptionsSchema = typeof optionsSchema\n\ntype DidChangePayload =\n\tSchemaValues<SpruceSchemas.SpruceCli.v2020_07_22.WatcherDidDetectChangesEmitPayloadSchema>\n\nexport default class TestAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = optionsSchema\n\tpublic invocationMessage = 'Starting tests... 🛡'\n\n\tprivate testReporter?: TestReporter | undefined\n\tprivate testRunner?: TestRunner\n\tprivate runnerStatus: 'hold' | 'quit' | 'run' | 'restart' = 'hold'\n\tprivate pattern: string | undefined\n\tprivate inspect?: number | null\n\tprivate holdPromiseResolve?: () => void\n\tprivate lastTestResults: SpruceTestResults = { totalTestFiles: 0 }\n\tprivate originalInspect!: number\n\tprivate watcher?: WatchFeature\n\tprivate watchMode: WatchMode = 'off'\n\tprivate fileChangeTimeout?: any\n\tprivate hasWatchEverBeenEnabled = false\n\n\tprivate readonly watchDelaySec = 2\n\n\tpublic constructor(options: ActionOptions) {\n\t\tsuper(options)\n\t}\n\n\tpublic async execute(\n\t\toptions: SchemaValues<OptionsSchema>\n\t): Promise<FeatureActionResponse> {\n\t\tif (!options.watchMode) {\n\t\t\tconst settings = this.Service('settings')\n\t\t\toptions.watchMode = settings.get('test.watchMode') ?? 'off'\n\t\t}\n\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\tconst {\n\t\t\tpattern,\n\t\t\tshouldReportWhileRunning,\n\t\t\tinspect,\n\t\t\tshouldHoldAtStart,\n\t\t\twatchMode,\n\t\t\tshouldReturnImmediately,\n\t\t} = normalizedOptions\n\n\t\tthis.originalInspect = inspect ?? 5200\n\t\tthis.inspect = inspect\n\t\tthis.pattern = pattern\n\t\tthis.hasWatchEverBeenEnabled = watchMode !== 'off'\n\t\tthis.watchMode = watchMode as WatchMode\n\n\t\tif (shouldReportWhileRunning) {\n\t\t\tthis.testReporter = new TestReporter({\n\t\t\t\tcwd: this.cwd,\n\t\t\t\twatchMode: this.watchMode,\n\t\t\t\tstatus: shouldHoldAtStart ? 'stopped' : 'ready',\n\t\t\t\tisDebugging: !!inspect,\n\t\t\t\tfilterPattern: pattern ?? undefined,\n\t\t\t\thandleRestart: this.handleRestart.bind(this),\n\t\t\t\thandleStartStop: this.handleStartStop.bind(this),\n\t\t\t\thandleQuit: this.handleQuit.bind(this),\n\t\t\t\thandleRerunTestFile: this.handleRerunTestFile.bind(this),\n\t\t\t\thandleOpenTestFile: this.handleOpenTestFile.bind(this),\n\t\t\t\thandleFilterPatternChange: this.handleFilterPatternChange.bind(this),\n\t\t\t\thandleToggleDebug: this.handleToggleDebug.bind(this),\n\t\t\t\thandletoggleStandardWatch: this.handletoggleStandardWatch.bind(this),\n\t\t\t\thandleToggleSmartWatch: this.handleToggleSmartWatch?.bind(this),\n\t\t\t})\n\n\t\t\tawait this.testReporter.start()\n\t\t}\n\n\t\tthis.watcher = this.getFeature('watch') as WatchFeature\n\t\tvoid this.watcher.startWatching({ delay: 0 })\n\n\t\tawait this.emitter.on(\n\t\t\t'watcher.did-detect-change',\n\t\t\tthis.handleFileChange.bind(this)\n\t\t)\n\n\t\tthis.runnerStatus = shouldHoldAtStart ? 'hold' : 'run'\n\n\t\tconst promise = this.startTestRunner(normalizedOptions)\n\n\t\tif (shouldReturnImmediately) {\n\t\t\treturn {\n\t\t\t\tmeta: {\n\t\t\t\t\tpromise,\n\t\t\t\t\ttest: this,\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\n\t\tvoid this.emitter.emit('test.reporter-did-boot', {\n\t\t\treporter: this,\n\t\t})\n\n\t\tconst testResults = await promise\n\n\t\tawait this.watcher?.stopWatching()\n\t\tawait this.testReporter?.destroy()\n\n\t\tconst actionResponse: FeatureActionResponse = {\n\t\t\tmeta: { testResults },\n\t\t\tsummaryLines: [\n\t\t\t\t`Test files: ${testResults.totalTestFiles}`,\n\t\t\t\t`Tests: ${testResults.totalTests ?? '0'}`,\n\t\t\t\t`Passed: ${testResults.totalPassed ?? '0'}`,\n\t\t\t\t`Failed: ${testResults.totalFailed ?? '0'}`,\n\t\t\t\t`Skipped: ${testResults.totalSkipped ?? '0'}`,\n\t\t\t\t`Todo: ${testResults.totalTodo ?? '0'}`,\n\t\t\t],\n\t\t}\n\n\t\tif (testResults.totalFailed ?? 0 > 0) {\n\t\t\tactionResponse.errors = this.generateErrorsFromTestResults(testResults)\n\t\t}\n\n\t\treturn actionResponse\n\t}\n\n\tprivate handleFileChange(payload: DidChangePayload) {\n\t\tif (\n\t\t\tthis.watchMode === 'off' ||\n\t\t\t!(this.runnerStatus === 'run' || this.runnerStatus == 'hold')\n\t\t) {\n\t\t\treturn\n\t\t}\n\n\t\tconst { changes } = payload\n\n\t\tlet shouldRestart = false\n\t\tconst filesWeCareAbout: string[] = []\n\n\t\tfor (const change of changes) {\n\t\t\tconst { path, name } = change.values\n\n\t\t\tif (this.doWeCareAboutThisFileChanging(path)) {\n\t\t\t\tthis.testReporter?.setStatusLabel(`Built file: ${name}`)\n\t\t\t\tshouldRestart = true\n\t\t\t\tfilesWeCareAbout.push(path)\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\n\t\tif (shouldRestart) {\n\t\t\tif (this.fileChangeTimeout) {\n\t\t\t\tclearTimeout(this.fileChangeTimeout)\n\t\t\t}\n\n\t\t\tthis.testReporter?.startCountdownTimer(this.watchDelaySec)\n\t\t\tthis.fileChangeTimeout = setTimeout(() => {\n\t\t\t\tif (this.watchMode === 'smart') {\n\t\t\t\t\tconst smartFilter =\n\t\t\t\t\t\tthis.generateFilterFromChangedFiles(filesWeCareAbout)\n\t\t\t\t\tif (smartFilter.length > 0) {\n\t\t\t\t\t\tthis.handleFilterPatternChange(smartFilter)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.restart()\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.restart()\n\t\t\t\t}\n\t\t\t}, this.watchDelaySec * 1000) as any\n\t\t}\n\t}\n\n\tprivate generateFilterFromChangedFiles(filesWeCareAbout: string[]): string {\n\t\tconst filter = filesWeCareAbout\n\t\t\t.filter((file) => file.search('test.js') > -1)\n\t\t\t.map((file) => this.fileToFilterPattern(file))\n\t\t\t.join(' ')\n\n\t\treturn filter\n\t}\n\n\tprivate doWeCareAboutThisFileChanging(path: string) {\n\t\tconst ext = pathUtil.extname(path)\n\n\t\tif (\n\t\t\tpath.search('testDirsAndFiles') > -1 ||\n\t\t\tpath.search('.change_cache') > -1\n\t\t) {\n\t\t\treturn false\n\t\t}\n\n\t\tif (ext === '.js') {\n\t\t\treturn true\n\t\t}\n\n\t\treturn false\n\t}\n\n\tprivate handleToggleDebug() {\n\t\tif (this.inspect) {\n\t\t\tthis.inspect = undefined\n\t\t} else {\n\t\t\tthis.inspect = this.originalInspect\n\t\t}\n\n\t\tthis.testReporter?.setIsDebugging(!!this.inspect)\n\t\tthis.restart()\n\t}\n\n\tprivate handletoggleStandardWatch() {\n\t\tif (this.watchMode === 'standard') {\n\t\t\tthis.testReporter?.setWatchMode('off')\n\t\t} else {\n\t\t\tthis.setWatchMode('standard')\n\t\t}\n\t}\n\n\tprivate handleToggleSmartWatch() {\n\t\tif (this.watchMode === 'smart') {\n\t\t\tthis.setWatchMode('off')\n\t\t} else {\n\t\t\tthis.setWatchMode('smart')\n\t\t}\n\t}\n\n\tpublic setWatchMode(mode: WatchMode) {\n\t\tthis.watchMode = mode\n\t\tthis.testReporter?.setWatchMode(mode)\n\t\tthis.hasWatchEverBeenEnabled = true\n\t}\n\n\tprivate restart() {\n\t\tthis.runnerStatus = 'restart'\n\t\tthis.kill()\n\t}\n\n\tprivate handleQuit() {\n\t\tthis.runnerStatus = 'quit'\n\t\tthis.kill()\n\t}\n\n\tprivate handleRerunTestFile(file: string) {\n\t\tconst name = this.fileToFilterPattern(file)\n\n\t\tthis.testReporter?.setFilterPattern(name)\n\t\tthis.handleFilterPatternChange(name)\n\t}\n\n\tprivate fileToFilterPattern(file: string) {\n\t\tconst filename = pathUtil\n\t\t\t.basename(file, '.ts')\n\t\t\t.replace('.tsx', '')\n\t\t\t.replace('.js', '')\n\t\tconst dirname = pathUtil.dirname(file).split(pathUtil.sep).pop() ?? ''\n\n\t\tconst name = pathUtil.join(dirname, filename)\n\t\treturn name\n\t}\n\n\tprivate handleFilterPatternChange(filterPattern?: string) {\n\t\tthis.pattern = filterPattern\n\t\tthis.testReporter?.setFilterPattern(filterPattern)\n\n\t\tthis.restart()\n\t}\n\n\tprivate handleStartStop() {\n\t\tif (this.runnerStatus === 'hold') {\n\t\t\tthis.runnerStatus = 'run'\n\t\t\tthis.holdPromiseResolve?.()\n\t\t\tthis.holdPromiseResolve = undefined\n\t\t} else if (this.runnerStatus === 'run') {\n\t\t\tthis.runnerStatus = 'hold'\n\t\t\tthis.kill()\n\t\t}\n\t}\n\n\tprivate handleRestart() {\n\t\tthis.restart()\n\t}\n\n\tpublic kill() {\n\t\tthis.testRunner?.kill()\n\t\tthis.holdPromiseResolve?.()\n\t\tthis.holdPromiseResolve = undefined\n\t}\n\n\tprivate async handleOpenTestFile(fileName: string) {\n\t\tawait this.openTestFile(fileName)\n\t}\n\n\tprivate async startTestRunner(\n\t\toptions: SchemaValues<OptionsSchema>\n\t): Promise<SpruceTestResults> {\n\t\tif (this.runnerStatus === 'hold') {\n\t\t\tawait this.waitForStart()\n\t\t}\n\n\t\tif (this.runnerStatus === 'quit') {\n\t\t\treturn this.lastTestResults\n\t\t}\n\n\t\tthis.testReporter?.setStatus('ready')\n\t\tthis.testReporter?.stopCountdownTimer()\n\n\t\tthis.testRunner = new TestRunner({\n\t\t\tcwd: this.cwd,\n\t\t\tcommandService: this.Service('command'),\n\t\t})\n\n\t\tlet firstUpdate = true\n\n\t\tif (this.testReporter) {\n\t\t\tawait this.testRunner.on('did-update', (payload) => {\n\t\t\t\tif (firstUpdate) {\n\t\t\t\t\tfirstUpdate = false\n\t\t\t\t\tthis.testReporter?.setStatus('running')\n\t\t\t\t\tthis.testReporter?.reset()\n\t\t\t\t}\n\n\t\t\t\tif (this.watchMode === 'smart' && payload.results.totalFailed > 0) {\n\t\t\t\t\tconst failed = payload.results.testFiles.find(\n\t\t\t\t\t\t(file: any) => file.status === 'failed'\n\t\t\t\t\t)\n\n\t\t\t\t\tif (failed) {\n\t\t\t\t\t\tconst pattern = this.fileToFilterPattern(failed.path)\n\t\t\t\t\t\tif (this.pattern !== pattern) {\n\t\t\t\t\t\t\tthis.handleFilterPatternChange(pattern)\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tthis.testReporter?.updateResults(payload.results)\n\t\t\t\tthis.testReporter?.render()\n\t\t\t})\n\n\t\t\tawait this.testRunner.on('did-error', (payload) => {\n\t\t\t\tthis.testReporter?.appendError(payload.message)\n\t\t\t\tthis.testReporter?.render()\n\t\t\t})\n\t\t}\n\n\t\tthis.runnerStatus = 'run'\n\n\t\tlet testResults: SpruceTestResults = await this.testRunner.run({\n\t\t\tpattern: this.pattern,\n\t\t\tdebugPort: this.inspect,\n\t\t})\n\n\t\tif (\n\t\t\t//@ts-ignore\n\t\t\tthis.runnerStatus !== 'restart' &&\n\t\t\t(!options.shouldReportWhileRunning ||\n\t\t\t\t!this.hasWatchEverBeenEnabled ||\n\t\t\t\t(this.runnerStatus as any) === 'quit')\n\t\t) {\n\t\t\treturn testResults\n\t\t}\n\n\t\tif (\n\t\t\tthis.runnerStatus === 'run' &&\n\t\t\tthis.watchMode === 'smart' &&\n\t\t\tthis.testRunner?.hasFailedTests() === false &&\n\t\t\t!this.testRunner?.hasSkippedTests() &&\n\t\t\t(this.pattern ?? []).length > 0\n\t\t) {\n\t\t\tthis.testReporter?.setStatusLabel('Restarting...')\n\t\t\tthis.runnerStatus = 'restart'\n\t\t\tthis.testReporter?.startCountdownTimer(3)\n\n\t\t\treturn await new Promise((resolve) => {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.pattern = ''\n\t\t\t\t\tthis.testReporter?.setFilterPattern('')\n\t\t\t\t\tresolve(this.startTestRunner(options))\n\t\t\t\t}, 3000)\n\t\t\t})\n\t\t}\n\n\t\tif (this.runnerStatus === 'run') {\n\t\t\tthis.runnerStatus = 'hold'\n\t\t}\n\n\t\tthis.testReporter?.setStatus('stopped')\n\n\t\tthis.lastTestResults = testResults\n\n\t\treturn this.startTestRunner(options)\n\t}\n\n\tpublic async waitForStart() {\n\t\tawait new Promise((resolve: any) => {\n\t\t\tthis.runnerStatus = 'hold'\n\t\t\tthis.holdPromiseResolve = resolve\n\t\t})\n\t}\n\n\tprivate async openTestFile(fileName: string): Promise<void> {\n\t\tconst path = diskUtil.resolvePath(this.cwd, 'src', '__tests__', fileName)\n\t\tawait open(path)\n\t}\n\n\tprivate generateErrorsFromTestResults(testResults: SpruceTestResults) {\n\t\tconst errors: SpruceError[] = []\n\t\ttestResults.testFiles?.forEach((file) => {\n\t\t\tfile.tests?.forEach((test) => {\n\t\t\t\ttest.errorMessages?.forEach((message) => {\n\t\t\t\t\tconst err = this.mapErrorResultToSpruceError(test, file, message)\n\t\t\t\t\terrors.push(err)\n\t\t\t\t})\n\t\t\t})\n\t\t})\n\t\tif (errors.length > 0) {\n\t\t\treturn errors\n\t\t}\n\n\t\treturn undefined\n\t}\n\n\tprivate mapErrorResultToSpruceError(\n\t\ttest: SpruceTestFileTest,\n\t\tfile: SpruceTestFile,\n\t\tmessage: string\n\t) {\n\t\treturn new SpruceError({\n\t\t\tcode: 'TEST_FAILED',\n\t\t\ttestName: test.name,\n\t\t\tfileName: file.path,\n\t\t\terrorMessage: message,\n\t\t})\n\t}\n\n\tpublic getWatchMode() {\n\t\treturn this.watchMode\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"TestAction.js","names":["_path","_interopRequireDefault","require","_spruceSkillUtils","_open","_testOptions","_SpruceError","_AbstractAction2","_TestReporter","_TestRunner","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","_callSuper","t","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","apply","Boolean","valueOf","optionsSchema","exports","testOptionsSchema","TestAction","_AbstractAction","_inherits2","options","_this","_classCallCheck2","_defineProperty2","_assertThisInitialized2","totalTestFiles","_createClass2","key","_execute","_asyncToGenerator2","_regenerator","mark","_callee","_this$watcher","_this$testReporter","_testResults$totalTes","_testResults$totalPas","_testResults$totalFai","_testResults$totalSki","_testResults$totalTod","_testResults$totalFai2","_settings$get","settings","normalizedOptions","pattern","shouldReportWhileRunning","inspect","shouldHoldAtStart","watchMode","shouldReturnImmediately","_this$handleToggleSma","promise","testResults","actionResponse","wrap","_callee$","_context","prev","Service","get","validateAndNormalizeOptions","originalInspect","hasWatchEverBeenEnabled","testReporter","TestReporter","cwd","status","isDebugging","filterPattern","undefined","handleRestart","bind","handleStartStop","handleQuit","handleRerunTestFile","handleOpenTestFile","handleFilterPatternChange","handleToggleDebug","handletoggleStandardWatch","handleToggleSmartWatch","start","watcher","getFeature","startWatching","delay","emitter","on","handleFileChange","runnerStatus","startTestRunner","abrupt","meta","emit","reporter","sent","stopWatching","destroy","summaryLines","concat","totalTests","totalPassed","totalFailed","totalSkipped","totalTodo","errors","generateErrorsFromTestResults","stop","execute","_x","arguments","payload","_this2","changes","shouldRestart","filesWeCareAbout","_iterator","_step","change","_change$values","values","path","doWeCareAboutThisFileChanging","_this$testReporter3","setStatusLabel","push","_this$testReporter2","fileChangeTimeout","clearTimeout","startCountdownTimer","watchDelaySec","setTimeout","smartFilter","generateFilterFromChangedFiles","restart","_this3","filter","file","search","map","fileToFilterPattern","join","ext","pathUtil","extname","_this$testReporter4","setIsDebugging","_this$testReporter5","setWatchMode","mode","_this$testReporter6","kill","_this$testReporter7","setFilterPattern","_pathUtil$dirname$spl","filename","basename","replace","dirname","split","sep","pop","_this$testReporter8","_this$holdPromiseReso","holdPromiseResolve","_this$testRunner","_this$holdPromiseReso2","testRunner","_handleOpenTestFile","_callee2","fileName","_callee2$","_context2","openTestFile","_x2","_startTestRunner","_callee3","_this$testReporter9","_this$testReporter10","_this4","_this$testRunner2","_this$testRunner3","_this$pattern","_this$testReporter13","firstUpdate","_this$testReporter11","_this$testReporter12","_callee3$","_context3","waitForStart","lastTestResults","setStatus","stopCountdownTimer","TestRunner","commandService","_this4$testReporter3","_this4$testReporter4","_this4$testReporter","_this4$testReporter2","reset","results","failed","testFiles","find","updateResults","render","_this4$testReporter5","_this4$testReporter6","appendError","message","run","debugPort","hasFailedTests","hasSkippedTests","Promise","resolve","_this4$testReporter7","_x3","_waitForStart","_callee4","_this5","_callee4$","_context4","_openTestFile","_callee5","_callee5$","_context5","diskUtil","resolvePath","open","_x4","_testResults$testFile","_this6","forEach","_file$tests","tests","_test$errorMessages","errorMessages","mapErrorResultToSpruceError","SpruceError","code","testName","errorMessage","getWatchMode","AbstractAction"],"sources":["../../../../src/features/test/actions/TestAction.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { SpruceSchemas } from '@sprucelabs/mercury-types'\nimport { SchemaValues } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport open from 'open'\nimport testOptionsSchema from '#spruce/schemas/spruceCli/v2020_07_22/testOptions.schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse, ActionOptions } from '../../features.types'\nimport WatchFeature from '../../watch/WatchFeature'\nimport {\n\tSpruceTestFile,\n\tSpruceTestFileTest,\n\tSpruceTestResults,\n} from '../test.types'\nimport TestReporter, { WatchMode } from '../TestReporter'\nimport TestRunner from '../TestRunner'\n\nexport const optionsSchema = testOptionsSchema\n\nexport type OptionsSchema = typeof optionsSchema\n\ntype DidChangePayload =\n\tSchemaValues<SpruceSchemas.SpruceCli.v2020_07_22.WatcherDidDetectChangesEmitPayloadSchema>\n\nexport default class TestAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = optionsSchema\n\tpublic invocationMessage = 'Starting tests... 🛡'\n\n\tprivate testReporter?: TestReporter | undefined\n\tprivate testRunner?: TestRunner\n\tprivate runnerStatus: 'hold' | 'quit' | 'run' | 'restart' = 'hold'\n\tprivate pattern: string | undefined\n\tprivate inspect?: number | null\n\tprivate holdPromiseResolve?: () => void\n\tprivate lastTestResults: SpruceTestResults = { totalTestFiles: 0 }\n\tprivate originalInspect!: number\n\tprivate watcher?: WatchFeature\n\tprivate watchMode: WatchMode = 'off'\n\tprivate fileChangeTimeout?: any\n\tprivate hasWatchEverBeenEnabled = false\n\n\tprivate readonly watchDelaySec = 2\n\n\tpublic constructor(options: ActionOptions) {\n\t\tsuper(options)\n\t}\n\n\tpublic async execute(\n\t\toptions: SchemaValues<OptionsSchema>\n\t): Promise<FeatureActionResponse> {\n\t\tif (!options.watchMode) {\n\t\t\tconst settings = this.Service('settings')\n\t\t\toptions.watchMode = settings.get('test.watchMode') ?? 'off'\n\t\t}\n\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\tconst {\n\t\t\tpattern,\n\t\t\tshouldReportWhileRunning,\n\t\t\tinspect,\n\t\t\tshouldHoldAtStart,\n\t\t\twatchMode,\n\t\t\tshouldReturnImmediately,\n\t\t} = normalizedOptions\n\n\t\tthis.originalInspect = inspect ?? 5200\n\t\tthis.inspect = inspect\n\t\tthis.pattern = pattern\n\t\tthis.hasWatchEverBeenEnabled = watchMode !== 'off'\n\t\tthis.watchMode = watchMode as WatchMode\n\n\t\tif (shouldReportWhileRunning) {\n\t\t\tthis.testReporter = new TestReporter({\n\t\t\t\tcwd: this.cwd,\n\t\t\t\twatchMode: this.watchMode,\n\t\t\t\tstatus: shouldHoldAtStart ? 'stopped' : 'ready',\n\t\t\t\tisDebugging: !!inspect,\n\t\t\t\tfilterPattern: pattern ?? undefined,\n\t\t\t\thandleRestart: this.handleRestart.bind(this),\n\t\t\t\thandleStartStop: this.handleStartStop.bind(this),\n\t\t\t\thandleQuit: this.handleQuit.bind(this),\n\t\t\t\thandleRerunTestFile: this.handleRerunTestFile.bind(this),\n\t\t\t\thandleOpenTestFile: this.handleOpenTestFile.bind(this),\n\t\t\t\thandleFilterPatternChange: this.handleFilterPatternChange.bind(this),\n\t\t\t\thandleToggleDebug: this.handleToggleDebug.bind(this),\n\t\t\t\thandletoggleStandardWatch: this.handletoggleStandardWatch.bind(this),\n\t\t\t\thandleToggleSmartWatch: this.handleToggleSmartWatch?.bind(this),\n\t\t\t})\n\n\t\t\tawait this.testReporter.start()\n\t\t}\n\n\t\tthis.watcher = this.getFeature('watch') as WatchFeature\n\t\tvoid this.watcher.startWatching({ delay: 0 })\n\n\t\tawait this.emitter.on(\n\t\t\t'watcher.did-detect-change',\n\t\t\tthis.handleFileChange.bind(this)\n\t\t)\n\n\t\tthis.runnerStatus = shouldHoldAtStart ? 'hold' : 'run'\n\n\t\tconst promise = this.startTestRunner(normalizedOptions)\n\n\t\tif (shouldReturnImmediately) {\n\t\t\treturn {\n\t\t\t\tmeta: {\n\t\t\t\t\tpromise,\n\t\t\t\t\ttest: this,\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\n\t\tvoid this.emitter.emit('test.reporter-did-boot', {\n\t\t\treporter: this,\n\t\t})\n\n\t\tconst testResults = await promise\n\n\t\tawait this.watcher?.stopWatching()\n\t\tawait this.testReporter?.destroy()\n\n\t\tconst actionResponse: FeatureActionResponse = {\n\t\t\tmeta: { testResults },\n\t\t\tsummaryLines: [\n\t\t\t\t`Test files: ${testResults.totalTestFiles}`,\n\t\t\t\t`Tests: ${testResults.totalTests ?? '0'}`,\n\t\t\t\t`Passed: ${testResults.totalPassed ?? '0'}`,\n\t\t\t\t`Failed: ${testResults.totalFailed ?? '0'}`,\n\t\t\t\t`Skipped: ${testResults.totalSkipped ?? '0'}`,\n\t\t\t\t`Todo: ${testResults.totalTodo ?? '0'}`,\n\t\t\t],\n\t\t}\n\n\t\tif (testResults.totalFailed ?? 0 > 0) {\n\t\t\tactionResponse.errors = this.generateErrorsFromTestResults(testResults)\n\t\t}\n\n\t\treturn actionResponse\n\t}\n\n\tprivate handleFileChange(payload: DidChangePayload) {\n\t\tif (\n\t\t\tthis.watchMode === 'off' ||\n\t\t\t!(this.runnerStatus === 'run' || this.runnerStatus == 'hold')\n\t\t) {\n\t\t\treturn\n\t\t}\n\n\t\tconst { changes } = payload\n\n\t\tlet shouldRestart = false\n\t\tconst filesWeCareAbout: string[] = []\n\n\t\tfor (const change of changes) {\n\t\t\tconst { path, name } = change.values\n\n\t\t\tif (this.doWeCareAboutThisFileChanging(path)) {\n\t\t\t\tthis.testReporter?.setStatusLabel(`Built file: ${name}`)\n\t\t\t\tshouldRestart = true\n\t\t\t\tfilesWeCareAbout.push(path)\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\n\t\tif (shouldRestart) {\n\t\t\tif (this.fileChangeTimeout) {\n\t\t\t\tclearTimeout(this.fileChangeTimeout)\n\t\t\t}\n\n\t\t\tthis.testReporter?.startCountdownTimer(this.watchDelaySec)\n\t\t\tthis.fileChangeTimeout = setTimeout(() => {\n\t\t\t\tif (this.watchMode === 'smart') {\n\t\t\t\t\tconst smartFilter =\n\t\t\t\t\t\tthis.generateFilterFromChangedFiles(filesWeCareAbout)\n\t\t\t\t\tif (smartFilter.length > 0) {\n\t\t\t\t\t\tthis.handleFilterPatternChange(smartFilter)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.restart()\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.restart()\n\t\t\t\t}\n\t\t\t}, this.watchDelaySec * 1000) as any\n\t\t}\n\t}\n\n\tprivate generateFilterFromChangedFiles(filesWeCareAbout: string[]): string {\n\t\tconst filter = filesWeCareAbout\n\t\t\t.filter((file) => file.search('test.js') > -1)\n\t\t\t.map((file) => this.fileToFilterPattern(file))\n\t\t\t.join(' ')\n\n\t\treturn filter\n\t}\n\n\tprivate doWeCareAboutThisFileChanging(path: string) {\n\t\tconst ext = pathUtil.extname(path)\n\n\t\tif (\n\t\t\tpath.search('testDirsAndFiles') > -1 ||\n\t\t\tpath.search('.change_cache') > -1\n\t\t) {\n\t\t\treturn false\n\t\t}\n\n\t\tif (ext === '.js') {\n\t\t\treturn true\n\t\t}\n\n\t\treturn false\n\t}\n\n\tprivate handleToggleDebug() {\n\t\tif (this.inspect) {\n\t\t\tthis.inspect = undefined\n\t\t} else {\n\t\t\tthis.inspect = this.originalInspect\n\t\t}\n\n\t\tthis.testReporter?.setIsDebugging(!!this.inspect)\n\t\tthis.restart()\n\t}\n\n\tprivate handletoggleStandardWatch() {\n\t\tif (this.watchMode === 'standard') {\n\t\t\tthis.testReporter?.setWatchMode('off')\n\t\t} else {\n\t\t\tthis.setWatchMode('standard')\n\t\t}\n\t}\n\n\tprivate handleToggleSmartWatch() {\n\t\tif (this.watchMode === 'smart') {\n\t\t\tthis.setWatchMode('off')\n\t\t} else {\n\t\t\tthis.setWatchMode('smart')\n\t\t}\n\t}\n\n\tpublic setWatchMode(mode: WatchMode) {\n\t\tthis.watchMode = mode\n\t\tthis.testReporter?.setWatchMode(mode)\n\t\tthis.hasWatchEverBeenEnabled = true\n\t}\n\n\tprivate restart() {\n\t\tthis.runnerStatus = 'restart'\n\t\tthis.kill()\n\t}\n\n\tprivate handleQuit() {\n\t\tthis.runnerStatus = 'quit'\n\t\tthis.kill()\n\t}\n\n\tprivate handleRerunTestFile(file: string) {\n\t\tconst name = this.fileToFilterPattern(file)\n\n\t\tthis.testReporter?.setFilterPattern(name)\n\t\tthis.handleFilterPatternChange(name)\n\t}\n\n\tprivate fileToFilterPattern(file: string) {\n\t\tconst filename = pathUtil\n\t\t\t.basename(file, '.ts')\n\t\t\t.replace('.tsx', '')\n\t\t\t.replace('.js', '')\n\t\tconst dirname = pathUtil.dirname(file).split(pathUtil.sep).pop() ?? ''\n\n\t\tconst name = pathUtil.join(dirname, filename)\n\t\treturn name\n\t}\n\n\tprivate handleFilterPatternChange(filterPattern?: string) {\n\t\tthis.pattern = filterPattern\n\t\tthis.testReporter?.setFilterPattern(filterPattern)\n\n\t\tthis.restart()\n\t}\n\n\tprivate handleStartStop() {\n\t\tif (this.runnerStatus === 'hold') {\n\t\t\tthis.runnerStatus = 'run'\n\t\t\tthis.holdPromiseResolve?.()\n\t\t\tthis.holdPromiseResolve = undefined\n\t\t} else if (this.runnerStatus === 'run') {\n\t\t\tthis.runnerStatus = 'hold'\n\t\t\tthis.kill()\n\t\t}\n\t}\n\n\tprivate handleRestart() {\n\t\tthis.restart()\n\t}\n\n\tpublic kill() {\n\t\tthis.testRunner?.kill()\n\t\tthis.holdPromiseResolve?.()\n\t\tthis.holdPromiseResolve = undefined\n\t}\n\n\tprivate async handleOpenTestFile(fileName: string) {\n\t\tawait this.openTestFile(fileName)\n\t}\n\n\tprivate async startTestRunner(\n\t\toptions: SchemaValues<OptionsSchema>\n\t): Promise<SpruceTestResults> {\n\t\tif (this.runnerStatus === 'hold') {\n\t\t\tawait this.waitForStart()\n\t\t}\n\n\t\tif (this.runnerStatus === 'quit') {\n\t\t\treturn this.lastTestResults\n\t\t}\n\n\t\tthis.testReporter?.setStatus('ready')\n\t\tthis.testReporter?.stopCountdownTimer()\n\n\t\tthis.testRunner = new TestRunner({\n\t\t\tcwd: this.cwd,\n\t\t\tcommandService: this.Service('command'),\n\t\t})\n\n\t\tlet firstUpdate = true\n\n\t\tif (this.testReporter) {\n\t\t\tawait this.testRunner.on('did-update', (payload) => {\n\t\t\t\tif (firstUpdate) {\n\t\t\t\t\tfirstUpdate = false\n\t\t\t\t\tthis.testReporter?.setStatus('running')\n\t\t\t\t\tthis.testReporter?.reset()\n\t\t\t\t}\n\n\t\t\t\tif (this.watchMode === 'smart' && payload.results.totalFailed > 0) {\n\t\t\t\t\tconst failed = payload.results.testFiles.find(\n\t\t\t\t\t\t(file: any) => file.status === 'failed'\n\t\t\t\t\t)\n\n\t\t\t\t\tif (failed) {\n\t\t\t\t\t\tconst pattern = this.fileToFilterPattern(failed.path)\n\t\t\t\t\t\tif (this.pattern !== pattern) {\n\t\t\t\t\t\t\tthis.handleFilterPatternChange(pattern)\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tthis.testReporter?.updateResults(payload.results)\n\t\t\t\tthis.testReporter?.render()\n\t\t\t})\n\n\t\t\tawait this.testRunner.on('did-error', (payload) => {\n\t\t\t\tthis.testReporter?.appendError(payload.message)\n\t\t\t\tthis.testReporter?.render()\n\t\t\t})\n\t\t}\n\n\t\tthis.runnerStatus = 'run'\n\n\t\tlet testResults: SpruceTestResults = await this.testRunner.run({\n\t\t\tpattern: this.pattern,\n\t\t\tdebugPort: this.inspect,\n\t\t})\n\n\t\tif (\n\t\t\t//@ts-ignore\n\t\t\tthis.runnerStatus !== 'restart' &&\n\t\t\t(!options.shouldReportWhileRunning ||\n\t\t\t\t!this.hasWatchEverBeenEnabled ||\n\t\t\t\t(this.runnerStatus as any) === 'quit')\n\t\t) {\n\t\t\treturn testResults\n\t\t}\n\n\t\tif (\n\t\t\tthis.runnerStatus === 'run' &&\n\t\t\tthis.watchMode === 'smart' &&\n\t\t\tthis.testRunner?.hasFailedTests() === false &&\n\t\t\t!this.testRunner?.hasSkippedTests() &&\n\t\t\t(this.pattern ?? []).length > 0\n\t\t) {\n\t\t\tthis.testReporter?.setStatusLabel('Restarting...')\n\t\t\tthis.runnerStatus = 'restart'\n\t\t\tthis.testReporter?.startCountdownTimer(3)\n\n\t\t\treturn await new Promise((resolve) => {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.pattern = ''\n\t\t\t\t\tthis.testReporter?.setFilterPattern('')\n\t\t\t\t\tresolve(this.startTestRunner(options))\n\t\t\t\t}, 3000)\n\t\t\t})\n\t\t}\n\n\t\tif (this.runnerStatus === 'run') {\n\t\t\tthis.runnerStatus = 'hold'\n\t\t}\n\n\t\tthis.testReporter?.setStatus('stopped')\n\n\t\tthis.lastTestResults = testResults\n\n\t\treturn this.startTestRunner(options)\n\t}\n\n\tpublic async waitForStart() {\n\t\tawait new Promise((resolve: any) => {\n\t\t\tthis.runnerStatus = 'hold'\n\t\t\tthis.holdPromiseResolve = resolve\n\t\t})\n\t}\n\n\tprivate async openTestFile(fileName: string): Promise<void> {\n\t\tconst path = diskUtil.resolvePath(this.cwd, 'src', '__tests__', fileName)\n\t\tawait open(path)\n\t}\n\n\tprivate generateErrorsFromTestResults(testResults: SpruceTestResults) {\n\t\tconst errors: SpruceError[] = []\n\t\ttestResults.testFiles?.forEach((file) => {\n\t\t\tfile.tests?.forEach((test) => {\n\t\t\t\ttest.errorMessages?.forEach((message) => {\n\t\t\t\t\tconst err = this.mapErrorResultToSpruceError(test, file, message)\n\t\t\t\t\terrors.push(err)\n\t\t\t\t})\n\t\t\t})\n\t\t})\n\t\tif (errors.length > 0) {\n\t\t\treturn errors\n\t\t}\n\n\t\treturn undefined\n\t}\n\n\tprivate mapErrorResultToSpruceError(\n\t\ttest: SpruceTestFileTest,\n\t\tfile: SpruceTestFile,\n\t\tmessage: string\n\t) {\n\t\treturn new SpruceError({\n\t\t\tcode: 'TEST_FAILED',\n\t\t\ttestName: test.name,\n\t\t\tfileName: file.path,\n\t\t\terrorMessage: message,\n\t\t})\n\t}\n\n\tpublic getWatchMode() {\n\t\treturn this.watchMode\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"test.types.js","names":[],"sources":["../../../src/features/test/test.types.ts"],"sourcesContent":["export type TestResultStatus = 'running' | 'passed' | 'failed'\nexport interface SpruceTestFileTest {\n\tname: string\n\tstatus:\n\t\t| 'passed'\n\t\t| 'failed'\n\t\t| 'skipped'\n\t\t| 'pending'\n\t\t| 'todo'\n\t\t| 'disabled'\n\t\t| 'focused'\n\terrorMessages?: string[]\n\tduration: number\n}\n\nexport interface SpruceTestFile {\n\tpath: string\n\tstatus: TestResultStatus\n\ttests?: SpruceTestFileTest[]\n\terrorMessage?: string\n}\n\nexport interface SpruceTestResults {\n\ttotalTests?: number\n\ttotalPassed?: number\n\ttotalFailed?: number\n\ttotalSkipped?: number\n\ttotalTodo?: number\n\ttotalTestFiles: number\n\ttotalTestFilesComplete?: number\n\ttestFiles?: SpruceTestFile[]\n}\n\nexport type TestRunnerStatus = 'running' | 'stopped' | 'ready'\n"],"mappings":""}
1
+ {"version":3,"file":"test.types.js","names":[],"sources":["../../../src/features/test/test.types.ts"],"sourcesContent":["export type TestResultStatus = 'running' | 'passed' | 'failed'\nexport interface SpruceTestFileTest {\n\tname: string\n\tstatus:\n\t\t| 'passed'\n\t\t| 'failed'\n\t\t| 'skipped'\n\t\t| 'pending'\n\t\t| 'todo'\n\t\t| 'disabled'\n\t\t| 'focused'\n\terrorMessages?: string[]\n\tduration: number\n}\n\nexport interface SpruceTestFile {\n\tpath: string\n\tstatus: TestResultStatus\n\ttests?: SpruceTestFileTest[]\n\terrorMessage?: string\n}\n\nexport interface SpruceTestResults {\n\ttotalTests?: number\n\ttotalPassed?: number\n\ttotalFailed?: number\n\ttotalSkipped?: number\n\ttotalTodo?: number\n\ttotalTestFiles: number\n\ttotalTestFilesComplete?: number\n\ttestFiles?: SpruceTestFile[]\n}\n\nexport type TestRunnerStatus = 'running' | 'stopped' | 'ready'\n"],"mappings":"","ignoreList":[]}
@@ -9,19 +9,18 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
9
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
12
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
15
  var _path = _interopRequireDefault(require("path"));
16
16
  var _AbstractWriter2 = _interopRequireDefault(require("../../../writers/AbstractWriter"));
17
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
18
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
17
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
18
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
19
19
  var TestGenerator = exports["default"] = /*#__PURE__*/function (_AbstractWriter) {
20
20
  (0, _inherits2["default"])(TestGenerator, _AbstractWriter);
21
- var _super = _createSuper(TestGenerator);
22
21
  function TestGenerator() {
23
22
  (0, _classCallCheck2["default"])(this, TestGenerator);
24
- return _super.apply(this, arguments);
23
+ return _callSuper(this, TestGenerator, arguments);
25
24
  }
26
25
  (0, _createClass2["default"])(TestGenerator, [{
27
26
  key: "generateTest",