diff options
author | Nick Van Doorn <vandoorn.nick@gmail.com> | 2018-11-25 23:50:29 -0800 |
---|---|---|
committer | Nick Van Doorn <vandoorn.nick@gmail.com> | 2018-11-25 23:50:29 -0800 |
commit | 3bf6bebec947b9b0c389a1fce4fa55afd42c6753 (patch) | |
tree | cce9d0f8561939cc45fe14c53cf8907a7203a467 | |
parent | 5305be90bae301e2a0bc4519ab050adacf36dc10 (diff) |
Wrap speedtest-net module
-rw-r--r-- | src/test-services/ookla/ookla.ts | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/test-services/ookla/ookla.ts b/src/test-services/ookla/ookla.ts index ed4205c..6c7296b 100644 --- a/src/test-services/ookla/ookla.ts +++ b/src/test-services/ookla/ookla.ts @@ -1,16 +1,27 @@ import { TestService } from '../../models/test-service.model' import { Context } from '../../models/context.model' +import st from 'speedtest-net' + +const test = (): Promise<any> => + new Promise((resolve, reject) => { + st({ maxTime: 5000 }).on('data', data => { + resolve(data) + }) + }) export class Ookla implements TestService { name = 'Speedtest.net (Ookla) Speed Test' constructor(private ctx: Context) {} testDownload = async (): Promise<number> => { - return 5 + const testData = await test() + return testData.speeds.download } testUpload = async (): Promise<number> => { - return 5 + const testData = await test() + return testData.speeds.upload } serverLocation = async (): Promise<string> => { - return 'Victoria, BC' + const testData = await test() + return testData.server.location } } |