Compare commits

..

8 Commits

4 changed files with 30 additions and 3 deletions

View File

@ -1,5 +1,27 @@
# Changelog # Changelog
## 2025-01-23 - 1.0.96 - fix(TsTest)
Fixed improper type-check for promise-like testModule defaults
- Corrected the type-check for promise-like default exports in test modules
- Removed unnecessary setTimeout used for async execution
## 2025-01-23 - 1.0.95 - fix(core)
Fix delay handling in Chrome test execution
- Replaced smartdelay.delayFor with native Promise-based delay mechanism in runInChrome method.
## 2025-01-23 - 1.0.94 - fix(TsTest)
Fix test module execution by ensuring promise resolution delay
- Added a delay to ensure promise resolution when dynamically importing test modules in the runInChrome method.
## 2025-01-23 - 1.0.93 - fix(tstest)
Handle globalThis.tapPromise in browser runtime evaluation
- Added support for using globalThis.tapPromise in the browser evaluation logic.
- Added log messages to indicate the usage of globalThis.tapPromise.
## 2025-01-23 - 1.0.92 - fix(core) ## 2025-01-23 - 1.0.92 - fix(core)
Improve error logging for test modules without default promise Improve error logging for test modules without default promise

View File

@ -1,6 +1,6 @@
{ {
"name": "@git.zone/tstest", "name": "@git.zone/tstest",
"version": "1.0.92", "version": "1.0.96",
"private": false, "private": false,
"description": "a test utility to run tests that match test/**/*.ts", "description": "a test utility to run tests that match test/**/*.ts",
"main": "dist_ts/index.js", "main": "dist_ts/index.js",

View File

@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@git.zone/tstest', name: '@git.zone/tstest',
version: '1.0.92', version: '1.0.96',
description: 'a test utility to run tests that match test/**/*.ts' description: 'a test utility to run tests that match test/**/*.ts'
} }

View File

@ -173,11 +173,16 @@ export class TsTest {
if (testModule && testModule.default && testModule.default instanceof Promise) { if (testModule && testModule.default && testModule.default instanceof Promise) {
// Execute the exported test function // Execute the exported test function
await testModule.default; await testModule.default;
} else if (testModule && testModule.default && testModule.default.then === 'function') { } else if (testModule && testModule.default && typeof testModule.default.then === 'function') {
console.log('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'); console.log('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!');
console.log('Test module default export is just promiselike: Something might be messing with your Promise implementation.'); console.log('Test module default export is just promiselike: Something might be messing with your Promise implementation.');
console.log('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'); console.log('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!');
await testModule.default; await testModule.default;
} else if (globalThis.tapPromise && typeof globalThis.tapPromise.then === 'function') {
console.log('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!');
console.log('Using globalThis.tapPromise');
console.log('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!');
await testModule.default;
} else { } else {
console.error('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'); console.error('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!');
console.error('Test module does not export a default promise.'); console.error('Test module does not export a default promise.');