Skip to content

Commit 1a5763f

Browse files
committed
Fix specs
1 parent 77e7fed commit 1a5763f

File tree

2 files changed

+6
-10
lines changed

2 files changed

+6
-10
lines changed

src/addons/Portal/Portal.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -258,10 +258,10 @@ class Portal extends Component {
258258
this.trySetState({ open: true })
259259
}
260260

261-
openWithTimeout = (e, delay = 0) => {
261+
openWithTimeout = (e, delay) => {
262262
// React wipes certain props (e.g. currentTarget) so we need to clone.
263263
const eventClone = { ...e }
264-
return setTimeout(() => this.open(eventClone), delay)
264+
return setTimeout(() => this.open(eventClone), delay || 0)
265265
}
266266

267267
close = (e) => {
@@ -273,10 +273,10 @@ class Portal extends Component {
273273
this.trySetState({ open: false })
274274
}
275275

276-
closeWithTimeout = (e, delay = 0) => {
276+
closeWithTimeout = (e, delay) => {
277277
// React wipes certain props (e.g. currentTarget) so we need to clone.
278278
const eventClone = { ...e }
279-
return setTimeout(() => this.close(eventClone), delay)
279+
return setTimeout(() => this.close(eventClone), delay || 0)
280280
}
281281

282282
renderPortal() {

test/specs/addons/Portal/Portal-test.js

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,6 @@ describe('Portal', () => {
265265
setTimeout(() => {
266266
document.body.childElementCount.should.equal(0)
267267
spy.should.have.been.calledOnce()
268-
done()
269268
}, mouseOverDelay - 1)
270269

271270
setTimeout(() => {
@@ -304,7 +303,6 @@ describe('Portal', () => {
304303
setTimeout(() => {
305304
document.body.lastElementChild.should.equal(wrapper.instance().node)
306305
spy.should.have.been.calledOnce()
307-
done()
308306
}, mouseLeaveDelay - 1)
309307

310308
setTimeout(() => {
@@ -314,18 +312,17 @@ describe('Portal', () => {
314312
}, mouseLeaveDelay + 1)
315313
})
316314

317-
it('should close portal on mouseleave of portal when set', (done) => {
315+
it('should close portal on mouseleave *of portal* when set', (done) => {
318316
const trigger = <button>button</button>
319317
const mouseLeaveDelay = 100
320318
wrapperMount(
321319
<Portal trigger={trigger} defaultOpen closeOnMouseLeave mouseLeaveDelay={mouseLeaveDelay}><p>Hi</p></Portal>
322320
)
323321

324-
domEvent.mouseOver(wrapper.instance().node.firstElementChild)
322+
domEvent.mouseLeave(wrapper.instance().node.firstElementChild)
325323

326324
setTimeout(() => {
327325
document.body.lastElementChild.should.equal(wrapper.instance().node)
328-
done()
329326
}, mouseLeaveDelay - 1)
330327

331328
setTimeout(() => {
@@ -346,7 +343,6 @@ describe('Portal', () => {
346343
// Fire a mouseOver on the portal within the time limit
347344
setTimeout(() => {
348345
domEvent.mouseOver(wrapper.instance().node.firstElementChild)
349-
done()
350346
}, mouseLeaveDelay - 1)
351347

352348
// The portal should not have closed

0 commit comments

Comments
 (0)