bruno/packages/bruno-lang/v1/tests/json-to-bru.spec.js

97 lines
2.5 KiB
JavaScript
Raw Normal View History

2023-01-14 15:46:09 +01:00
const fs = require('fs');
const path = require('path');
const {
jsonToBru
2023-01-14 15:46:09 +01:00
} = require('../src');
describe('bruToJson', () => {
it('should convert json file into .bru file', () => {
const request = {
2023-01-14 15:46:09 +01:00
"type": "http-request",
"name": "Send Bulk SMS",
2023-01-20 21:26:30 +01:00
"seq": 1,
"request": {
"method": "GET",
"url": "https://api.textlocal.in/bulk_json?apiKey=secret=&numbers=919988776655&message=hello&sender=600010",
"params": [
{
"enabled": true,
"name": "apiKey",
"value": "secret"
},
{
"enabled": true,
"name": "numbers",
"value": "998877665"
},
{
"enabled": true,
"name": "message",
"value": "hello"
}
],
"headers": [
{
"enabled": true,
"name": "content-type",
"value": "application/json"
},
{
"enabled": true,
"name": "accept-language",
"value": "en-US,en;q=0.9,hi;q=0.8"
},
{
"enabled": false,
"name": "transaction-id",
"value": "{{transactionId}}"
}
],
"body": {
"mode": "json",
"json": '{\n "apikey": "secret",\n "numbers": "+91998877665"\n}',
"graphql": {
"query": "{\n launchesPast {\n launch_success\n }\n}"
},
"text": "Hello, there. You must be from the past",
"xml": "<body>back to the ice age</body>",
"formUrlEncoded": [
{
"enabled": true,
"name": "username",
"value": "john"
},
{
"enabled": false,
"name": "password",
"value": "{{password}}"
}
],
"multipartForm": [
{
"enabled": true,
"name": "username",
"value": "nash"
},
{
"enabled": false,
"name": "password",
"value": "governingdynamics"
}
]
2023-01-22 19:09:16 +01:00
},
"script": "const foo='bar';",
"tests": "bruno.test('200 ok', () => {});"
2023-01-14 23:21:48 +01:00
}
};
const expectedBruFile = fs.readFileSync(path.join(__dirname, 'fixtures', 'request.bru'), 'utf8');
const actualBruFile = jsonToBru(request);
expect(expectedBruFile).toEqual(actualBruFile);
2023-01-14 15:46:09 +01:00
});
});