Skip to content

Commit 54ce0fd

Browse files
committed
fix UTs
1 parent 74b3b21 commit 54ce0fd

File tree

2 files changed

+38
-26
lines changed

2 files changed

+38
-26
lines changed

.github/workflows/plugin.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ env:
1616
jobs:
1717
build:
1818
runs-on: ubuntu-22.04
19+
timeout-minutes: 20
1920

2021
strategy:
2122
matrix:

test/unit/mocha/asyncWrapper_test.js

Lines changed: 37 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ describe('AsyncWrapper', () => {
2222
await Container.create({
2323
helpers: {
2424
TestHelper: {
25-
testMethod: () => 'test result'
26-
}
27-
}
25+
testMethod: () => 'test result',
26+
},
27+
},
2828
})
2929
})
3030
beforeEach(() => recorder.reset())
@@ -33,7 +33,7 @@ describe('AsyncWrapper', () => {
3333
it('should wrap test function', () => {
3434
testWrapper(test).fn(() => {})
3535
// Return a promise that resolves when the recorder promise resolves
36-
return new Promise((resolve) => {
36+
return new Promise(resolve => {
3737
// Use setImmediate to allow the wrapped function to execute
3838
setImmediate(() => {
3939
try {
@@ -42,10 +42,13 @@ describe('AsyncWrapper', () => {
4242
} catch (err) {
4343
// If the recorder is running, wait for it
4444
if (recorder.isRunning()) {
45-
recorder.promise().then(() => {
46-
expect(fn.called).is.ok
47-
resolve()
48-
}).catch(resolve)
45+
recorder
46+
.promise()
47+
.then(() => {
48+
expect(fn.called).is.ok
49+
resolve()
50+
})
51+
.catch(resolve)
4952
} else {
5053
throw err
5154
}
@@ -78,29 +81,37 @@ describe('AsyncWrapper', () => {
7881
event.dispatcher.on(event.test.started, (started = sinon.spy()))
7982
event.dispatcher.on(event.suite.before, (beforeSuite = sinon.spy()))
8083
event.dispatcher.on(event.suite.after, (afterSuite = sinon.spy()))
81-
await suiteSetup()
82-
await setup()
84+
await suiteSetup()()
85+
await setup()()
8386
})
8487

8588
it('should fire events', async () => {
8689
recorder.reset()
87-
testWrapper(test).fn(() => null)
88-
await teardown()
89-
await suiteTeardown()
90-
return recorder
91-
.promise()
92-
.then(() => {
93-
expect(started.called).is.ok
94-
expect(beforeSuite.called).is.ok
95-
expect(afterSuite.called).is.ok
96-
expect(before.called).is.ok
97-
expect(after.called).is.ok
98-
})
99-
.catch((err) => {
100-
console.error('Recorder promise error:', err)
101-
// Re-throw to fail the test properly
102-
throw err
90+
const wrappedTest = testWrapper(test)
91+
92+
// Execute the wrapped test function with a mock done callback
93+
return new Promise((resolve, reject) => {
94+
wrappedTest.fn(async err => {
95+
try {
96+
await teardown()()
97+
await suiteTeardown()()
98+
99+
if (err) {
100+
reject(err)
101+
return
102+
}
103+
104+
expect(started.called).is.ok
105+
expect(beforeSuite.called).is.ok
106+
expect(afterSuite.called).is.ok
107+
expect(before.called).is.ok
108+
expect(after.called).is.ok
109+
resolve()
110+
} catch (testErr) {
111+
reject(testErr)
112+
}
103113
})
114+
})
104115
})
105116

106117
it('should fire failed event on error', async () => {

0 commit comments

Comments
 (0)