smartuniverse/test/test.ts

48 lines
1.3 KiB
TypeScript
Raw Normal View History

2018-03-13 05:15:40 +00:00
// tslint:disable-next-line:no-implicit-dependencies
2018-03-07 21:22:15 +00:00
import { expect, tap } from 'tapbundle';
import * as smartuniverse from '../ts/index';
2018-03-20 07:16:54 +00:00
import { Observable } from 'rxjs';
2018-03-13 05:15:40 +00:00
let testUniverse: smartuniverse.Universe;
2018-03-20 07:16:54 +00:00
let testUniverseClient: smartuniverse.UniverseClient;
let testMessageObservable: Observable<smartuniverse.UniverseMessage>;
2018-03-08 22:42:46 +00:00
2018-03-07 21:22:15 +00:00
tap.test('first test', async () => {
2018-03-13 05:15:40 +00:00
testUniverse = new smartuniverse.Universe({
2018-03-20 07:16:54 +00:00
messageExpiryInMilliseconds: 1000
2018-03-13 05:15:40 +00:00
});
2018-03-07 21:22:15 +00:00
});
2018-03-13 05:15:40 +00:00
tap.test('add a message to the SmartUniverse', async () => {
await testUniverse.initServer(8765);
2018-03-20 07:16:54 +00:00
});
2018-03-13 05:15:40 +00:00
// testing message handling
tap.test('create smartuniverse client', async () => {
2018-03-15 00:05:13 +00:00
testUniverseClient = new smartuniverse.UniverseClient({
2018-03-15 00:16:16 +00:00
serverAddress: 'http://localhost:8765'
2018-03-15 00:05:13 +00:00
});
2018-03-20 07:16:54 +00:00
expect(testUniverseClient).to.be.instanceof(smartuniverse.UniverseClient);
});
2018-03-13 05:15:40 +00:00
2018-03-15 00:16:16 +00:00
tap.test('should send a message correctly', async () => {
await testUniverseClient.sendMessage('greeting', {
anyBool: true
2018-03-20 07:16:54 +00:00
});
});
tap.test('should get a obsevable correctly', async () => {
testMessageObservable = testUniverseClient.getMessageObservable();
});
tap.test('should receive a message correctly', async () => {
// TODO:
});
2018-03-15 00:16:16 +00:00
2018-03-13 05:15:40 +00:00
tap.test('should end the server correctly', async () => {
await testUniverse.stopServer();
2018-03-20 07:16:54 +00:00
});
2018-03-13 05:15:40 +00:00
2018-03-07 21:22:15 +00:00
tap.start();