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

218
Vistas
¿Cómo crear una instancia de prueba de mi base de datos para poder pasarla como parámetro a otro módulo?

Solo quiero una base de datos simulada simple que devuelva un valor cuando se llama a un método, pero no puedo encontrar la manera de hacerlo. Soy muy nuevo en javascript, por lo que puede haber algo obvio que me estoy perdiendo.

Lo que quiero es algo parecido a esto:

 it("stub database", async () => { var test = {code: 'test'} var fake = sinon.stub(db, 'method') fake.returns(test) var result = fake.method("anything") // <- function does not exist sinon.assert.match(result.code,"test") });

Pero esto no funciona.

esto casi funciona

 it("stub database", async () => { var test = {code: 'test'} sinon.stub(db, 'method').returns(test) var result = db.method("anything") sinon.assert.match(result.code,"test") });

Pero si luego envío la base de datos a otra instancia, el código auxiliar deja de funcionar.

La instancia de base de datos que quiero reemplazar es

 module.exports = exports = (app, data = null) => { data = data(app) || require('db')(app) exports.app = app return exports } exports.method = (input) => { return data.method(input) }

Siento que esto es lo más fácil en cualquier otro idioma, pero no tengo idea de por qué esto es tan difícil en el nodo, por lo que cualquier ayuda sería muy útil.

about 4 years ago · Juan Pablo Isaza
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