summaryrefslogtreecommitdiff
path: root/lambda-calcul/javascript/test
diff options
context:
space:
mode:
Diffstat (limited to 'lambda-calcul/javascript/test')
-rw-r--r--lambda-calcul/javascript/test/client.test.js19
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));
+ });
});