@teamsight/flight
Version:
Lambda life cycles
51 lines • 2.43 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());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const TypeMoq = require("typemoq");
const flight_test_helper_1 = require("../flight-test-helper");
const authorizer_1 = require("./authorizer");
describe("server authorizer", () => {
let jwt;
let handler;
beforeEach(() => __awaiter(this, void 0, void 0, function* () {
jwt = TypeMoq.Mock.ofType();
handler = new AuthTest(jwt.object);
}));
it("Allow", () => __awaiter(this, void 0, void 0, function* () {
jwt.setup(x => x.process(TypeMoq.It.isAny(), TypeMoq.It.isAny())).returns(() => Promise.resolve({
sub: "me",
hello: "world"
}));
const result = yield handler.execute(flight_test_helper_1.FlightTestHelper.stubAuthorizerEvent(), flight_test_helper_1.FlightTestHelper.stubContext());
result.policyDocument.Statement[0].Effect.should.equal("Allow");
}));
it("Deny", () => __awaiter(this, void 0, void 0, function* () {
jwt.setup(x => x.process(TypeMoq.It.isAny(), TypeMoq.It.isAny())).throws(new Error("bad token"));
const result = yield handler.execute(flight_test_helper_1.FlightTestHelper.stubAuthorizerEvent(), flight_test_helper_1.FlightTestHelper.stubContext());
result.policyDocument.Statement[0].Effect.should.equal("Deny");
}));
});
class AuthTest extends authorizer_1.Authorizer {
constructor() {
super(...arguments);
this.audience = "test";
}
createAuthorizerContext(payload) {
return __awaiter(this, void 0, void 0, function* () {
return payload;
});
}
doAuthorization(event, decoded, customContext) {
return __awaiter(this, void 0, void 0, function* () {
return;
});
}
}
//# sourceMappingURL=authorizer.test.js.map