mirror of
https://github.com/usebruno/bruno.git
synced 2024-11-25 17:33:28 +01:00
144 lines
2.6 KiB
JavaScript
144 lines
2.6 KiB
JavaScript
const parser = require('../src/jsonToEnv');
|
|
|
|
describe('env parser', () => {
|
|
it('should parse empty vars', () => {
|
|
const input = {
|
|
variables: []
|
|
};
|
|
|
|
const output = parser(input);
|
|
const expected = `vars {
|
|
}
|
|
`;
|
|
|
|
expect(output).toEqual(expected);
|
|
});
|
|
|
|
it('should parse single var line', () => {
|
|
const input = {
|
|
variables: [
|
|
{
|
|
name: 'url',
|
|
value: 'http://localhost:3000',
|
|
enabled: true
|
|
}
|
|
]
|
|
};
|
|
|
|
const output = parser(input);
|
|
const expected = `vars {
|
|
url: http://localhost:3000
|
|
}
|
|
`;
|
|
expect(output).toEqual(expected);
|
|
});
|
|
|
|
it('should parse multiple var lines', () => {
|
|
const input = {
|
|
variables: [
|
|
{
|
|
name: 'url',
|
|
value: 'http://localhost:3000',
|
|
enabled: true
|
|
},
|
|
{
|
|
name: 'port',
|
|
value: '3000',
|
|
enabled: false
|
|
}
|
|
]
|
|
};
|
|
|
|
const expected = `vars {
|
|
url: http://localhost:3000
|
|
~port: 3000
|
|
}
|
|
`;
|
|
const output = parser(input);
|
|
expect(output).toEqual(expected);
|
|
});
|
|
|
|
it('should parse secret vars', () => {
|
|
const input = {
|
|
variables: [
|
|
{
|
|
name: 'url',
|
|
value: 'http://localhost:3000',
|
|
enabled: true
|
|
},
|
|
{
|
|
name: 'token',
|
|
value: 'abracadabra',
|
|
enabled: true,
|
|
secret: true
|
|
}
|
|
]
|
|
};
|
|
|
|
const output = parser(input);
|
|
const expected = `vars {
|
|
url: http://localhost:3000
|
|
}
|
|
vars:secret [
|
|
token
|
|
]
|
|
`;
|
|
expect(output).toEqual(expected);
|
|
});
|
|
|
|
it('should parse multiple secret vars', () => {
|
|
const input = {
|
|
variables: [
|
|
{
|
|
name: 'url',
|
|
value: 'http://localhost:3000',
|
|
enabled: true
|
|
},
|
|
{
|
|
name: 'access_token',
|
|
value: 'abracadabra',
|
|
enabled: true,
|
|
secret: true
|
|
},
|
|
{
|
|
name: 'access_secret',
|
|
value: 'abracadabra',
|
|
enabled: false,
|
|
secret: true
|
|
}
|
|
]
|
|
};
|
|
|
|
const output = parser(input);
|
|
const expected = `vars {
|
|
url: http://localhost:3000
|
|
}
|
|
vars:secret [
|
|
access_token,
|
|
~access_secret
|
|
]
|
|
`;
|
|
expect(output).toEqual(expected);
|
|
});
|
|
|
|
it('should parse even if the only secret vars are present', () => {
|
|
const input = {
|
|
variables: [
|
|
{
|
|
name: 'token',
|
|
value: 'abracadabra',
|
|
enabled: true,
|
|
secret: true
|
|
}
|
|
]
|
|
};
|
|
|
|
const output = parser(input);
|
|
const expected = `vars:secret [
|
|
token
|
|
]
|
|
`;
|
|
expect(output).toEqual(expected);
|
|
});
|
|
});
|