alagarr
Version:
Alagarr is a request-response helper library that removes the boilerplate from your Node.js serverless functions and helps make your code portable.
36 lines (35 loc) • 1.79 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const _1 = __importDefault(require("./"));
const testRequest = { headers: {} };
it('can access underlying callback method directly', () => __awaiter(this, void 0, void 0, function* () {
const testResult = { foo: 'bar' };
const response = yield _1.default(testRequest, (error, result) => {
expect(error).toBeInstanceOf(Error);
expect(result).toEqual(testResult);
}, {});
response.raw(new Error('foobar'), testResult);
}));
it('can set headers using setHeader method in a chained way', () => __awaiter(this, void 0, void 0, function* () {
const callback = jest.fn();
const response = yield _1.default(testRequest, callback, {});
response.setHeader('test-header', 'test-value').setHeader('foo', 'bar');
yield response.text('any');
expect(callback).toBeCalledWith(null, expect.objectContaining({
headers: expect.objectContaining({
foo: 'bar',
'test-header': 'test-value',
}),
}));
}));