mirror of
https://github.com/blyssprivacy/sdk.git
synced 2026-01-09 23:28:12 -05:00
* add noise estimation * add pub param dedup * fix noise estimates * add better paramset * Make backwards compatible * Fix CI and server * Prepare for spiral-server crate * update lock * Deps * Do prerelease * Update dependency * Fix version * Deps * More fixes * Bump ver * Prepare for release
63 lines
1.4 KiB
TypeScript
63 lines
1.4 KiB
TypeScript
import { ChildProcess } from 'child_process';
|
|
|
|
const simple = require('./tests/simple').default;
|
|
const { spawn } = require('child_process');
|
|
|
|
process.removeAllListeners('warning');
|
|
|
|
function spawnChildProcess(
|
|
port: string,
|
|
paramsFilename: string
|
|
): Promise<ChildProcess> {
|
|
let seen = '';
|
|
return new Promise(resolve => {
|
|
const child = spawn(process.argv[2], [
|
|
port,
|
|
process.argv[3] + '/' + paramsFilename
|
|
]);
|
|
process.on('exit', function () {
|
|
child.kill();
|
|
});
|
|
child.stdout.on('data', chunk => {
|
|
// process.stdout.write(chunk);
|
|
seen += chunk;
|
|
if (seen.includes('Listening on ' + port)) {
|
|
resolve(child);
|
|
}
|
|
});
|
|
child.stderr.on('data', chunk => {
|
|
console.log(chunk.toString());
|
|
});
|
|
});
|
|
}
|
|
|
|
const paramsFilenames = ['v0.json', 'v1.json'];
|
|
|
|
async function runTests(port: string, paramsFilename: string) {
|
|
const child = await spawnChildProcess(port, paramsFilename);
|
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
|
|
await simple(port);
|
|
|
|
const promise: Promise<void> = new Promise(resolve => {
|
|
child.on('exit', () => {
|
|
resolve();
|
|
});
|
|
});
|
|
|
|
child.kill();
|
|
|
|
await promise;
|
|
}
|
|
|
|
async function main() {
|
|
let portStart = 8008;
|
|
for (const paramsFilename of paramsFilenames) {
|
|
await runTests('' + portStart++, paramsFilename);
|
|
console.log('Completed tests for ' + paramsFilename);
|
|
}
|
|
console.log('All tests completed successfully.');
|
|
}
|
|
|
|
main();
|