Skip to content

Commit 47eded7

Browse files
committed
Update tests
1 parent 5643b85 commit 47eded7

File tree

2 files changed

+48
-22
lines changed

2 files changed

+48
-22
lines changed

lib/sandbox/execute.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -120,10 +120,12 @@ module.exports = function (bridge, glob) {
120120
return resolve({ error: err });
121121
}
122122

123-
const exposedChaiPlugin = (_module && _module.exports) || {};
123+
const exposedChaiPlugin = (_module && _module.exports) || null;
124124

125-
chai.use(exposedChaiPlugin(templatesRegistry));
126-
chaiPluginInitialized = true;
125+
if (_.isFunction(exposedChaiPlugin)) {
126+
chai.use(exposedChaiPlugin(templatesRegistry));
127+
chaiPluginInitialized = true;
128+
}
127129

128130
resolve({});
129131
});

test/unit/sandbox-libraries/pm.test.js

Lines changed: 43 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1479,29 +1479,53 @@ describe('sandbox library - pm api', function () {
14791479
});
14801480

14811481
it('should handle response types for multi-protocol:others', function (done) {
1482-
const executionId = '8',
1483-
sampleRequestToRunId = '5d559eb8-cd89-43a3-b93c-1e398d79c670';
1482+
const executionId = '1',
1483+
individualTemplate = `
1484+
class Response {
1485+
constructor(response) {
1486+
this.statusCode = response.statusCode;
1487+
this.responseTime = response.responseTime;
1488+
this.isCustomGRPCResponseClass = true;
1489+
}
1490+
}
14841491
1485-
context.on('execution.run_collection_request.' + executionId,
1486-
function (cursor, id, reqId) {
1487-
context.dispatch(`execution.run_collection_request_response.${id}`, reqId, null, {
1488-
statusCode: 0, responseTime: 100
1489-
}, { skipResponseCasting: true });
1490-
});
1492+
module.exports = { Response };
1493+
`;
1494+
1495+
Sandbox.createContext({
1496+
template: { grpc: individualTemplate },
1497+
chaiPlugin: ' '
1498+
}, (errorInitializingSandbox, sandboxContext) => {
1499+
if (errorInitializingSandbox) { return done(errorInitializingSandbox); }
1500+
1501+
sandboxContext.on('execution.run_collection_request.' + executionId,
1502+
function (_cursor, id, reqId) {
1503+
sandboxContext.dispatch(`execution.run_collection_request_response.${id}`,
1504+
reqId,
1505+
null,
1506+
{ statusCode: 0, responseTime: 100 },
1507+
{ responseType: 'grpc-request' });
1508+
});
14911509

1492-
let consoleMessage = '';
1510+
let consoleMessage = '';
14931511

1494-
context.on('console', (_cursor, _level, message) => {
1495-
consoleMessage = message;
1496-
});
1512+
sandboxContext.on('console', (_cursor, _level, message) => {
1513+
consoleMessage = message;
1514+
expect(consoleMessage).to.eql({
1515+
statusCode: 0,
1516+
responseTime: 100,
1517+
isCustomGRPCResponseClass: true
1518+
});
1519+
});
14971520

1498-
context.execute(`
1499-
const grpcRequestResponse = await pm.execution.runRequest('${sampleRequestToRunId}');
1500-
console.log(grpcRequestResponse);
1501-
`, { id: executionId }, function () {
1502-
// No processing for non-http protocol responses, logged as is
1503-
expect(consoleMessage).to.eql({ statusCode: 0, responseTime: 100 });
1504-
done();
1521+
sandboxContext.execute(`
1522+
const grpcRequestResponse = await pm.execution.runRequest('sample-request-id');
1523+
console.log(grpcRequestResponse);`,
1524+
{ id: executionId },
1525+
function (err) {
1526+
done(err);
1527+
sandboxContext.dispose();
1528+
});
15051529
});
15061530
});
15071531
});

0 commit comments

Comments
 (0)