Teste de unidade com Bookshelf.js e knex.js

Sou relativamente novo no Node e estou trabalhando em um projeto usando knex e estante de livros. Estou com um pouco de dificuldade para testar meu código e não tenho certeza do que estou fazendo de errado.

Basicamente, eu tenho um modelo (chamado VorcuProduct) que se parece com isso:

var VorcuProduct = bs.Model.extend({
    tableName: 'vorcu_products'
});

module.exports.VorcuProduct = VorcuProduct

E uma função que salva um VorcuProduct se ele não existir no banco de dados. Bem simples. A função fazendo isso é assim:

function subscribeToUpdates(productInformation, callback) {
  model.VorcuProduct
    .where({product_id: productInformation.product_id, store_id: productInformation.store_id})
    .fetch()
    .then(function(existing_model) {
        if (existing_model == undefined) {
            new model.VorcuProduct(productInformation)
                .save()
                .then(function(new_model) { callback(null, new_model)})
                .catch(callback);
        } else {
            callback(null, existing_model)
        }
    })
}

Qual é a maneira correta de testar isso sem atingir o banco de dados? Preciso zombarfetch para retornar um modelo ou indefinido (dependendo do teste) e faça o mesmo comsave? Devo usar religar para isso?

Como você pode ver, estou um pouco perdido, então qualquer ajuda será apreciada.

Obrigado!

questionAnswers(2)

yourAnswerToTheQuestion