gt 0.10.0 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (531) hide show
  1. package/CHANGELOG.md +1275 -0
  2. package/LICENSE.md +105 -0
  3. package/README.md +26 -198
  4. package/dist/api/collectUserEditDiffs.d.ts +9 -0
  5. package/dist/api/collectUserEditDiffs.js +159 -0
  6. package/dist/api/downloadFileBatch.d.ts +23 -0
  7. package/dist/api/downloadFileBatch.js +190 -0
  8. package/dist/api/saveLocalEdits.d.ts +6 -0
  9. package/dist/api/saveLocalEdits.js +38 -0
  10. package/dist/bin/bin-entry.d.ts +1 -0
  11. package/dist/bin/bin-entry.js +9 -0
  12. package/dist/bin/bin-main.d.ts +2 -0
  13. package/dist/bin/bin-main.js +67 -0
  14. package/dist/cli/base.d.ts +59 -0
  15. package/dist/cli/base.js +529 -0
  16. package/dist/cli/commands/download.d.ts +8 -0
  17. package/dist/cli/commands/download.js +51 -0
  18. package/dist/cli/commands/enqueue.d.ts +9 -0
  19. package/dist/cli/commands/enqueue.js +27 -0
  20. package/dist/cli/commands/setupProject.d.ts +7 -0
  21. package/dist/cli/commands/setupProject.js +37 -0
  22. package/dist/cli/commands/stage.d.ts +9 -0
  23. package/dist/cli/commands/stage.js +59 -0
  24. package/dist/cli/commands/translate.d.ts +7 -0
  25. package/dist/cli/commands/translate.js +70 -0
  26. package/dist/cli/commands/upload.d.ts +13 -0
  27. package/dist/cli/commands/upload.js +142 -0
  28. package/dist/cli/commands/utils/validation.d.ts +13 -0
  29. package/dist/cli/commands/utils/validation.js +38 -0
  30. package/dist/cli/flags.d.ts +15 -0
  31. package/dist/cli/flags.js +70 -0
  32. package/dist/cli/inline.d.ts +17 -0
  33. package/dist/cli/inline.js +135 -0
  34. package/dist/cli/next.d.ts +10 -0
  35. package/dist/cli/next.js +12 -0
  36. package/dist/cli/node.d.ts +10 -0
  37. package/dist/cli/node.js +9 -0
  38. package/dist/cli/react.d.ts +12 -0
  39. package/dist/cli/react.js +72 -0
  40. package/dist/config/generateSettings.d.ts +9 -0
  41. package/dist/config/generateSettings.js +214 -0
  42. package/dist/config/optionPresets.d.ts +3 -0
  43. package/dist/config/optionPresets.js +65 -0
  44. package/dist/config/resolveConfig.d.ts +4 -0
  45. package/dist/config/resolveConfig.js +33 -0
  46. package/dist/config/utils.d.ts +2 -0
  47. package/dist/config/utils.js +4 -0
  48. package/dist/config/validateSettings.d.ts +3 -0
  49. package/dist/config/validateSettings.js +32 -0
  50. package/dist/console/colors.d.ts +6 -0
  51. package/dist/console/colors.js +19 -0
  52. package/dist/console/displayTranslateSummary.d.ts +1 -0
  53. package/dist/console/displayTranslateSummary.js +42 -0
  54. package/dist/console/formatting.d.ts +1 -0
  55. package/dist/console/formatting.js +7 -0
  56. package/dist/console/index.d.ts +34 -0
  57. package/dist/console/index.js +46 -0
  58. package/dist/console/logger.d.ts +35 -0
  59. package/dist/console/logger.js +250 -0
  60. package/dist/console/logging.d.ts +52 -0
  61. package/dist/console/logging.js +175 -0
  62. package/dist/formats/files/aggregateFiles.d.ts +4 -0
  63. package/dist/formats/files/aggregateFiles.js +156 -0
  64. package/dist/formats/files/collectFiles.d.ts +6 -0
  65. package/dist/formats/files/collectFiles.js +49 -0
  66. package/dist/formats/files/convertToFileTranslationData.d.ts +15 -0
  67. package/dist/formats/files/convertToFileTranslationData.js +21 -0
  68. package/dist/formats/files/fileMapping.d.ts +11 -0
  69. package/dist/formats/files/fileMapping.js +115 -0
  70. package/dist/formats/files/preprocess/mdx.d.ts +6 -0
  71. package/dist/formats/files/preprocess/mdx.js +14 -0
  72. package/dist/formats/files/preprocess/mintlify.d.ts +5 -0
  73. package/dist/formats/files/preprocess/mintlify.js +15 -0
  74. package/dist/formats/files/preprocessContent.d.ts +8 -0
  75. package/dist/formats/files/preprocessContent.js +23 -0
  76. package/dist/formats/files/save.d.ts +5 -0
  77. package/dist/formats/files/save.js +17 -0
  78. package/dist/formats/files/supportedFiles.d.ts +11 -0
  79. package/dist/formats/files/supportedFiles.js +20 -0
  80. package/dist/formats/json/extractJson.d.ts +15 -0
  81. package/dist/formats/json/extractJson.js +101 -0
  82. package/dist/formats/json/flattenJson.d.ts +14 -0
  83. package/dist/formats/json/flattenJson.js +64 -0
  84. package/dist/formats/json/mergeJson.d.ts +13 -0
  85. package/dist/formats/json/mergeJson.js +367 -0
  86. package/dist/formats/json/parseJson.d.ts +2 -0
  87. package/dist/formats/json/parseJson.js +109 -0
  88. package/dist/formats/json/utils.d.ts +47 -0
  89. package/dist/formats/json/utils.js +150 -0
  90. package/dist/formats/utils.d.ts +2 -0
  91. package/dist/formats/utils.js +24 -0
  92. package/dist/formats/yaml/mergeYaml.d.ts +5 -0
  93. package/dist/formats/yaml/mergeYaml.js +61 -0
  94. package/dist/formats/yaml/parseYaml.d.ts +5 -0
  95. package/dist/formats/yaml/parseYaml.js +24 -0
  96. package/dist/formats/yaml/utils.d.ts +2 -0
  97. package/dist/formats/yaml/utils.js +23 -0
  98. package/dist/fs/clearLocaleDirs.d.ts +8 -0
  99. package/dist/fs/clearLocaleDirs.js +126 -0
  100. package/dist/fs/config/downloadedVersions.d.ts +21 -0
  101. package/dist/fs/config/downloadedVersions.js +50 -0
  102. package/dist/fs/config/loadConfig.d.ts +1 -0
  103. package/dist/fs/config/loadConfig.js +9 -0
  104. package/dist/fs/config/parseFilesConfig.d.ts +27 -0
  105. package/dist/fs/config/parseFilesConfig.js +150 -0
  106. package/dist/fs/config/setupConfig.d.ts +17 -0
  107. package/dist/fs/config/setupConfig.js +50 -0
  108. package/dist/fs/config/updateConfig.d.ts +21 -0
  109. package/dist/fs/config/updateConfig.js +57 -0
  110. package/dist/fs/config/updateVersions.d.ts +11 -0
  111. package/dist/fs/config/updateVersions.js +30 -0
  112. package/dist/fs/copyFile.d.ts +7 -0
  113. package/dist/fs/copyFile.js +39 -0
  114. package/dist/fs/createLoadTranslationsFile.d.ts +1 -0
  115. package/dist/fs/createLoadTranslationsFile.js +49 -0
  116. package/dist/fs/determineFramework.d.ts +5 -0
  117. package/dist/fs/determineFramework.js +53 -0
  118. package/dist/fs/findFilepath.d.ts +36 -0
  119. package/dist/fs/findFilepath.js +90 -0
  120. package/dist/fs/index.d.ts +1 -0
  121. package/dist/fs/index.js +1 -0
  122. package/dist/fs/loadJSON.d.ts +6 -0
  123. package/dist/fs/loadJSON.js +17 -0
  124. package/dist/fs/matchFiles.d.ts +1 -0
  125. package/dist/fs/matchFiles.js +8 -0
  126. package/dist/fs/saveJSON.d.ts +1 -0
  127. package/dist/fs/saveJSON.js +7 -0
  128. package/dist/fs/utils.d.ts +1 -0
  129. package/dist/fs/utils.js +16 -0
  130. package/dist/functions.d.ts +7 -0
  131. package/dist/functions.js +6 -0
  132. package/dist/generated/version.d.ts +1 -0
  133. package/dist/generated/version.js +2 -0
  134. package/dist/git/branches.d.ts +7 -0
  135. package/dist/git/branches.js +88 -0
  136. package/dist/hooks/postProcess.d.ts +4 -0
  137. package/dist/hooks/postProcess.js +110 -0
  138. package/dist/index.d.ts +4 -0
  139. package/dist/index.js +27 -0
  140. package/dist/locadex/setupFlow.d.ts +2 -0
  141. package/dist/locadex/setupFlow.js +9 -0
  142. package/dist/main.d.ts +2 -0
  143. package/dist/main.js +10 -0
  144. package/dist/next/config/parseNextConfig.d.ts +10 -0
  145. package/dist/next/config/parseNextConfig.js +53 -0
  146. package/dist/next/jsx/utils.d.ts +7 -0
  147. package/dist/next/jsx/utils.js +42 -0
  148. package/dist/next/parse/handleInitGT.d.ts +7 -0
  149. package/dist/next/parse/handleInitGT.js +157 -0
  150. package/dist/next/parse/wrapContent.d.ts +12 -0
  151. package/dist/next/parse/wrapContent.js +164 -0
  152. package/dist/react/config/createESBuildConfig.d.ts +2 -0
  153. package/dist/react/config/createESBuildConfig.js +119 -0
  154. package/dist/react/jsx/evaluateJsx.d.ts +24 -0
  155. package/dist/react/jsx/evaluateJsx.js +123 -0
  156. package/dist/react/jsx/utils/buildImportMap.d.ts +9 -0
  157. package/dist/react/jsx/utils/buildImportMap.js +30 -0
  158. package/dist/react/jsx/utils/constants.d.ts +15 -0
  159. package/dist/react/jsx/utils/constants.js +49 -0
  160. package/dist/react/jsx/utils/getCalleeNameFromExpression.d.ts +9 -0
  161. package/dist/react/jsx/utils/getCalleeNameFromExpression.js +32 -0
  162. package/dist/react/jsx/utils/getPathsAndAliases.d.ts +21 -0
  163. package/dist/react/jsx/utils/getPathsAndAliases.js +91 -0
  164. package/dist/react/jsx/utils/isNumberLiteral.d.ts +7 -0
  165. package/dist/react/jsx/utils/isNumberLiteral.js +13 -0
  166. package/dist/react/jsx/utils/jsxParsing/addGTIdentifierToSyntaxTree.d.ts +9 -0
  167. package/dist/react/jsx/utils/jsxParsing/addGTIdentifierToSyntaxTree.js +138 -0
  168. package/dist/react/jsx/utils/jsxParsing/handleChildrenWhitespace.d.ts +6 -0
  169. package/dist/react/jsx/utils/jsxParsing/handleChildrenWhitespace.js +197 -0
  170. package/dist/react/jsx/utils/jsxParsing/multiplication/findMultiplicationNode.d.ts +13 -0
  171. package/dist/react/jsx/utils/jsxParsing/multiplication/findMultiplicationNode.js +42 -0
  172. package/dist/react/jsx/utils/jsxParsing/multiplication/multiplyJsxTree.d.ts +5 -0
  173. package/dist/react/jsx/utils/jsxParsing/multiplication/multiplyJsxTree.js +69 -0
  174. package/dist/react/jsx/utils/jsxParsing/parseJsx.d.ts +33 -0
  175. package/dist/react/jsx/utils/jsxParsing/parseJsx.js +918 -0
  176. package/dist/react/jsx/utils/jsxParsing/parseTProps.d.ts +8 -0
  177. package/dist/react/jsx/utils/jsxParsing/parseTProps.js +65 -0
  178. package/dist/react/jsx/utils/jsxParsing/removeNullChildrenFields.d.ts +2 -0
  179. package/dist/react/jsx/utils/jsxParsing/removeNullChildrenFields.js +61 -0
  180. package/dist/react/jsx/utils/jsxParsing/types.d.ts +48 -0
  181. package/dist/react/jsx/utils/jsxParsing/types.js +34 -0
  182. package/dist/react/jsx/utils/mapAttributeName.d.ts +11 -0
  183. package/dist/react/jsx/utils/mapAttributeName.js +12 -0
  184. package/dist/react/jsx/utils/parseAst.d.ts +31 -0
  185. package/dist/react/jsx/utils/parseAst.js +278 -0
  186. package/dist/react/jsx/utils/parseDeclareStatic.d.ts +15 -0
  187. package/dist/react/jsx/utils/parseDeclareStatic.js +540 -0
  188. package/dist/react/jsx/utils/parseString.d.ts +25 -0
  189. package/dist/react/jsx/utils/parseString.js +540 -0
  190. package/dist/react/jsx/utils/parseStringFunction.d.ts +30 -0
  191. package/dist/react/jsx/utils/parseStringFunction.js +348 -0
  192. package/dist/react/jsx/utils/resolveImportPath.d.ts +11 -0
  193. package/dist/react/jsx/utils/resolveImportPath.js +111 -0
  194. package/dist/react/jsx/utils/stringParsing/processTranslationCall/extractStringEntryMetadata.d.ts +29 -0
  195. package/dist/react/jsx/utils/stringParsing/processTranslationCall/extractStringEntryMetadata.js +86 -0
  196. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleInvalidTranslationCall.d.ts +14 -0
  197. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleInvalidTranslationCall.js +24 -0
  198. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleLiteralTranslationCall.d.ts +19 -0
  199. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleLiteralTranslationCall.js +31 -0
  200. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleStaticTranslationCall.d.ts +22 -0
  201. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleStaticTranslationCall.js +51 -0
  202. package/dist/react/jsx/utils/stringParsing/processTranslationCall/index.d.ts +18 -0
  203. package/dist/react/jsx/utils/stringParsing/processTranslationCall/index.js +39 -0
  204. package/dist/react/jsx/utils/stringParsing/processTranslationCall/routeTranslationCall.d.ts +24 -0
  205. package/dist/react/jsx/utils/stringParsing/processTranslationCall/routeTranslationCall.js +68 -0
  206. package/dist/react/jsx/utils/stringParsing/types.d.ts +41 -0
  207. package/dist/react/jsx/utils/stringParsing/types.js +1 -0
  208. package/dist/react/jsx/utils/types.d.ts +14 -0
  209. package/dist/react/jsx/utils/types.js +1 -0
  210. package/dist/react/jsx/utils/validateStringFunction.d.ts +7 -0
  211. package/dist/react/jsx/utils/validateStringFunction.js +31 -0
  212. package/dist/react/jsx/wrapJsx.d.ts +51 -0
  213. package/dist/react/jsx/wrapJsx.js +387 -0
  214. package/dist/react/parse/addVitePlugin/index.d.ts +22 -0
  215. package/dist/react/parse/addVitePlugin/index.js +41 -0
  216. package/dist/react/parse/addVitePlugin/installCompiler.d.ts +8 -0
  217. package/dist/react/parse/addVitePlugin/installCompiler.js +22 -0
  218. package/dist/react/parse/addVitePlugin/updateViteConfig.d.ts +19 -0
  219. package/dist/react/parse/addVitePlugin/updateViteConfig.js +120 -0
  220. package/dist/react/parse/addVitePlugin/utils/addCompilerImport.d.ts +9 -0
  221. package/dist/react/parse/addVitePlugin/utils/addCompilerImport.js +34 -0
  222. package/dist/react/parse/addVitePlugin/utils/addPluginInvocation.d.ts +11 -0
  223. package/dist/react/parse/addVitePlugin/utils/addPluginInvocation.js +48 -0
  224. package/dist/react/parse/addVitePlugin/utils/checkCompilerImport.d.ts +15 -0
  225. package/dist/react/parse/addVitePlugin/utils/checkCompilerImport.js +113 -0
  226. package/dist/react/parse/addVitePlugin/utils/checkPluginInvocation.d.ts +12 -0
  227. package/dist/react/parse/addVitePlugin/utils/checkPluginInvocation.js +32 -0
  228. package/dist/react/parse/createDictionaryUpdates.d.ts +3 -0
  229. package/dist/react/parse/createDictionaryUpdates.js +187 -0
  230. package/dist/react/parse/createInlineUpdates.d.ts +13 -0
  231. package/dist/react/parse/createInlineUpdates.js +161 -0
  232. package/dist/react/parse/wrapContent.d.ts +12 -0
  233. package/dist/react/parse/wrapContent.js +162 -0
  234. package/dist/react/utils/flattenDictionary.d.ts +20 -0
  235. package/dist/react/utils/flattenDictionary.js +75 -0
  236. package/dist/react/utils/getEntryAndMetadata.d.ts +5 -0
  237. package/dist/react/utils/getEntryAndMetadata.js +11 -0
  238. package/dist/react/utils/getVariableName.d.ts +25 -0
  239. package/dist/react/utils/getVariableName.js +37 -0
  240. package/dist/setup/agentInstructions.d.ts +24 -0
  241. package/dist/setup/agentInstructions.js +138 -0
  242. package/dist/setup/detectFramework.d.ts +31 -0
  243. package/dist/setup/detectFramework.js +106 -0
  244. package/dist/setup/frameworkUtils.d.ts +3 -0
  245. package/dist/setup/frameworkUtils.js +30 -0
  246. package/dist/setup/instructions/base.md +29 -0
  247. package/dist/setup/instructions/gt-next.md +107 -0
  248. package/dist/setup/instructions/gt-react.md +98 -0
  249. package/dist/setup/userInput.d.ts +4 -0
  250. package/dist/setup/userInput.js +32 -0
  251. package/dist/setup/wizard.d.ts +3 -0
  252. package/dist/setup/wizard.js +147 -0
  253. package/dist/state/recentDownloads.d.ts +12 -0
  254. package/dist/state/recentDownloads.js +18 -0
  255. package/dist/state/translateWarnings.d.ts +10 -0
  256. package/dist/state/translateWarnings.js +13 -0
  257. package/dist/translation/parse.d.ts +17 -0
  258. package/dist/translation/parse.js +77 -0
  259. package/dist/translation/stage.d.ts +3 -0
  260. package/dist/translation/stage.js +44 -0
  261. package/dist/translation/validate.d.ts +14 -0
  262. package/dist/translation/validate.js +100 -0
  263. package/dist/types/branch.d.ts +14 -0
  264. package/dist/types/branch.js +1 -0
  265. package/dist/types/data/json.d.ts +6 -0
  266. package/dist/types/data/json.js +1 -0
  267. package/dist/types/data.d.ts +37 -0
  268. package/dist/types/data.js +1 -0
  269. package/dist/types/files.d.ts +8 -0
  270. package/dist/types/files.js +1 -0
  271. package/dist/types/index.d.ts +243 -0
  272. package/dist/types/index.js +1 -0
  273. package/dist/types/libraries.d.ts +31 -0
  274. package/dist/types/libraries.js +72 -0
  275. package/dist/types/parsing.d.ts +3 -0
  276. package/dist/types/parsing.js +1 -0
  277. package/dist/utils/addExplicitAnchorIds.d.ts +24 -0
  278. package/dist/utils/addExplicitAnchorIds.js +416 -0
  279. package/dist/utils/constants.d.ts +5 -0
  280. package/dist/utils/constants.js +6 -0
  281. package/dist/utils/credentials.d.ts +12 -0
  282. package/dist/utils/credentials.js +120 -0
  283. package/dist/utils/flattenJsonFiles.d.ts +2 -0
  284. package/dist/utils/flattenJsonFiles.js +36 -0
  285. package/dist/utils/gitDiff.d.ts +8 -0
  286. package/dist/utils/gitDiff.js +34 -0
  287. package/dist/utils/gt.d.ts +2 -0
  288. package/dist/utils/gt.js +2 -0
  289. package/dist/utils/hash.d.ts +6 -0
  290. package/dist/utils/hash.js +11 -0
  291. package/dist/utils/headers.d.ts +1 -0
  292. package/dist/utils/headers.js +14 -0
  293. package/dist/utils/installPackage.d.ts +3 -0
  294. package/dist/utils/installPackage.js +77 -0
  295. package/dist/utils/localizeRelativeAssets.d.ts +8 -0
  296. package/dist/utils/localizeRelativeAssets.js +166 -0
  297. package/dist/utils/localizeStaticImports.d.ts +15 -0
  298. package/dist/utils/localizeStaticImports.js +397 -0
  299. package/dist/utils/localizeStaticUrls.d.ts +19 -0
  300. package/dist/utils/localizeStaticUrls.js +450 -0
  301. package/dist/utils/mintlifyTitleFallback.d.ts +6 -0
  302. package/dist/utils/mintlifyTitleFallback.js +80 -0
  303. package/dist/utils/packageInfo.d.ts +3 -0
  304. package/dist/utils/packageInfo.js +17 -0
  305. package/dist/utils/packageJson.d.ts +6 -0
  306. package/dist/utils/packageJson.js +68 -0
  307. package/dist/utils/packageManager.d.ts +28 -0
  308. package/dist/utils/packageManager.js +269 -0
  309. package/dist/utils/parse/needsCJS.d.ts +20 -0
  310. package/dist/utils/parse/needsCJS.js +72 -0
  311. package/dist/utils/persistPostprocessHashes.d.ts +12 -0
  312. package/dist/utils/persistPostprocessHashes.js +39 -0
  313. package/dist/utils/processAnchorIds.d.ts +6 -0
  314. package/dist/utils/processAnchorIds.js +56 -0
  315. package/dist/utils/processOpenApi.d.ts +8 -0
  316. package/dist/utils/processOpenApi.js +651 -0
  317. package/dist/utils/sanitizeFileContent.d.ts +6 -0
  318. package/dist/utils/sanitizeFileContent.js +29 -0
  319. package/dist/utils/sharedStaticAssets.d.ts +9 -0
  320. package/dist/utils/sharedStaticAssets.js +384 -0
  321. package/dist/utils/validateMdx.d.ts +10 -0
  322. package/dist/utils/validateMdx.js +25 -0
  323. package/dist/utils/wrapPlainUrls.d.ts +8 -0
  324. package/dist/utils/wrapPlainUrls.js +72 -0
  325. package/dist/workflows/download.d.ts +32 -0
  326. package/dist/workflows/download.js +131 -0
  327. package/dist/workflows/enqueue.d.ts +17 -0
  328. package/dist/workflows/enqueue.js +59 -0
  329. package/dist/workflows/setupProject.d.ts +13 -0
  330. package/dist/workflows/setupProject.js +48 -0
  331. package/dist/workflows/stage.d.ts +18 -0
  332. package/dist/workflows/stage.js +59 -0
  333. package/dist/workflows/steps/BranchStep.d.ts +13 -0
  334. package/dist/workflows/steps/BranchStep.js +161 -0
  335. package/dist/workflows/steps/DownloadStep.d.ts +19 -0
  336. package/dist/workflows/steps/DownloadStep.js +131 -0
  337. package/dist/workflows/steps/EnqueueStep.d.ts +15 -0
  338. package/dist/workflows/steps/EnqueueStep.js +33 -0
  339. package/dist/workflows/steps/PollJobsStep.d.ts +31 -0
  340. package/dist/workflows/steps/PollJobsStep.js +288 -0
  341. package/dist/workflows/steps/SetupStep.d.ts +16 -0
  342. package/dist/workflows/steps/SetupStep.js +72 -0
  343. package/dist/workflows/steps/UploadSourcesStep.d.ts +27 -0
  344. package/dist/workflows/steps/UploadSourcesStep.js +131 -0
  345. package/dist/workflows/steps/UploadTranslationsStep.d.ts +22 -0
  346. package/dist/workflows/steps/UploadTranslationsStep.js +71 -0
  347. package/dist/workflows/steps/UserEditDiffsStep.d.ts +11 -0
  348. package/dist/workflows/steps/UserEditDiffsStep.js +30 -0
  349. package/dist/workflows/steps/WorkflowStep.d.ts +4 -0
  350. package/dist/workflows/steps/WorkflowStep.js +2 -0
  351. package/dist/workflows/upload.d.ts +15 -0
  352. package/dist/workflows/upload.js +47 -0
  353. package/package.json +149 -112
  354. package/.dont-break +0 -6
  355. package/.jshintrc +0 -76
  356. package/.npmignore +0 -9
  357. package/.travis.yml +0 -21
  358. package/Gruntfile.js +0 -65
  359. package/History.md +0 -90
  360. package/MIT-License.txt +0 -21
  361. package/bin/gt.js +0 -58
  362. package/complexity.json +0 -17
  363. package/doc/RequireJsExample.md +0 -10
  364. package/examples/all.js +0 -72
  365. package/examples/altAsserrionSyntax/tests.js +0 -32
  366. package/examples/amd/bar.js +0 -4
  367. package/examples/amd/foo.js +0 -15
  368. package/examples/amd/fooTests.js +0 -8
  369. package/examples/arrays/test.js +0 -15
  370. package/examples/assert/test-assert-object.js +0 -15
  371. package/examples/assert/test-assert-require.js +0 -17
  372. package/examples/async/asyncAll.js +0 -37
  373. package/examples/async/asyncSetup.js +0 -29
  374. package/examples/async/asyncSetupOnce.js +0 -25
  375. package/examples/async/asyncTeardown.js +0 -27
  376. package/examples/async/stopStart.js +0 -22
  377. package/examples/async/test.js +0 -43
  378. package/examples/async/timeoutTests.js +0 -19
  379. package/examples/basic/code.js +0 -50
  380. package/examples/basic/code2.js +0 -9
  381. package/examples/basic/default.js +0 -26
  382. package/examples/basic/definedUndefined.js +0 -28
  383. package/examples/basic/empty.js +0 -24
  384. package/examples/basic/exceptionTests.js +0 -55
  385. package/examples/basic/fullMessage.js +0 -28
  386. package/examples/basic/functions.js +0 -18
  387. package/examples/basic/incomplete.js +0 -16
  388. package/examples/basic/null.js +0 -17
  389. package/examples/basic/optional.js +0 -45
  390. package/examples/basic/tests.js +0 -147
  391. package/examples/bdd/spec.js +0 -67
  392. package/examples/browser/code_coverage_report.json +0 -1
  393. package/examples/browser/index.html +0 -50
  394. package/examples/browser/packages.js +0 -12
  395. package/examples/browser/packagesDefault.js +0 -12
  396. package/examples/browser/qunit/qunit-1.10.0.css +0 -235
  397. package/examples/browser/qunit/qunit-1.10.0.js +0 -1977
  398. package/examples/browser/runTestsWithCoverage.bat +0 -19
  399. package/examples/browser/runner.js +0 -178
  400. package/examples/browser/src/Foo.js +0 -14
  401. package/examples/browser/srcInstrumented/Foo.js +0 -6
  402. package/examples/browser/test/FooTest.js +0 -31
  403. package/examples/browser/testDojo.js +0 -63
  404. package/examples/browser/testInstrumented/FooTest.js +0 -6
  405. package/examples/coffee/coffeeTestsCoffee/foo.coffee +0 -4
  406. package/examples/coffee/coffeeTestsCoffee/tests.coffee +0 -7
  407. package/examples/coffee/coffeeTestsJs/foo.js +0 -9
  408. package/examples/coffee/coffeeTestsJs/tests.coffee +0 -9
  409. package/examples/coffee/jsTestsCoffee/foo.coffee +0 -4
  410. package/examples/coffee/jsTestsCoffee/tests.js +0 -8
  411. package/examples/coverage.png +0 -0
  412. package/examples/crash/foo.js +0 -8
  413. package/examples/crashOnLoading/foo.js +0 -3
  414. package/examples/crashStackSize/foo.js +0 -8
  415. package/examples/crashStackSize/test.js +0 -7
  416. package/examples/doh/foo.js +0 -15
  417. package/examples/doh/fooTests.js +0 -28
  418. package/examples/dohDefine/foo.js +0 -14
  419. package/examples/dohDefine/fooTests.js +0 -24
  420. package/examples/dojo/src/Foo.js +0 -12
  421. package/examples/dojo/test/FooTest.js +0 -9
  422. package/examples/dojo/testDojo.js +0 -69
  423. package/examples/equiv/equiv.js +0 -22
  424. package/examples/example.png +0 -0
  425. package/examples/exec/foo.js +0 -5
  426. package/examples/exec/tests.js +0 -50
  427. package/examples/expect/test.js +0 -53
  428. package/examples/extend/extend-through-api.js +0 -40
  429. package/examples/extend/test.js +0 -18
  430. package/examples/faster/fibonacci.js +0 -18
  431. package/examples/faster/test.js +0 -89
  432. package/examples/fluent/foo.js +0 -38
  433. package/examples/funcAndArity/test.js +0 -15
  434. package/examples/gtAndQUnit/gtTests.js +0 -6
  435. package/examples/gtAndQUnit/qunitTests.js +0 -5
  436. package/examples/jsUnity/foo.js +0 -10
  437. package/examples/jsUnity/fooTests.js +0 -19
  438. package/examples/lodash/totalLength.js +0 -19
  439. package/examples/longStrings/test.js +0 -27
  440. package/examples/moduleSetupTeardown/test.js +0 -115
  441. package/examples/namedTest/foo.js +0 -9
  442. package/examples/overrideGt/test.js +0 -11
  443. package/examples/quickFail/test.js +0 -22
  444. package/examples/qunit/foo.js +0 -13
  445. package/examples/reporting/tests.coffee +0 -9
  446. package/examples/requirejs/lib/Foo.js +0 -11
  447. package/examples/requirejs/lib/Rectangle.js +0 -13
  448. package/examples/requirejs/runTests.js +0 -5
  449. package/examples/requirejs/test/RectangleTest.js +0 -22
  450. package/examples/silent/foo.js +0 -7
  451. package/examples/silent/fooTest.js +0 -18
  452. package/examples/skipTest/tests.js +0 -15
  453. package/examples/testsFromOtherTests/parentTests.js +0 -7
  454. package/examples/testsFromOtherTests/tests.js +0 -5
  455. package/examples/throws/test.js +0 -17
  456. package/examples/use-gt-as-module/fooTest.js +0 -8
  457. package/examples/use-gt-as-module/test-code.js +0 -7
  458. package/gt.js +0 -11
  459. package/lib/coverage.js +0 -234
  460. package/src/JUnitReporter.js +0 -30
  461. package/src/QUnitBrowserAdapter.js +0 -15
  462. package/src/Reporter.js +0 -127
  463. package/src/TestRunInfo.js +0 -25
  464. package/src/TestRunner.js +0 -223
  465. package/src/UnitTest/CollectionMethods.js +0 -97
  466. package/src/UnitTest/ModuleTests.js +0 -104
  467. package/src/UnitTest/Test.js +0 -85
  468. package/src/UnitTest/TestAsync.js +0 -78
  469. package/src/UnitTest/TestBaseInfo.js +0 -21
  470. package/src/UnitTest/TestCollection.js +0 -206
  471. package/src/UnitTest/TestInfo.js +0 -30
  472. package/src/UnitTest/TestReport.js +0 -27
  473. package/src/assertions/PrimaryAssertions.js +0 -163
  474. package/src/assertions/SecondaryAssertions.js +0 -262
  475. package/src/assertions/TertiaryAssertions.js +0 -99
  476. package/src/bddInterface.js +0 -39
  477. package/src/covered.js +0 -156
  478. package/src/dohAdapter.js +0 -79
  479. package/src/dohInterface.js +0 -20
  480. package/src/equiv.js +0 -11
  481. package/src/jsunityAdapter.js +0 -66
  482. package/src/jsunityInterface.js +0 -13
  483. package/src/options.js +0 -116
  484. package/src/shiv.js +0 -16
  485. package/src/sure.js +0 -226
  486. package/src/test/ConsoleHider.js +0 -26
  487. package/src/test/JUnitReporter.js +0 -12
  488. package/src/test/ModuleTests.js +0 -37
  489. package/src/test/Test.js +0 -18
  490. package/src/test/TestCollection.js +0 -21
  491. package/src/test/TestRunInfo.js +0 -15
  492. package/src/test/TestRunner.js +0 -9
  493. package/src/test/utils.js +0 -43
  494. package/src/utils/ConsoleHider.js +0 -27
  495. package/src/utils/WatchFiles.js +0 -13
  496. package/src/utils/discoverFiles.js +0 -18
  497. package/src/utils/joinArguments.js +0 -13
  498. package/src/utils/not.js +0 -14
  499. package/src/utils/pluckFunction.js +0 -15
  500. package/src/utils/test/joinArgumentsTest.js +0 -24
  501. package/src/utils/test/not.js +0 -70
  502. package/src/utils/test/pluckFunctionLoDashTest.js +0 -51
  503. package/src/utils/test/pluckFunctionTest.js +0 -41
  504. package/src/utils/test/pluckObjects.js +0 -20
  505. package/src/utils/utils.js +0 -146
  506. package/tests/all.js +0 -24
  507. package/tests/large/bddTest.js +0 -9
  508. package/tests/large/expectedCrash.js +0 -3
  509. package/tests/large/expectedCrashTest.js +0 -9
  510. package/tests/large/filterCLI.js +0 -10
  511. package/tests/large/filterCLITest.js +0 -18
  512. package/tests/large/loadingCrash.js +0 -1
  513. package/tests/large/loadingCrashTest.js +0 -9
  514. package/tests/large/skip.js +0 -11
  515. package/tests/large/skipTest.js +0 -9
  516. package/tests/large/twoFailing.js +0 -9
  517. package/tests/large/twoFailingTest.js +0 -9
  518. package/tests/mocha/.npmignore +0 -1
  519. package/tests/mocha/basic.js +0 -12
  520. package/tests/mocha/gt-as-module.js +0 -65
  521. package/tests/mocha/test-collection.js +0 -67
  522. package/tests/small/errorInAsync.js +0 -6
  523. package/tests/small/errorInAsyncTest.js +0 -14
  524. package/tests/small/oneFails.js +0 -7
  525. package/tests/small/oneFailsTest.js +0 -18
  526. package/tests/small/pluckObjects.js +0 -20
  527. package/tests/small/pluckTest.js +0 -51
  528. package/tests/small/setupException.js +0 -8
  529. package/tests/small/setupExceptionTest.js +0 -9
  530. package/tests/small/teardownException.js +0 -8
  531. package/tests/small/teardownExceptionTest.js +0 -9
