Skip to content

Commit

Permalink
fix(*): 🚑 Fix no such file or directory, scandir
Browse files Browse the repository at this point in the history
  • Loading branch information
iagocalazans committed Jul 19, 2022
1 parent 81928cd commit 544338b
Showing 1 changed file with 65 additions and 65 deletions.
130 changes: 65 additions & 65 deletions lib/use.mock.js
@@ -1,79 +1,79 @@
/* global jest */

const readdir = require('@folder/readdir');
const path = require('path');
const _ = require('lodash');

const functions = readdir.sync('./functions', {
base: 'functions', basename: true, depth: 6, nodir: true,
});
const assets = readdir.sync('./assets', {
base: 'assets', basename: true, depth: 6, nodir: true,
});
if (process.env.NODE_ENV === 'test') {
const functions = readdir.sync('./functions', {
base: 'functions', basename: true, depth: 6, nodir: true,
});
const assets = readdir.sync('./assets', {
base: 'assets', basename: true, depth: 6, nodir: true,
});

Object.defineProperty(
global, 'Runtime', {
enumerable: true,
get: () => ({
getFunctions: jest.fn(() => (functions.reduce((p, c) => {
p[`${c.replace('.protected.js', '').replace('.private.js', '').replace('.js', '')}`] = {
path: path.resolve('./functions', c).replace('.js', ''),
};
return p;
}, {}))),
getSync: jest.fn(),
getAssets: jest.fn(() => (assets.reduce((p, c) => {
p[`/${c.replace('.private', '')}`] = {
path: path.resolve('./assets', c).replace('.js', ''),
};
return p;
}, {}))),
}),
},
);
Object.defineProperty(
global, 'Runtime', {
enumerable: true,
get: () => ({
getFunctions: jest.fn(() => (functions.reduce((p, c) => {
p[`${c.replace('.protected.js', '').replace('.private.js', '').replace('.js', '')}`] = {
path: path.resolve('./functions', c).replace('.js', ''),
};
return p;
}, {}))),
getSync: jest.fn(),
getAssets: jest.fn(() => (assets.reduce((p, c) => {
p[`/${c.replace('.private', '')}`] = {
path: path.resolve('./assets', c).replace('.js', ''),
};
return p;
}, {}))),
}),
},
);

const _ = require('lodash');
/**
* @type { import('../types/use.injection').useInjection }
*/
exports.useMock = (fn, params) => async function (...args) {
const [event] = args;
const getTwilioClient = jest.fn();

/**
* @type { import('../types/use.injection').useInjection }
*/
exports.useMock = (fn, params) => async function (...args) {
const [event] = args;
const getTwilioClient = jest.fn();
const providers = _.isUndefined(params?.providers)
|| !_.isPlainObject(params?.providers)
? {} : params.providers;

const providers = _.isUndefined(params?.providers)
|| !_.isPlainObject(params?.providers)
? {} : params.providers;
const client = getTwilioClient();

const client = getTwilioClient();
const providerThat = {
client,
};

const providerThat = {
client,
};
const {
request, cookies, ...values
} = event;

const {
request, cookies, ...values
} = event;
const providerNames = Object.keys(providers);

const providerNames = Object.keys(providers);
const that = {
request,
cookies,
providers: providerNames.reduce((p, c) => {
Reflect.defineProperty(
p, c, {
value: providers[c].bind(providerThat),
enumerable: true,
},
);
return p;
}, {}),
};

const that = {
request,
cookies,
providers: providerNames.reduce((p, c) => {
Reflect.defineProperty(
p, c, {
value: providers[c].bind(providerThat),
enumerable: true,
},
);
return p;
}, {}),
try {
return await fn.apply(that, [values]);
} catch (err) {
console.error(err.stack, err.code);
return err;
}
};

try {
return await fn.apply(that, [values]);
} catch (err) {
console.error(err.stack, err.code);
return err;
}
};
}

0 comments on commit 544338b

Please sign in to comment.