fix(core): update

This commit is contained in:
Philipp Kunz 2020-09-22 23:06:34 +00:00
parent f73334d8fc
commit fced92e1cc
3 changed files with 18 additions and 3 deletions

View File

@ -8,6 +8,7 @@ tap.test('should create a valid Handler', async () => {
class MyHandler extends sdk.AAgHandler<any> {
public slug: 'testapi';
public typedrouter = new TypedRouter();
public async checkReqirements() {
return {
allOk: true,
@ -27,7 +28,14 @@ tap.test('should create a valid Handler', async () => {
}
}
const myHandlerInstance = new MyHandler();
// tslint:disable-next-line: max-classes-per-file
class AgEnvironement extends sdk.AgEnvironment {
public async getEnvVar(nameArg: string) {
return '';
}
}
const myHandlerInstance = new MyHandler(new AgEnvironement());
expect(myHandlerInstance).to.be.instanceOf(sdk.AAgHandler);
});

View File

@ -3,6 +3,6 @@ import * as plugins from './sdk.plugins';
/**
* AgEnvironment handles the provision of environment variables to handlers
*/
export class AgEnvironment {
export abstract class AgEnvironment {
public abstract async getEnvVar(envVarName: string): Promise<string>;
}

View File

@ -1,5 +1,6 @@
import * as plugins from './sdk.plugins';
import { AuthInfo } from './sdk.classes.authinfo';
import { AgEnvironment } from './sdk.classes.agenvironment';
export interface IRequirementResult {
allOk: boolean;
@ -7,6 +8,8 @@ export interface IRequirementResult {
}
export abstract class AAgHandler<TClaim> {
public agEnvironment: AgEnvironment;
/**
* a slug that separates the handler from other handlers
*/
@ -14,6 +17,10 @@ export abstract class AAgHandler<TClaim> {
public abstract typedrouter: plugins.typedrequest.TypedRouter;
public abstract checkRequirements(): Promise<IRequirementResult>;
constructor(agEnvironmentArg: AgEnvironment) {
this.agEnvironment = agEnvironmentArg;
};
/**
* start the ag-handler
*/