Socket
Socket
Sign inDemoInstall

egg-mock

Package Overview
Dependencies
398
Maintainers
13
Versions
125
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 5.10.7 to 5.10.8

28

lib/inject_context.js

@@ -16,3 +16,3 @@ const assert = require('assert');

const Runner = mocha.Runner;
const { Runner } = mocha;
const runSuite = Runner.prototype.runSuite;

@@ -33,12 +33,14 @@ const runTests = Runner.prototype.runTests;

let app;
const self = this;
try {
app = await appHandler.getApp(suite);
debug('get app: %s', !!app);
} catch (err) {
err.message = `[egg-mock/runSuite] get app for ${getTestTitle(suite)}: ${err.message}`;
this.fail(suite, err);
return fn(suite);
await app.ready();
} catch {
// 可能 app.ready 时报错,不使用失败的 app
app = null;
}
const self = this;
if (!app) {
// app 不存在,直接跳过,在 beforeEach 的 hook 中会报错
// 确保不打乱 mocha 的顺序,防止 mocha 内部状态错误
return runSuite.call(self, suite, fn);

@@ -48,3 +50,2 @@ }

try {
await app.ready();
suite.ctx[MOCHA_SUITE_APP] = app;

@@ -61,4 +62,10 @@ const mockContextFun = app.mockModuleContextScope || app.mockContextScope;

} catch (err) {
err.message = `[egg-mock/runSuite] inject context for ${getTestTitle(suite)}: ${err.message}`;
self.fail(suite, err);
// mockContext 失败后动态注册一个 beforeAll hook
// 快速失败,直接阻塞后续用例
suite.beforeAll('egg-mock-mock-ctx-failed', async () => {
throw err;
});
return runSuite.call(self, suite, aErrSuite => {
return fn(aErrSuite);
});
}

@@ -101,3 +108,2 @@ return fn(errSuite);

} catch (err) {
err.message = `[egg-mock/runTests] get app for ${getTestTitle(suite, test)}: ${err.message}`;
self.fail(test, err);

@@ -117,3 +123,2 @@ return next(i + 1);

} catch (err) {
err.message = `[egg-mock/runTests] create context for ${getTestTitle(suite)} error: ${err.message}`;
self.fail(test, err);

@@ -125,3 +130,2 @@ return next(i + 1);

next(0).catch(err => {
err.message = `[egg-mock/runTests] unknown error ${getTestTitle(suite)} error: ${err.message}`;
self.fail(suite, err);

@@ -128,0 +132,0 @@ done(suite);

{
"name": "egg-mock",
"version": "5.10.7",
"version": "5.10.8",
"eggPlugin": {

@@ -5,0 +5,0 @@ "name": "egg-mock"

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc