fix(core): update
This commit is contained in:
61
test/test.ts
61
test/test.ts
@ -1,8 +1,59 @@
|
||||
import { expect, tap } from '@pushrocks/tapbundle';
|
||||
import * as smartguard from '../ts/index'
|
||||
import * as smartguard from '../ts/index';
|
||||
import * as smartexpress from '@pushrocks/smartexpress';
|
||||
import * as smartrequest from '@pushrocks/smartrequest';
|
||||
|
||||
tap.test('first test', async () => {
|
||||
console.log(smartguard.standardExport)
|
||||
})
|
||||
let smartexpressInstance: smartexpress.Server;
|
||||
|
||||
tap.start()
|
||||
tap.test('should create a demo smartexpress instance', async () => {
|
||||
smartexpressInstance = new smartexpress.Server({
|
||||
cors: true,
|
||||
forceSsl: false,
|
||||
defaultAnswer: async () => 'hi there',
|
||||
port: 3211
|
||||
});
|
||||
});
|
||||
|
||||
tap.test('should be able to create smartguards for a request', async () => {
|
||||
interface IRequestGuardData {
|
||||
req: smartexpress.Request;
|
||||
res: smartexpress.Response;
|
||||
}
|
||||
const ipGuard = new smartguard.Guard<IRequestGuardData>(async (dataArg) => {
|
||||
console.log('executing ip guard');
|
||||
if (dataArg) {
|
||||
console.log('ip guard succeeded');
|
||||
return true;
|
||||
} else {
|
||||
console.log('ip guard failed!');
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
smartexpressInstance.addRoute('/testroute', new smartexpress.Handler('ALL', async (req, res) => {
|
||||
await smartguard.passGuards({
|
||||
req,
|
||||
res
|
||||
}, [ipGuard]);
|
||||
console.log('ip guard said ok');
|
||||
res.status(200);
|
||||
res.send('hi');
|
||||
}));
|
||||
console.log('Got here ok');
|
||||
});
|
||||
|
||||
tap.test('should start server with guards in place', async () => {
|
||||
await smartexpressInstance.start();
|
||||
});
|
||||
|
||||
tap.test('should execute a request', async () => {
|
||||
const response = await smartrequest.request('http://localhost:3211/testroute', {
|
||||
method: 'GET'
|
||||
});
|
||||
});
|
||||
|
||||
tap.test('should end the demo smartexpress instance', async () => {
|
||||
await smartexpressInstance.stop();
|
||||
});
|
||||
|
||||
tap.start();
|
||||
|
Reference in New Issue
Block a user