* ci: setup workflows, dependabot, labeler and commit linting * docs: update README, community files and issue templates * chore: configure prettier, editorconfig and format codebase * chore: restore changes lost during rebase * docs: adjust url for new logo * fix: align badges * chore: resolve conflicts and re-add temp lint
34 lines
843 B
JavaScript
34 lines
843 B
JavaScript
const { Client, LocalAuth } = require('..');
|
|
|
|
require('dotenv').config();
|
|
|
|
const remoteId = process.env.WWEBJS_TEST_REMOTE_ID;
|
|
if (!remoteId)
|
|
throw new Error(
|
|
'The WWEBJS_TEST_REMOTE_ID environment variable has not been set.',
|
|
);
|
|
|
|
function createClient({ authenticated, options: additionalOpts } = {}) {
|
|
const options = {};
|
|
|
|
if (authenticated) {
|
|
const clientId = process.env.WWEBJS_TEST_CLIENT_ID;
|
|
if (!clientId) throw new Error('No session found in environment.');
|
|
options.authStrategy = new LocalAuth({
|
|
clientId,
|
|
});
|
|
}
|
|
|
|
const allOpts = { ...options, ...(additionalOpts || {}) };
|
|
return new Client(allOpts);
|
|
}
|
|
|
|
function sleep(ms) {
|
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
}
|
|
|
|
module.exports = {
|
|
sleep,
|
|
createClient,
|
|
remoteId,
|
|
};
|