@sasjs/cli
Version:
Command line interface for SASjs
77 lines (76 loc) • 3.78 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var displayResult_1 = require("../displayResult");
var node_1 = require("@sasjs/adapter/node");
var utils_1 = require("@sasjs/utils");
describe('display error', function () {
beforeAll(function () {
process.logger = new utils_1.Logger(utils_1.LogLevel.Off);
});
afterEach(function () {
jest.resetAllMocks();
});
test('error is object, details is object', function () {
jest.spyOn(process.logger, 'error');
var error = new node_1.ErrorResponse('Test error', { status: 500, error: 'Test' });
var result = (0, displayResult_1.displayError)(error, 'Execution error');
var expected = "Execution error\nTest error\n{\"status\":500,\"error\":\"Test\"}";
expect(result).toEqual(expected);
expect(process.logger.error).toHaveBeenCalledWith("Execution error\n", "Test error\n{\"status\":500,\"error\":\"Test\"}");
});
test('error is object, details is string', function () {
jest.spyOn(process.logger, 'error');
var error = {
error: {
message: 'Test error',
details: 'Details string',
raw: undefined
}
};
var result = (0, displayResult_1.displayError)(error, 'Execution error');
var expected = "Execution error\nTest error\nDetails string";
expect(result).toEqual(expected);
expect(process.logger.error).toHaveBeenCalledWith("Execution error\n", "Test error\nDetails string");
});
test('error is object, details property missing, raw present', function () {
jest.spyOn(process.logger, 'error');
var error = {
error: { message: 'Test error', details: undefined, raw: 'Raw response' }
};
var result = (0, displayResult_1.displayError)(error, 'Execution error');
var expected = "Execution error\nTest error\nRaw response";
expect(result).toEqual(expected);
expect(process.logger.error).toHaveBeenCalledWith("Execution error\n", "Test error\nRaw response");
});
test('error is object, error property missing', function () {
jest.spyOn(process.logger, 'error');
var error = { status: 500, details: 'Test' };
var result = (0, displayResult_1.displayError)(error, 'Execution error');
var expected = "Execution error\n{\"status\":500,\"details\":\"Test\"}";
expect(result).toEqual(expected);
expect(process.logger.error).toHaveBeenCalledWith("Execution error\n", '{"status":500,"details":"Test"}');
});
test('error is string', function () {
jest.spyOn(process.logger, 'error');
var error = 'Something went wrong';
var result = (0, displayResult_1.displayError)(error, 'Execution error');
var expected = "Execution error\nSomething went wrong";
expect(result).toEqual(expected);
expect(process.logger.error).toHaveBeenCalledWith("Execution error\n", 'Something went wrong');
});
test('error JS Error object', function () {
jest.spyOn(process.logger, 'error');
var error = new Error('Something went wrong');
var result = (0, displayResult_1.displayError)(error, 'Execution error');
var expected = "Execution error\nSomething went wrong";
expect(result).toEqual(expected);
expect(process.logger.error).toHaveBeenCalledWith("Execution error\n", 'Something went wrong');
});
});
describe('display result success', function () {
test('success message', function () {
jest.spyOn(process.logger, 'success');
(0, displayResult_1.displaySuccess)('Success');
expect(process.logger.success).toHaveBeenCalledWith('Success');
});
});