mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-25 10:10:08 +02:00
84 lines
1.8 KiB
JavaScript
84 lines
1.8 KiB
JavaScript
import { chai, vi } from 'vitest'
|
|
import './common_bootstrap.js'
|
|
import sinon from 'sinon'
|
|
import logger from '@overleaf/logger'
|
|
import sinonChai from 'sinon-chai'
|
|
import chaiAsPromised from 'chai-as-promised'
|
|
import SandboxedModule from 'sandboxed-module'
|
|
import { createRequire } from 'module'
|
|
|
|
const require = createRequire(import.meta.url)
|
|
|
|
SandboxedModule.configure({
|
|
ignoreMissing: true,
|
|
requires: {
|
|
// This is already imported the same way in the mocha bootstrap
|
|
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
sshpk: require('sshpk'),
|
|
},
|
|
globals: {
|
|
AbortController,
|
|
AbortSignal,
|
|
Buffer,
|
|
Promise,
|
|
console,
|
|
process,
|
|
URL,
|
|
TextEncoder,
|
|
TextDecoder,
|
|
},
|
|
sourceTransformers: {
|
|
removeNodePrefix: function (source) {
|
|
return source.replace(/require\(['"]node:/g, "require('")
|
|
},
|
|
},
|
|
})
|
|
|
|
/*
|
|
* Chai configuration
|
|
*/
|
|
|
|
// add chai.should()
|
|
chai.should()
|
|
|
|
// Load sinon-chai assertions so expect(stubFn).to.have.been.calledWith('abc')
|
|
// has a nicer failure messages
|
|
chai.use(sinonChai)
|
|
|
|
// Load promise support for chai
|
|
chai.use(chaiAsPromised)
|
|
|
|
// Do not truncate assertion errors
|
|
chai.config.truncateThreshold = 0
|
|
vi.mock('@overleaf/logger', async () => {
|
|
return {
|
|
default: {
|
|
debug: vi.fn(),
|
|
info: vi.fn(),
|
|
log: vi.fn(),
|
|
warn: vi.fn(),
|
|
err: vi.fn(),
|
|
error: vi.fn(),
|
|
fatal: vi.fn(),
|
|
},
|
|
}
|
|
})
|
|
|
|
beforeEach(ctx => {
|
|
// This function is a utility to duplicate the behaviour of passing `done` in place of `next` in an express route handler.
|
|
ctx.rejectOnError = reject => {
|
|
return err => {
|
|
if (err) {
|
|
reject(err)
|
|
}
|
|
}
|
|
}
|
|
ctx.logger = logger
|
|
})
|
|
|
|
afterEach(() => {
|
|
vi.restoreAllMocks()
|
|
vi.resetModules()
|
|
sinon.restore()
|
|
})
|