mirror of
https://github.com/langgenius/dify.git
synced 2026-06-26 14:51:13 +08:00
fix: correct media event names in AudioPlayer
'paused' -> 'pause', 'loaded' -> 'loadeddata', 'loadeddate' -> 'loadeddata' These listeners were registering on events that HTMLMediaElement never fires, so the callbacks were dead. The test hid this because the mock emitted the same misspelled names. Fixes #37840
This commit is contained in:
parent
7cb4a30040
commit
d1bbc0bb37
@ -20,7 +20,7 @@ vi.mock('@/service/share', () => ({
|
||||
textToAudioStream: (...args: unknown[]) => mockTextToAudioStream(...args),
|
||||
}))
|
||||
|
||||
type AudioEventName = 'ended' | 'paused' | 'loaded' | 'play' | 'timeupdate' | 'loadeddate' | 'canplay' | 'error' | 'sourceopen'
|
||||
type AudioEventName = 'ended' | 'pause' | 'play' | 'timeupdate' | 'loadeddata' | 'canplay' | 'error' | 'sourceopen'
|
||||
|
||||
type AudioEventListener = () => void
|
||||
|
||||
@ -285,10 +285,9 @@ describe('AudioPlayer', () => {
|
||||
audio!.emit('play')
|
||||
audio!.emit('ended')
|
||||
audio!.emit('error')
|
||||
audio!.emit('paused')
|
||||
audio!.emit('loaded')
|
||||
audio!.emit('pause')
|
||||
audio!.emit('loadeddata')
|
||||
audio!.emit('timeupdate')
|
||||
audio!.emit('loadeddate')
|
||||
audio!.emit('canplay')
|
||||
|
||||
expect(player.callback).toBe(callback)
|
||||
|
||||
@ -66,10 +66,10 @@ export default class AudioPlayer {
|
||||
this.audio.addEventListener('ended', () => {
|
||||
callback('ended')
|
||||
}, false)
|
||||
this.audio.addEventListener('paused', () => {
|
||||
this.audio.addEventListener('pause', () => {
|
||||
callback('paused')
|
||||
}, true)
|
||||
this.audio.addEventListener('loaded', () => {
|
||||
this.audio.addEventListener('loadeddata', () => {
|
||||
callback('loaded')
|
||||
}, true)
|
||||
this.audio.addEventListener('play', () => {
|
||||
@ -78,7 +78,7 @@ export default class AudioPlayer {
|
||||
this.audio.addEventListener('timeupdate', () => {
|
||||
callback('timeupdate')
|
||||
}, true)
|
||||
this.audio.addEventListener('loadeddate', () => {
|
||||
this.audio.addEventListener('loadeddata', () => {
|
||||
callback('loadeddate')
|
||||
}, true)
|
||||
this.audio.addEventListener('canplay', () => {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user