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,41 +0,0 @@
1
- var _ = require('lodash');
2
- var objects = require('./pluckObjects').objects;
3
- var pluckFunction = require('../pluckFunction');
4
-
5
- gt.module('pluck using function');
6
- gt.test('pluckFunction', function () {
7
- gt.func(pluckFunction, 'pluckFunction is a function');
8
- gt.arity(pluckFunction, 1, 'expects single input');
9
- gt.raisesAssertion(function() {
10
- pluckFunction();
11
- }, 'needs argument');
12
- });
13
-
14
- gt.test('by pluck function', function () {
15
- var results = _.filter(objects, pluckFunction('isChild'));
16
- gt.array(results, 'returned an array');
17
- });
18
-
19
- gt.test('check prototype function', function () {
20
- gt.ok(!objects[0].isOlderThan4(), 'first is not');
21
- gt.ok(objects[1].isOlderThan4(), 'second is');
22
- gt.ok(objects[2].isOlderThan4(), 'third is');
23
- });
24
-
25
- gt.test('by pluck function in prototype', function () {
26
- var results = _.filter(objects, pluckFunction('isOlderThan4'));
27
- gt.equal(results.length, 2, 'two are older than 4');
28
- });
29
-
30
- gt.test('pluck property does not exist', function () {
31
- var results = _.filter(objects, pluckFunction('something'));
32
- gt.equal(results.length, 0, 'empty array is returned');
33
- });
34
-
35
- gt.test('Array.some', function() {
36
- var anyChildren = objects.some(pluckFunction('isChild'));
37
- gt.ok(anyChildren, 'there are childre');
38
-
39
- var nothing = objects.some(pluckFunction('something'));
40
- gt.ok(!nothing, 'property does not exist');
41
- });
@@ -1,20 +0,0 @@
1
- var objects = [];
2
-
3
- function Person(name, age, child) {
4
- this.name = name;
5
- this.age = age;
6
- this.child = child;
7
- this.isChild = function() {
8
- return !!this.child;
9
- };
10
- }
11
-
12
- Person.prototype.isOlderThan4 = function() {
13
- return this.age > 4;
14
- };
15
-
16
- objects.push(new Person('a', 4, true));
17
- objects.push(new Person('b', 5, true));
18
- objects.push(new Person('c', 10));
19
-
20
- module.exports.objects = objects;
@@ -1,146 +0,0 @@
1
- var quote = require('quote');
2
- /**
3
- @function optional
4
- Replaces
5
- if (condition) {
6
- foo(args);
7
- }
8
- with
9
-
10
- optional(foo)(condition, args);
11
- */
12
- module.exports.optional = function (fn) {
13
- return function(condition) {
14
- if (condition) {
15
- return fn.apply(this, [].slice.call(arguments, 1));
16
- }
17
- };
18
- }
19
-
20
- /**
21
- @function defaults
22
- Returns first non null defined value, good for default parameter values
23
-
24
- Replaces
25
- config = config || {}
26
- with
27
- config = defaults(config, {});
28
-
29
- var foo = defaults(config.foo, options.foo, 'foo');
30
-
31
- Leads to much lower cyclomatic complexity
32
- */
33
- module.exports.defaults = function () {
34
- var args = [].slice.call(arguments, 0);
35
- var foundValue = null;
36
- args.some(function (value) {
37
- // console.log('checking value', value);
38
- if (typeof value !== 'undefined' &&
39
- value !== null) {
40
- foundValue = value;
41
- return true;
42
- }
43
- return false;
44
- });
45
- return foundValue;
46
- }
47
-
48
- function getLines(n) {
49
- console.assert(n >= 0 && n < 200, "invalid number of characters", n);
50
- if (n === 0) {
51
- return "";
52
- }
53
-
54
- var str = "";
55
- var k;
56
- for (k = 0; k < n; k += 1) {
57
- str += "=";
58
- }
59
- return str;
60
- }
61
-
62
- function verifyLength(n, str) {
63
- console.assert(str.length === n,
64
- "need string with", n, "characters, got", str.length, "string", quote(str));
65
- }
66
-
67
- function centerMessage(n, message) {
68
- console.assert(n > 0 && n < 200, "invalid number of characters", n);
69
-
70
- var str = '';
71
- if (typeof message === "string" && message.length > 0) {
72
- message = ' ' + message + ' ';
73
- if (n < message.length) {
74
- n = message.length;
75
- str = message;
76
- } else {
77
- var start = Math.floor((n - message.length) / 2);
78
- if (start < 0) {
79
- start = 0;
80
- }
81
- var end = n - start - message.length;
82
- str = getLines(start) + message;
83
- if (end > 0) {
84
- str += getLines(end);
85
- } else {
86
- end = 0;
87
- }
88
- }
89
- } else {
90
- str = getLines(n);
91
- }
92
-
93
- verifyLength(n, str);
94
- return str;
95
- }
96
-
97
- // from http://stackoverflow.com/questions/13227489/how-can-one-get-the-file-path-of-the-caller-function-in-node-js
98
- function getCallerFilename() {
99
- var stack = getStack();
100
-
101
- //console.log(__filename);
102
- // Remove superfluous function calls on stack
103
- while (stack.length) {
104
- stack.shift();
105
- stack.shift();
106
- stack.shift();
107
- // stack.shift();
108
- //console.log(stack[0]);
109
- // console.log(stack[0].receiver);
110
- if (!stack[0].receiver) {
111
- return null;
112
- }
113
- return stack[0].receiver.filename;
114
- };
115
- console.log('could not find filename');
116
- return null;
117
- // Return caller's caller
118
- //return stack[0].receiver;
119
- }
120
-
121
- function getStack() {
122
- // Save original Error.prepareStackTrace
123
- var origPrepareStackTrace = Error.prepareStackTrace
124
-
125
- // Override with function that just returns `stack`
126
- Error.prepareStackTrace = function (_, stack) {
127
- return stack
128
- }
129
-
130
- // Create a new `Error`, which automatically gets `stack`
131
- var err = new Error();
132
-
133
- // Evaluate `err.stack`, which calls our new `Error.prepareStackTrace`
134
- var stack = err.stack;
135
-
136
- // Restore original `Error.prepareStackTrace`
137
- Error.prepareStackTrace = origPrepareStackTrace
138
-
139
- // Remove superfluous function call on stack
140
- stack.shift() // getStack --> Error
141
- return stack;
142
- }
143
-
144
- exports.getLines = getLines;
145
- exports.centerMessage = centerMessage;
146
- exports.getCallerFilename = getCallerFilename;
package/tests/all.js DELETED
@@ -1,24 +0,0 @@
1
- console.log('loading tests, takes a few seconds');
2
-
3
- var smallTests = [
4
- './small/pluckTest',
5
- '../src/utils/test/joinArgumentsTest',
6
- './small/oneFailsTest',
7
- './small/teardownExceptionTest',
8
- './small/setupExceptionTest',
9
- './small/errorInAsyncTest'
10
- ];
11
-
12
- var mediumTests = [
13
- ];
14
-
15
- var largeTests = [
16
- './large/loadingCrashTest',
17
- './large/twoFailingTest',
18
- './large/skipTest',
19
- './large/bddTest'
20
- ];
21
-
22
- smallTests.forEach(require);
23
- mediumTests.forEach(require);
24
- largeTests.forEach(require);
@@ -1,9 +0,0 @@
1
- gt.module('BDD interface');
2
-
3
- var path = require('path');
4
- var gtPath = path.join(__dirname, '../../bin/gt.js');
5
- var testFile = path.join(__dirname, '../../examples/bdd/spec.js');
6
-
7
- gt.async('bdd spec runs', 1, function () {
8
- gt.exec('node', [gtPath, testFile, '--bdd'], 0, 'gt runs bdd spec');
9
- }, 10000);
@@ -1,3 +0,0 @@
1
- gt.test('CRASH: I expected a crash', function() {
2
- gt.ok(true, 'nothing crashing here');
3
- });
@@ -1,9 +0,0 @@
1
- gt.module('loading expected crash');
2
-
3
- var path = require('path');
4
- var gtPath = path.join(__dirname, '../../bin/gt.js');
5
- var testFile = path.join(__dirname, 'expectedCrash.js');
6
-
7
- gt.async('expecting crash', 1, function () {
8
- gt.exec('node', [gtPath, testFile], 1, 'gt returns 1');
9
- }, 10000);
@@ -1,10 +0,0 @@
1
- /* jshint indent:2 */
2
- gt.module('two tests, one failing for filtering');
3
-
4
- gt.test('good test', function () {
5
- gt.ok(true, 'good test passes');
6
- });
7
-
8
- gt.test('bad test', function () {
9
- gt.ok(false, 'this test is bad, does not pass');
10
- });
@@ -1,18 +0,0 @@
1
- /* jshint indent:2 */
2
- gt.module('loading expected crash');
3
-
4
- var join = require('path').join;
5
- var gtPath = join(__dirname, '../../bin/gt.js');
6
- var testFile = join(__dirname, 'filterCLI.js');
7
-
8
- gt.async('selecting only good test', 1, function () {
9
- gt.exec('node', [gtPath, testFile, '--test', 'good'], 0, 'good test passes');
10
- }, 10000);
11
-
12
- gt.async('selecting only good test using more complicated regexp', 1, function () {
13
- gt.exec('node', [gtPath, testFile, '--test', '.ood'], 0, 'good test passes');
14
- }, 10000);
15
-
16
- gt.async('filtering alias', 1, function () {
17
- gt.exec('node', [gtPath, testFile, '--filter', '..od'], 0, 'good test passes');
18
- }, 10000);
@@ -1 +0,0 @@
1
- throw new Error('this module crashes on loading');
@@ -1,9 +0,0 @@
1
- gt.module('loading crash test');
2
-
3
- var path = require('path');
4
- var gtPath = path.join(__dirname, '../../bin/gt.js');
5
- var testFile = path.join(__dirname, 'loadingCrash.js');
6
-
7
- gt.async('loading crashing module', 1, function () {
8
- gt.exec('node', [gtPath, testFile], 1, 'gt returns 1');
9
- }, 10000);
@@ -1,11 +0,0 @@
1
- gt.module('skip unit tests');
2
-
3
- gt.test(function normal() {
4
- gt.ok(true, 'assertion passes');
5
- });
6
-
7
- gt.skip(function skipped() {
8
- console.log('should not be executing this test');
9
- gt.ok(false, 'fails on purpose');
10
- throw new Error('fail this test');
11
- });
@@ -1,9 +0,0 @@
1
- gt.module('skipped tests');
2
-
3
- var path = require('path');
4
- var gtPath = path.join(__dirname, '../../bin/gt.js');
5
- var testFile = path.join(__dirname, 'skip.js');
6
-
7
- gt.async('call skip tests', 1, function () {
8
- gt.exec('node', [gtPath, testFile], 0, 'gt returns 0');
9
- }, 10000);
@@ -1,9 +0,0 @@
1
- gt.module('two failing unit tests');
2
-
3
- gt.test('first failing test', function() {
4
- gt.ok(false, 'assertion fails');
5
- });
6
-
7
- gt.test('second failing test', function() {
8
- gt.ok(false, 'assertion fails');
9
- });
@@ -1,9 +0,0 @@
1
- gt.module('exit code = number of failed unit tests');
2
-
3
- var path = require('path');
4
- var gtPath = path.join(__dirname, '../../bin/gt.js');
5
- var testFile = path.join(__dirname, 'twoFailing.js');
6
-
7
- gt.async('two failing unit tests', 1, function () {
8
- gt.exec('node', [gtPath, testFile], 2, 'gt returns 2');
9
- }, 10000);
@@ -1 +0,0 @@
1
- coverage/
@@ -1,12 +0,0 @@
1
- /* jshint indent:2 */
2
- /* globals describe, it */
3
- var assert = require('assert');
4
- var _ = require('lodash');
5
- var gt = require('../../gt');
6
-
7
- describe('gt', function () {
8
- it('should be available as a module', function () {
9
- assert(_.isObject(gt), 'gt is an object');
10
- assert(_.isObject(gt.TestingFramework), 'has testing TestingFramework');
11
- });
12
- });
@@ -1,65 +0,0 @@
1
- /* jshint indent:2 */
2
- /* globals describe, it */
3
- var la = require('lazy-ass');
4
- var check = require('check-types');
5
- var join = require('path').join;
6
- var exists = require('fs').existsSync;
7
-
8
- describe('gt as module', function () {
9
- var gt = require('../..');
10
- la(check.object(gt), 'expected gt', gt);
11
-
12
- it('has pure unit test framework (without coverage)', function () {
13
- la(check.object(gt.TestingFramework), 'missing pure testing framework', gt);
14
- });
15
-
16
- it('has unit test framework with coverage', function () {
17
- la(check.object(gt.TestingWithCoverage), 'missing testing framework coverage', gt);
18
- });
19
-
20
- it('runs basic tests without coverage', function (done) {
21
- var testsFilename = join(__dirname, '../../examples/basic/tests.js');
22
- la(exists(testsFilename), 'missing file', testsFilename);
23
- var options = {
24
- files: [testsFilename]
25
- };
26
- la(gt.TestingFramework.init(options), 'could not init', options);
27
- gt.TestingFramework.run(function finished(failedN) {
28
- la(failedN === 0, 'expected no failures');
29
- done();
30
- });
31
- });
32
-
33
- it('runs bdd test without coverage', function (done) {
34
- var bddTestFilename = join(__dirname, '../../examples/bdd/spec.js');
35
- la(exists(bddTestFilename), 'missing file', bddTestFilename);
36
-
37
- var options = {
38
- files: [bddTestFilename],
39
- bdd: true
40
- };
41
- la(gt.TestingFramework.init(options), 'could not init', options);
42
- gt.TestingFramework.run(function finished(failedN) {
43
- la(failedN === 0, 'expected no failures');
44
- done();
45
- });
46
- });
47
-
48
- it('runs bdd test WITH coverage', function (done) {
49
- var bddTestFilename = join(__dirname, '../../examples/bdd/spec.js');
50
- la(exists(bddTestFilename), 'missing file', bddTestFilename);
51
- var outputCoverage = join(__dirname, 'coverage');
52
-
53
- var options = {
54
- files: [bddTestFilename],
55
- bdd: true,
56
- cover: outputCoverage
57
- };
58
- la(gt.TestingWithCoverage.init(options), 'could not init', options);
59
- gt.TestingWithCoverage.run(function finished(failedN) {
60
- la(failedN === 0, 'expected no failures');
61
- la(exists(outputCoverage), 'created output coverage folder', outputCoverage);
62
- done();
63
- });
64
- });
65
- });
@@ -1,67 +0,0 @@
1
- /* jshint indent:2 */
2
- /* globals describe, it, beforeEach */
3
- var assert = require('assert');
4
- var join = require('path').join;
5
- var _ = require('lodash');
6
- require('console.json');
7
-
8
- describe('gt', function () {
9
- var gt = require('../..').TestingFramework;
10
- var testsFilename = join(__dirname, '../../examples/basic/tests.js');
11
-
12
- it('test basics', function () {
13
- assert.equal(typeof gt.collect, 'function', 'collect function');
14
- assert(require('fs').existsSync(testsFilename), 'test file exists');
15
- });
16
-
17
- describe('all test collection', function () {
18
-
19
- beforeEach(function () {
20
- gt.init();
21
- });
22
-
23
- it('collects test functions', function () {
24
- var filenames = gt.collect(testsFilename);
25
- assert(Array.isArray(filenames), 'returns array');
26
- assert.equal(filenames.length, 1, 'single file');
27
- });
28
-
29
- it('can get all tests after collection', function () {
30
- gt.collect(testsFilename);
31
- var tests = gt.getAllTests();
32
- assert(Array.isArray(tests), 'returns an array of tests');
33
- assert(tests.length > 10, 'there are lots of tests');
34
- assert(tests.every(function (t) {
35
- return t.name;
36
- }), 'every test has a name');
37
- });
38
-
39
- it('look at one test', function () {
40
- gt.collect(testsFilename);
41
- var tests = gt.getAllTests();
42
- var t = _.find(tests, {
43
- name: 'array check'
44
- });
45
- assert.equal(t.name, 'array check');
46
- assert(t.code, 'has code');
47
- var code = t.code.toString();
48
- assert.equal(typeof code, 'string', 'code can be serialized');
49
- assert(/gt\.array/.test(code), 'has correct content');
50
- });
51
- });
52
-
53
- describe('filtering collected tests', function () {
54
-
55
- beforeEach(function () {
56
- gt.init();
57
- });
58
-
59
- it('filters function by name', function () {
60
- var filter = /^array/;
61
- gt.collect(testsFilename, filter);
62
- var tests = gt.getAllTests();
63
- assert.equal(tests.length, 2, '2 unit tests with array in the name');
64
- });
65
-
66
- });
67
- });
@@ -1,6 +0,0 @@
1
- gt.module('error in async');
2
-
3
- gt.async('exception inside async test', function () {
4
- console.log('causing ReferenceError on purpose');
5
- foo.bar(); // foo is undefined on purpose
6
- });
@@ -1,14 +0,0 @@
1
- gt.module('error in async test handled');
2
-
3
- var path = require('path');
4
- var gtPath = path.join(__dirname, '../../bin/gt.js');
5
- var testFile = path.join(__dirname, 'errorInAsync.js');
6
- var fs = require('fs');
7
-
8
- gt.test('file exists', function () {
9
- gt.ok(fs.existsSync(testFile), 'file', testFile, 'exists');
10
- });
11
-
12
- gt.async('expect error', 1, function () {
13
- gt.exec('node', [gtPath, testFile], 1, 'gt returns 1');
14
- }, 10000);
@@ -1,7 +0,0 @@
1
- console.log('one test fails on purpose');
2
-
3
- gt.module('fails to check exit code');
4
-
5
- gt.test('this test fails on purpose', function() {
6
- gt.ok(false, 'this assertion fails');
7
- });
@@ -1,18 +0,0 @@
1
- gt.module('loading failing test');
2
-
3
- var path = require('path');
4
- var gtPath = path.join(__dirname, '../../bin/gt.js');
5
- var testFile = path.join(__dirname, 'oneFails.js');
6
-
7
- gt.async('expect fail', 1, function () {
8
- gt.exec('node', [gtPath, testFile], 1, 'gt returns 1');
9
- }, 10000);
10
-
11
- gt.async('inspect output', 1, function () {
12
- gt.exec('node', [gtPath, testFile], 1, function inspectOutput(stdout, stderr) {
13
- console.log('inspecting output');
14
- if (!/fails on purpose/.test(stdout)) {
15
- throw new Error('Could not find expected output');
16
- }
17
- });
18
- }, 10000);
@@ -1,20 +0,0 @@
1
- var objects = [];
2
-
3
- function Person(name, age, child) {
4
- this.name = name;
5
- this.age = age;
6
- this.child = child;
7
- this.isChild = function() {
8
- return !!this.child;
9
- };
10
- }
11
-
12
- Person.prototype.isOlderThan4 = function() {
13
- return this.age > 4;
14
- };
15
-
16
- objects.push(new Person('a', 4, true));
17
- objects.push(new Person('b', 5, true));
18
- objects.push(new Person('c', 10));
19
-
20
- module.exports.objects = objects;
@@ -1,51 +0,0 @@
1
- var _ = require('lodash');
2
- var objects = require('./pluckObjects').objects;
3
-
4
- gt.module('pluck using lodash');
5
-
6
- gt.test('simple function', function () {
7
- function isEven(n) { return n % 2 === 0; }
8
- var numbers = [1, 2, 3, 4, 5, 6, 7];
9
- var evens = _.filter(numbers, isEven);
10
- gt.aequal(evens, [2, 4, 6], 'filtered even numbers');
11
- });
12
-
13
- gt.test('by property', function () {
14
- var results = _.filter(objects, 'child');
15
- gt.equal(results.length, 2, 'picked two objects');
16
- gt.aequal(results, [objects[0], objects[1]], 'picked');
17
- });
18
-
19
- gt.test('by bool property value', function () {
20
- var results = _.filter(objects, {child: true});
21
- gt.equal(results.length, 2, 'picked two objects');
22
- gt.aequal(results, [objects[0], objects[1]], 'picked');
23
- });
24
-
25
- gt.test('by string property value', function () {
26
- var results = _.filter(objects, {name: 'a'});
27
- gt.equal(results.length, 1, 'picked 1 object');
28
- gt.aequal(results, [objects[0]], 'picked');
29
- });
30
-
31
- gt.test('by two properties', function () {
32
- var results = _.filter(objects, {
33
- child: true,
34
- age: 5
35
- });
36
- gt.equal(results.length, 1, 'picked 1 object');
37
- gt.aequal(results, [objects[1]], 'picked');
38
- });
39
-
40
- gt.test('testing isChild', 3, function() {
41
- gt.ok(objects[0].isChild(), 'is child');
42
- gt.ok(objects[1].isChild(), 'is child');
43
- gt.ok(!objects[2].isChild(), 'is NOT child');
44
- });
45
-
46
- gt.test('by bool function', function () {
47
- var results = _.filter(objects, 'isChild');
48
- // all objects have function names isChild
49
- gt.equal(results.length, 3, 'picked all objects');
50
- gt.aequal(results, objects, 'picked');
51
- });
@@ -1,8 +0,0 @@
1
- gt.module('exception in setup', {
2
- setup: function () {
3
- foo.bar = false;
4
- // cause ReferenceError on purpose
5
- }
6
- });
7
-
8
- gt.test('a test', 0, function () {});
@@ -1,9 +0,0 @@
1
- gt.module('module.setup crashes');
2
-
3
- var path = require('path');
4
- var gtPath = path.join(__dirname, '../../bin/gt.js');
5
- var testFile = path.join(__dirname, 'setupException.js');
6
-
7
- gt.async('expect fail on exception in module\'s setup', 1, function () {
8
- gt.exec('node', [gtPath, testFile], 1, 'gt returns 1');
9
- }, 10000);
@@ -1,8 +0,0 @@
1
- gt.module('exception in teardown', {
2
- teardown: function () {
3
- foo.bar = false;
4
- // cause ReferenceError on purpose
5
- }
6
- });
7
-
8
- gt.test('a test', 0, function () {});
@@ -1,9 +0,0 @@
1
- gt.module('module.teardown crashes');
2
-
3
- var path = require('path');
4
- var gtPath = path.join(__dirname, '../../bin/gt.js');
5
- var testFile = path.join(__dirname, 'teardownException.js');
6
-
7
- gt.async('expect fail on exception in module\'s teardown', 1, function () {
8
- gt.exec('node', [gtPath, testFile], 1, 'gt returns 1');
9
- }, 10000);