Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

177
Vistas
¿Cómo escribir pruebas unitarias para el editor combinado continuo sin usar esperar (para: tiempo de espera:)?

Imagínese, tenemos un sut como editor que publica valores continuamente y nunca termina. Al cambiar alguna entrada (por ejemplo, cambiamos alguna propiedad @Published simulada de la que depende nuestro sut ), emite un evento.

Recopilamos estos eventos en la matriz de results y luego verificamos si hay una cantidad exacta esperada de eventos, ni menos ni más.

El problema es: ¿cómo verificar que no haya más eventos después de lo que esperamos que se emita? Sin el método de wait , no sabemos cuándo es el momento de verificar la matriz de results .

wait funcionará, pero me parece una muleta para Combine. Porque las buenas pruebas unitarias deben ser rápidas (ver PRIMEROS principios de las pruebas unitarias). Y estas wait se parecen más a un antipatrón.

Tampoco pude encontrar una recomendación de Apple sobre esto.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Necesita un programador de pruebas, que es básicamente un programador de tiempo virtual que le permitirá controlar cuándo se publicarán los eventos basados en el tiempo. Entonces, por ejemplo, puede disparar todos los eventos a la vez. Combine no tiene un programador de pruebas incorporado, pero puede usar un programador de pruebas de código abierto llamado Entwine

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda