mirror of
https://github.com/usebruno/bruno.git
synced 2026-06-29 07:34:07 +00:00
feat: add support for legacy request object translations in Postman converter (#6174)
This commit is contained in:
@@ -35,11 +35,23 @@ const replacements = {
|
||||
'pm\\.response\\.status': 'res.statusText',
|
||||
'pm\\.response\\.headers': 'res.getHeaders()',
|
||||
"tests\\['([^']+)'\\]\\s*=\\s*([^;]+);": 'test("$1", function() { expect(Boolean($2)).to.be.true; });',
|
||||
|
||||
// Supported Postman request translations:
|
||||
// - pm.request.url / request.url -> req.getUrl()
|
||||
// - pm.request.method / request.method -> req.getMethod()
|
||||
// - pm.request.headers / request.headers -> req.getHeaders()
|
||||
// - pm.request.body / request.body -> req.getBody()
|
||||
// - pm.info.requestName / request.name -> req.getName()
|
||||
'pm\\.request\\.url': 'req.getUrl()',
|
||||
'pm\\.request\\.method': 'req.getMethod()',
|
||||
'pm\\.request\\.headers': 'req.getHeaders()',
|
||||
'pm\\.request\\.body': 'req.getBody()',
|
||||
'pm\\.info\\.requestName': 'req.getName()',
|
||||
'request\\.url': 'req.getUrl()',
|
||||
'request\\.method': 'req.getMethod()',
|
||||
'request\\.headers': 'req.getHeaders()',
|
||||
'request\\.body': 'req.getBody()',
|
||||
'request\\.name': 'req.getName()',
|
||||
// deprecated translations
|
||||
'postman\\.setEnvironmentVariable\\(': 'bru.setEnvVar(',
|
||||
'postman\\.getEnvironmentVariable\\(': 'bru.getEnvVar(',
|
||||
|
||||
@@ -76,11 +76,18 @@ const simpleTranslations = {
|
||||
// Info
|
||||
'pm.info.requestName': 'req.getName()',
|
||||
|
||||
// Request properties
|
||||
// Request properties (pm.request.*)
|
||||
'pm.request.url': 'req.getUrl()',
|
||||
'pm.request.method': 'req.getMethod()',
|
||||
'pm.request.headers': 'req.getHeaders()',
|
||||
'pm.request.body': 'req.getBody()',
|
||||
|
||||
// Legacy/global request object (request.*)
|
||||
'request.url': 'req.getUrl()',
|
||||
'request.method': 'req.getMethod()',
|
||||
'request.headers': 'req.getHeaders()',
|
||||
'request.body': 'req.getBody()',
|
||||
'request.name': 'req.getName()',
|
||||
|
||||
// Response properties
|
||||
'pm.response.json': 'res.getBody',
|
||||
|
||||
@@ -26,4 +26,20 @@ describe('postmanTranslations - request commands', () => {
|
||||
`;
|
||||
expect(postmanTranslation(inputScript)).toBe(expectedOutput);
|
||||
});
|
||||
|
||||
test('should handle legacy request object without pm prefix', () => {
|
||||
const inputScript = `
|
||||
const url = request.url;
|
||||
const method = request.method;
|
||||
const body = request.body;
|
||||
const name = request.name;
|
||||
`;
|
||||
const expectedOutput = `
|
||||
const url = req.getUrl();
|
||||
const method = req.getMethod();
|
||||
const body = req.getBody();
|
||||
const name = req.getName();
|
||||
`;
|
||||
expect(postmanTranslation(inputScript)).toBe(expectedOutput);
|
||||
});
|
||||
});
|
||||
@@ -105,4 +105,20 @@ describe('Request Translation', () => {
|
||||
expect(translatedCode).toContain('bru.setVar("lastRequestBody", JSON.stringify(requestData));');
|
||||
expect(translatedCode).toContain('bru.setEnvVar("lastContentType", contentType);');
|
||||
});
|
||||
|
||||
it('should translate legacy request.* properties', () => {
|
||||
const code = `
|
||||
const url = request.url;
|
||||
const method = request.method;
|
||||
const body = request.body;
|
||||
const name = request.name;
|
||||
`;
|
||||
const translatedCode = translateCode(code);
|
||||
expect(translatedCode).toBe(`
|
||||
const url = req.getUrl();
|
||||
const method = req.getMethod();
|
||||
const body = req.getBody();
|
||||
const name = req.getName();
|
||||
`);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user