Saltar al contenido principal

Opciones

[Traducción Beta No Oficial]

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

Las siguientes opciones permiten ajustar el comportamiento de las APIs de user-event.
Pueden aplicarse mediante setup().

advanceTimers

user-event añade un retardo entre algunas entradas consecutivas. Al usar
timers simulados, es necesario configurar esta opción
con la función de avance temporal de tu ejecutor de pruebas. Por ejemplo:

const user = userEvent.setup({advanceTimers: jest.advanceTimersByTime})
precaución

Puedes encontrar sugerencias para configurar delay: null y evitar tiempos de espera
en pruebas con timers simulados. Esto no es recomendable, ya que puede causar
comportamientos inesperados. Desde la v14.1, sugerimos usar la opción advanceTimers en su lugar.

(delay: number) => Promise<void> | void

default: () => Promise.resolve()

applyAccept

Al usar upload(), descarta automáticamente archivos
que no coincidan con la propiedad accept si dicha propiedad existe en el elemento.

default: true

autoModify

Tenemos la intención de aplicar automáticamente teclas modificadoras para caracteres
imprimibles en el futuro.
Ej: A implicaría {Shift>}a{/Shift} si el bloqueo de mayúsculas no está activado.

Esta opción permite excluirte anticipadamente de este cambio.
Por lo tanto, la característica no constituirá un cambio incompatible.

default: true

delay

Entre entradas consecutivas como escribir una serie de caracteres, la ejecución
del código se retrasa mediante setTimeout durante (al menos) delay milisegundos.

Esto traslada los siguientes cambios al menos a la siguiente macro tarea y permite
que otro código (asíncrono) se ejecute entre eventos.

null evita que se llame a setTimeout.

default: 0

document

El documento.

Por defecto, utiliza el documento propietario de un elemento si se llama a una API
directamente con un elemento y sin configuración.
En caso contrario, recurre al documento global.

default: element.ownerDocument ?? globalThis.document

keyboardMap

Un array de teclas que componen el dispositivo de teclado.

Permite conectar diferentes distribuciones/localizaciones.

default: Teclado "estándar" US-104-QWERTY.

pointerEventsCheck

La API de puntero incluye una verificación para detectar si un elemento tiene o hereda
pointer-events: none.
Se sabe que esta verificación es costosa y muy costosa al examinar nodos profundamente anidados.

Esta opción determina con qué frecuencia las APIs relacionadas con punteros realizan la verificación.

Es una opción de banderas binarias. Puedes combinar múltiples niveles.

  • PointerEventsCheckLevel.Never:
    Sin verificación de eventos de puntero

  • PointerEventsCheckLevel.EachTarget:
    Verifica cada objetivo de evento una vez

  • PointerEventsCheckLevel.EachApiCall:
    Verifica cada objetivo de evento una vez por API

  • PointerEventsCheckLevel.EachTrigger:
    Verifica eventos de puntero en cada interacción de usuario que desencadena múltiples eventos.
    Ej: una vez al soltar un botón del ratón aunque esto desencadene pointerup, mouseup,
    click, etc.

default: PointerEventsCheckLevel.EachApiCall

pointerMap

Un array de teclas de puntero disponibles.

Permite conectar diferentes dispositivos de puntero.

default: Un ratón simple y una pantalla táctil

skipAutoClose

type() libera automáticamente cualquier tecla que aún esté presionada al final de la llamada.
Esta opción permite desactivar esta característica.

default: false

skipClick

type() implica un clic en el elemento.
Esta opción permite desactivar esta característica.

default: false

skipHover

click() implica mover primero el cursor al elemento objetivo.
Esta opción permite desactivar esta característica.

default: false

writeToClipboard

Escribe los datos seleccionados en la Clipboard API cuando se activa un evento cut o copy. La Clipboard API normalmente no está disponible para el código de prueba. Nuestro setup() reemplaza la propiedad navigator.clipboard con un stub.

default al llamar a las APIs directamente: false
default al llamar a las APIs en una instancia de setup(): true