@@ -1,18 +0,0 @@
1
- var foo = require('./foo').foo;
2
-
3
- gt.module('foo');
4
-
5
- gt.test('testing foo', function () {
6
- gt.func(foo, 'foo is a function');
7
- console.log('a message from test function');
8
- var result = foo();
9
- gt.string(result, 'foo returns a string');
10
- gt.equal(result, 'foo', 'foo returns foo');
11
- });
12
-
13
- gt.test('broken on purpose', function () {
14
- console.log('this test fails on purpose');
15
- var result = foo();
16
- gt.ok(false, 'ok false!');
17
- console.log('you should see these messages after the test');
18
- });
@@ -1,15 +0,0 @@
1
- gt.module('skip few tests');
2
-
3
- gt.test('run this test', function () {
4
- gt.ok(true, 'this tests runs');
5
- });
6
-
7
- gt.skip('skip test using gt.skip', function () {
8
- gt.ok(false, 'should not be executed');
9
- throw new Error('Skip test using gt.skip');
10
- });
11
-
12
- gt.notest('skip test using gt.notest', function () {
13
- gt.ok(false, 'should not be executed');
14
- throw new Error('Skip test using gt.notest');
15
- });
@@ -1,7 +0,0 @@
1
- require('./tests');
2
-
3
- gt.module('few tests in parent file');
4
-
5
- gt.test('empty', function() {
6
- gt.ok(true, 'parent test ok');
7
- });
@@ -1,5 +0,0 @@
1
- gt.module('child tests');
2
-
3
- gt.test('child test', function () {
4
- gt.ok(true, 'child test ok');
5
- });
@@ -1,17 +0,0 @@
1
- gt.module('throws');
2
-
3
- gt.test("throws exists", function () {
4
- gt.func(gt.throws, "throws function exists");
5
- });
6
-
7
- gt.test("throws a string", function () {
8
- gt.throws(function () {
9
- throw "something";
10
- }, "string", "function throws a string");
11
- });
12
-
13
- gt.test("throws Error", function () {
14
- gt.throws(function () {
15
- throw new Error("something");
16
- }, Error, "function throws an Error");
17
- });
@@ -1,8 +0,0 @@
1
- function foo() {
2
- return 'foo';
3
- }
4
-
5
- test('foo test', function () {
6
- equal(typeof foo, 'function', 'foo is a function');
7
- equal(foo(), 'foo', 'foo returns string foo');
8
- });
@@ -1,7 +0,0 @@
1
- var gt = require('../../sure.js');
2
- gt.init({
3
- files: ['fooTest.js']
4
- });
5
- var failed = gt.run();
6
- console.log(failed + ' tests failed');
7
- process.exit(failed);
package/gt.js DELETED
@@ -1,11 +0,0 @@
1
- require('lazy-ass').globalRegister();
2
- var covered = require('./src/covered');
3
- var sure = require('./src/sure');
4
- module.exports = {
5
- TestingWithCoverage: covered,
6
- TestingFramework: sure
7
- };
8
-
9
- if (!module.parent) {
10
- throw new Error('Use bin/gt.js as a stand alone command');
11
- }
package/lib/coverage.js DELETED
@@ -1,234 +0,0 @@
1
- var path = require('path'),
2
- fs = require('fs'),
3
- istanbul = require('istanbul'),
4
- hook = istanbul.hook,
5
- Instrumenter = istanbul.Instrumenter,
6
- Collector = istanbul.Collector,
7
- instrumenter = new Instrumenter(),
8
- Report = istanbul.Report,
9
- collector,
10
- globalAdded = false,
11
- fileMap = {};
12
-
13
- // var coffeescript = require('coffee-script');
14
-
15
- /**
16
- * Facade for all coverage operations support node as well as browser cases
17
- *
18
- * Usage:
19
- * ```
20
- * //Node unit tests
21
- * var coverage = require('/path/to/this/file');
22
- * coverage.hookRequire(); // hooks require for instrumentation
23
- * coverage.addInstrumentCandidate(file); // adds a file that needs to be instrumented; should be called before file is `require`d
24
- *
25
- * //Browser tests
26
- * var coverage = require('/path/to/this/file');
27
- * var instrumentedCode = coverage.instrumentFile(file); //alternatively, use `instrumentCode` if you have already loaded the code
28
- * //collect coverage from the browser
29
- * // this coverage will be stored as `window.__coverage__`
30
- * // and...
31
- * coverage.addCoverage(coverageObject); // rinse and repeat
32
- * ```
33
- *
34
- * //in all cases, add an exit handler to the process
35
- * process.once('exit', function () { coverage.writeReports(outputDir); }); //write coverage reports
36
- */
37
-
38
- /**
39
- * adds a file as a candidate for instrumentation when require is hooked
40
- * @method addInstrumentCandidate
41
- * @param file the file to add as an instrumentation candidate
42
- */
43
- function addInstrumentCandidate(file) {
44
- file = path.resolve(file);
45
- fileMap[file] = true;
46
- }
47
- /**
48
- * hooks require to instrument all files that have been specified as instrumentation candidates
49
- * @method hookRequire
50
- * @param verbose true for debug messages
51
- */
52
- function hookRequire(verbose, preTransform, excludeFilenameFilter) {
53
- resetCollector();
54
- if (preTransform) {
55
- console.assert(typeof preTransform === 'function',
56
- 'preTransform should be a function');
57
- }
58
- if (excludeFilenameFilter) {
59
- console.assert(typeof excludeFilenameFilter === 'function',
60
- 'filename filter should be a function');
61
- }
62
-
63
- // match local files, but not installed modules
64
- var matchFn = function (file) {
65
- var match = fileMap[file];
66
- if (!match) {
67
- // match = !file.match(/node_modules/);
68
- match = !excludeFilenameFilter(file);
69
- }
70
- var what = match ? 'Hooking ' : 'NOT hooking ';
71
- if (verbose) {
72
- console.log(what + file);
73
- }
74
- return match;
75
- };
76
-
77
- var transformFn = function(code, filename) {
78
-
79
- // console.log('instrumenting code for', filename);
80
- var instrumented = instrumenter.instrumentSync.call(instrumenter, code, filename);
81
- //console.log('returning instrumented code for', filename);
82
-
83
- if (preTransform) {
84
- // console.log('pretransforming code for', filename);
85
- instrumented = preTransform(instrumented, filename);
86
- // console.log('prefixed code\n', instrumented);
87
- }
88
- return instrumented;
89
- };
90
-
91
- // var transformFn = instrumenter.instrumentSync.bind(instrumenter);
92
- hook.hookRequire(matchFn, transformFn);
93
-
94
- // instrument code from .coffee files that are first compiled using coffeescript compiler
95
- /*
96
- require.extensions['.coffee'] = function(module, filename) {
97
- console.log('ISTANBUL coverage: returning compiled file', filename);
98
- var content;
99
- content = coffeescript.compile(fs.readFileSync(filename, 'utf8'), {
100
- filename: filename
101
- });
102
- var instrumented = transformFn(content);
103
- console.log('instrumented content', instrumented, 'for file', filename);
104
- return module._compile(content, filename);
105
- };
106
- */
107
- }
108
- /**
109
- * unhooks require hooks that have been installed
110
- * @method unhookRequire
111
- */
112
- function unhookRequire() {
113
- hook.unhookRequire();
114
- }
115
- /**
116
- * returns the coverage collector, creating one if necessary and automatically
117
- * adding the contents of the global coverage object. You can use this method
118
- * in an exit handler to get the accumulated coverage.
119
- */
120
- function getCollector() {
121
- if (!collector) {
122
- collector = new Collector();
123
- }
124
-
125
- if (globalAdded) {
126
- return collector;
127
- }
128
-
129
- if (global['__coverage__']) {
130
- collector.add(global['__coverage__']);
131
- globalAdded = true;
132
- } else {
133
- console.error('No global coverage found for the node process');
134
- }
135
- return collector;
136
- }
137
-
138
- function resetCollector() {
139
- if (collector) {
140
- collector = null;
141
- }
142
- if (global['__coverage__']) {
143
- delete global['__coverage__'];
144
- }
145
- globalAdded = false;
146
- }
147
-
148
- /**
149
- * adds coverage to the collector for browser test cases
150
- * @param coverageObject the coverage object to add
151
- */
152
- function addCoverage(coverageObject) {
153
- if (!collector) {
154
- collector = new Collector();
155
- }
156
- collector.add(coverageObject);
157
- }
158
- /**
159
- * returns the merged coverage for the collector
160
- */
161
- function getFinalCoverage() {
162
- return getCollector().getFinalCoverage();
163
- }
164
-
165
- /**
166
- * writes reports for an array of JSON files representing partial coverage information
167
- * @method writeReportsFor
168
- * @param fileList array of file names containing partial coverage objects
169
- * @param dir the output directory for reports
170
- */
171
- function writeReportsFor(fileList, dir) {
172
- var collector = new Collector();
173
- fileList.forEach(function (file) {
174
- var coverage = JSON.parse(fs.readFileSync(file, 'utf8'));
175
- collector.addCoverage(coverage);
176
- });
177
- writeReportsInternal(dir, collector);
178
- }
179
-
180
- /**
181
- * writes reports for everything accumulated by the collector
182
- * @method writeReports
183
- * @param dir the output directory for reports
184
- */
185
- function writeReports(dir, writeSummary) {
186
- writeReportsInternal(dir, writeSummary, getCollector());
187
- }
188
-
189
- function writeReportsInternal(dir, writeSummary, collector) {
190
- dir = dir || process.cwd();
191
- var reports = [
192
- Report.create('lcov', { dir: dir }),
193
- Report.create('text'),
194
- Report.create('json', { dir: dir }),
195
- Report.create('cobertura', { dir: dir }),
196
- ];
197
- if (writeSummary) {
198
- reports.push(Report.create('text-summary'));
199
- }
200
- reports.forEach(function (report) {
201
- report.writeReport(collector, true);
202
- })
203
- }
204
- /**
205
- * returns the instrumented version of the code specified
206
- * @param {String} code the code to instrument
207
- * @param {String} file the file from which the code was load
208
- * @return {String} the instrumented version of the code in the file
209
- */
210
- function instrumentCode(code, filename) {
211
- filename = path.resolve(filename);
212
- return instrumenter.instrumentSync(code, filename);
213
- }
214
- /**
215
- * returns the instrumented version of the code present in the specified file
216
- * @param file the file to load
217
- * @return {String} the instrumented version of the code in the file
218
- */
219
- function instrumentFile(file) {
220
- filename = path.resolve(file);
221
- return instrumentCode(fs.readFileSync(file, 'utf8'), file);
222
- }
223
-
224
- module.exports = {
225
- addInstrumentCandidate: addInstrumentCandidate,
226
- hookRequire: hookRequire,
227
- unhookRequire: unhookRequire,
228
- instrumentCode: instrumentCode,
229
- instrumentFile: instrumentFile,
230
- addCoverage: addCoverage,
231
- writeReports: writeReports,
232
- getFinalCoverage: getFinalCoverage,
233
- resetCollector: resetCollector
234
- };
@@ -1,30 +0,0 @@
1
- var fs = require('fs');
2
-
3
- exports.Reporter = {
4
- log: function (modules, outputXmlFileName) {
5
- console.assert(outputXmlFileName, 'missing output xml filename');
6
- log.log('writing JUnit report to', outputXmlFileName);
7
-
8
- var out = '<?xml version="1.0" encoding="UTF-8"?>\n';
9
- out += '<testsuites>\n';
10
- modules.forEach(function (M) {
11
- out += '<testsuite name="' + M.name + '">\n';
12
- var tests = M.getTests();
13
- tests.forEach(function (test) {
14
- out += '\t<testcase name="' + test.name + '">\n';
15
- if (test.hasFailed()) {
16
- var messages = test.getMessages();
17
- messages.forEach(function (message) {
18
- out += '\t\t<failure type="error">' + message + '</failure>\n';
19
- });
20
- out += '<system-err>\n' + messages.join('\n') + '\n</system-err>\n';
21
- }
22
- out += '\t</testcase>\n';
23
- });
24
- out += '</testsuite>\n';
25
- });
26
- out += '</testsuites>\n';
27
-
28
- fs.writeFileSync(outputXmlFileName, out);
29
- }
30
- };
@@ -1,15 +0,0 @@
1
- // Adapts GT framework names to QUnit test runner
2
- /*global QUnit:true*/
3
- if (typeof QUnit === 'object' &&
4
- typeof QUnit.extend === 'function') {
5
- QUnit.extend(QUnit, {
6
- aequal: function (array1, array2, message) {
7
- var a1 = array1.toString();
8
- var a2 = array2.toString();
9
- var passes = (a1 === a2);
10
- QUnit.push(passes, a1, a2, message);
11
- }
12
- });
13
- /*global gt:true*/
14
- gt = QUnit;
15
- }
package/src/Reporter.js DELETED
@@ -1,127 +0,0 @@
1
- var centerMessage = require('./utils/utils').centerMessage;
2
- var pluck = require('./utils/pluckFunction');
3
- var sprintf = require('sprintf').sprintf;
4
- var clc = require('cli-color');
5
- var sprintf = require('sprintf').sprintf;
6
- var _ = require('lodash');
7
- var check = require('check-types');
8
-
9
- var Test = require('./UnitTest/Test').Test;
10
- check.verify.string(Test.PASS, 'Test.PASS is undefined');
11
-
12
- var lineLength = process.stdout.isTTY ? process.stdout.getWindowSize()[0] : 100;
13
- if (!lineLength) {
14
- // could happen inside Docker container for example
15
- lineLength = 100;
16
- }
17
- check.verify.positiveNumber(lineLength, 'invalid terminal line length', lineLength);
18
-
19
- function _reportTests(tests, config) {
20
- check.verify.array(tests, 'tests is not an array');
21
-
22
- config = config || {};
23
- var skipPassed = config.reporter;
24
- var useColors = !!config.colors;
25
-
26
- tests.forEach(function (test) {
27
- if (!test.hasFailed() && skipPassed) {
28
- return;
29
- }
30
- if (!test.hasRun) {
31
- // crashes in module setup?
32
- if (!test.hasCrashed) {
33
- return;
34
- }
35
- }
36
- var message = test.formMessage(lineLength);
37
- var status = test.status();
38
- check.verify.string(status, 'could not get status', message);
39
-
40
- if (useColors) {
41
- var color = _statusColor(status);
42
- check.verify.fn(color, 'could not get color for test status', test.status());
43
- console.log(color(message));
44
- } else {
45
- console.log(message);
46
- }
47
- if (test.hasReallyFailed() && test.stdout) {
48
- console.log(' from: ' + test.filename);
49
- console.log(test.stdout, '\n');
50
- }
51
- });
52
- }
53
-
54
- function _writeMessage(msg, failed, useColors) {
55
- check.verify.string(msg, 'nothing to write');
56
-
57
- if (useColors) {
58
- var color = (failed ? clc.redBright : clc.greenBright);
59
- console.log(color(msg));
60
- } else {
61
- console.log(msg);
62
- }
63
- }
64
-
65
- function _report(modules, config) {
66
- check.verify.array(modules, 'modules is not an array');
67
- if (!modules.length) {
68
- log.debug('nothing to report, no test modules');
69
- return;
70
- }
71
- var useColors = !!config.colors;
72
-
73
- var title = 'Individual Test Results';
74
-
75
- var moduleFiles = modules.map(pluck('getFilename'));
76
- moduleFiles = _(moduleFiles).uniq().filter().value();
77
- if (moduleFiles.length === 1) {
78
- title = moduleFiles[0];
79
- }
80
- // console.log('modules comes from', moduleFiles);
81
- console.log(centerMessage(lineLength, title));
82
- var finalFormat = ' %-' + (lineLength - 32) + 's %3d%% (%d / %d)';
83
-
84
- modules.forEach(function (module) {
85
- check.verify.string(module.name, 'could not find name for module');
86
-
87
- var failed = module.hasFailed() || module.crashed;
88
- if (!failed && config.quickFail) {
89
- if (!module.notRun()) {
90
- return;
91
- }
92
- }
93
- var duration = module.duration();
94
- console.assert(duration >= 0, 'expected duration number for module', module.name);
95
- _writeMessage(module.name + ' ' + duration + 'ms', failed, useColors);
96
-
97
- _reportTests(module.getTests(), config);
98
-
99
- var good = module.getPassedTests();
100
- var total = module.getNumberOfTests();
101
- var percentage = module.passedPercentage();
102
- var filename = module.getFilename() || 'unknown file';
103
- check.verify.string(filename, 'module', module.name, 'does not have filename');
104
- var message = sprintf(finalFormat, filename, Math.round(percentage), good, total);
105
- _writeMessage(message, failed, useColors);
106
- });
107
-
108
- console.log(centerMessage(lineLength));
109
- }
110
-
111
- var statusColors = {};
112
- statusColors[Test.PASS] = clc.greenBright;
113
- statusColors[Test.FAIL] = clc.redBright.bold;
114
- statusColors[Test.CRASH] = clc.magentaBright;
115
- statusColors[Test.INCOMPLETE] = clc.yellowBright;
116
- statusColors[Test.SKIP] = clc.blueBright;
117
-
118
- function _statusColor(status) {
119
- check.verify.string(status, 'status is not a string', status);
120
- var color = statusColors[status];
121
- console.assert(color, 'could not find color for status', status);
122
- return color;
123
- }
124
-
125
- exports.Reporter = {
126
- log: _report
127
- };
@@ -1,25 +0,0 @@
1
- var TestRunInfo = {
2
- _currentTest: undefined,
3
-
4
- _afterTest: function () {
5
- this._currentTest = undefined;
6
- },
7
-
8
- _beforeAssertion: function () {
9
- console.assert(this._currentTest !== undefined, 'current test is undefined');
10
- this._currentTest.assertions += 1;
11
- },
12
-
13
- _brokenAssertion: function (message) {
14
- console.assert(this._currentTest !== undefined, 'current test is undefined');
15
- this._currentTest.broken += 1;
16
- var msg = 'ERROR in "' + this._currentTest.name;
17
- if (message) {
18
- msg += '", ' + message;
19
- }
20
- console.error(msg);
21
- this._currentTest.errorMessage(msg);
22
- }
23
- };
24
-
25
- exports.TestRunInfo = TestRunInfo;