forked from EXT/VR180-Web-Player
45 lines
1.4 KiB
JavaScript
45 lines
1.4 KiB
JavaScript
import test from 'node:test';
|
|
import assert from 'node:assert/strict';
|
|
|
|
import {
|
|
DEFAULT_MENU_AUTO_HIDE_DELAY_MS,
|
|
PLAYING_VIDEO_MENU_AUTO_HIDE_DELAY_MS,
|
|
getVideoAwareAutoHideDelayMs,
|
|
isVideoActivelyPlaying
|
|
} from '../vr180player/utils/control-panel-timing.js';
|
|
|
|
test('isVideoActivelyPlaying only returns true for non-paused, non-ended video state', () => {
|
|
assert.equal(isVideoActivelyPlaying({ paused: false, ended: false }), true);
|
|
assert.equal(isVideoActivelyPlaying({ paused: true, ended: false }), false);
|
|
assert.equal(isVideoActivelyPlaying({ paused: false, ended: true }), false);
|
|
assert.equal(isVideoActivelyPlaying(undefined), false);
|
|
});
|
|
|
|
test('getVideoAwareAutoHideDelayMs uses the shorter delay while video is playing', () => {
|
|
assert.equal(
|
|
getVideoAwareAutoHideDelayMs({ paused: false, ended: false }),
|
|
PLAYING_VIDEO_MENU_AUTO_HIDE_DELAY_MS
|
|
);
|
|
assert.equal(
|
|
getVideoAwareAutoHideDelayMs({ paused: true, ended: false }),
|
|
DEFAULT_MENU_AUTO_HIDE_DELAY_MS
|
|
);
|
|
});
|
|
|
|
test('getVideoAwareAutoHideDelayMs accepts custom delay values for other control surfaces', () => {
|
|
assert.equal(
|
|
getVideoAwareAutoHideDelayMs(
|
|
{ paused: false, ended: false },
|
|
{ idleDelayMs: 3000, playingDelayMs: 1500 }
|
|
),
|
|
1500
|
|
);
|
|
assert.equal(
|
|
getVideoAwareAutoHideDelayMs(
|
|
{ paused: true, ended: false },
|
|
{ idleDelayMs: 3000, playingDelayMs: 1500 }
|
|
),
|
|
3000
|
|
);
|
|
});
|