diff options
Diffstat (limited to 'lambda-calcul/javascript/test/client.test.js')
| -rw-r--r-- | lambda-calcul/javascript/test/client.test.js | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/lambda-calcul/javascript/test/client.test.js b/lambda-calcul/javascript/test/client.test.js index 8b68a61..8a5ebff 100644 --- a/lambda-calcul/javascript/test/client.test.js +++ b/lambda-calcul/javascript/test/client.test.js @@ -40,7 +40,6 @@ describe('λ-calculator', () => { }); it('retrieves next challenge', () => { - challenger.on('request', (request, response) => { expect(request.method).toBe('GET'); expect(request.url).toBe('/api/challenge?token=SomeToken'); @@ -80,4 +79,22 @@ describe('λ-calculator', () => { const client = LC.newClient({ parser, interpreter, printer }); expect(client.solve('Some challenge')).toBe('Expression to print'); }); + + it('unregisters user', () => { + let challengerCalled = false; + + challenger.on('request', (request, response) => { + challengerCalled = true; + expect(request.method).toBe('DELETE'); + expect(request.url).toBe('/api/register?token=SomeToken'); + response.end(); + }); + + const client = LC.newClient({ + playerName: 'John Smith', + challengerURL: `http://localhost:${port}`, + }); + return client.unregister('SomeToken') + .then(() => expect(challengerCalled).toBe(true)); + }); }); |
