Jakob Ackermann
91e296533f
[misc] test/acceptance: add tests for the draining of connections
2020-06-09 18:00:44 +01:00
Jakob Ackermann
acb7d7df5a
[misc] add test cases for the validation of the callback argument
...
When the user provides a function as last argument for socket.emit,
socket.io will flag this as an RPC and add a cb as the last argument
to the client.on('event', ...) handler on the server side.
Without a function as last argument for socket.emit, the callback
argument on the server side is undefined, leading to invalid function
calls (`undefined()`) and an unhandled exception.
The user can also provide lots of other arguments, so the 2nd/3rd ...
argument is of arbitrary type, again leading to invalid function calls
-- e.g. `1()`.
2020-06-09 16:30:03 +01:00
Jakob Ackermann
dc553c4150
[misc] vendor a patched session.socket.io middleware
2020-06-09 15:21:33 +01:00
Jakob Ackermann
5238e6ad36
Merge pull request #145 from overleaf/jpa-backport-140
...
[backport] 140: stop processing requests as we detect a client disconnect
2020-06-09 14:41:12 +02:00
Jakob Ackermann
589bedc3dd
Merge pull request #146 from overleaf/jpa-downgrade-logging
...
[misc] downgrade logging when running tests
2020-06-09 14:40:59 +02:00
Jakob Ackermann
f40241a037
[misc] downgrade logging when running tests
2020-06-05 11:38:09 +01:00
Jakob Ackermann
ddcb9cf8c8
[misc] downgrade a warning message from clients leaving non-joined rooms
...
This can now happen all the time, as we skip the join for clients that
disconnect before joinProject/joinDoc completed.
(cherry-picked from commit f357931de74e088800f3cced3898cce4f251dad0)
2020-06-05 11:32:43 +01:00
Jakob Ackermann
7fa9061015
[misc] stop processing requests as we detect a client disconnect
...
v2 expose `client.connected`; v0 exposes `client.disconnected`
(cherry-picked from commit a9d70484343ca9be367d45bf7bb949e4be449647)
2020-06-05 11:32:13 +01:00
Jakob Ackermann
c6d08647c7
[misc] socket.io: use a secondary publicId for public facing usages
2020-06-04 17:18:07 +01:00
Jakob Ackermann
d13acb8ca3
[ChannelManager] port related and still mostly valid test from v2
...
I skipped the bulk of verifyConsistentBehaviour tests which are not
valid for the new implementation -- there is no optimization and
always cleanup.
2020-05-15 18:39:33 +02:00
Jakob Ackermann
af53d3b603
[misc] skip duplicate JSON serialization for size check
2020-03-24 11:22:28 +01:00
Jakob Ackermann
15244a54be
[misc] WebsocketController: limit the update size to 7mb
...
bail out early on -- especially do not push the update into redis for
doc-updater to discard it.
Confirm the update silently, otherwise the frontend will send it again.
Broadcast a 'otUpdateError' message and disconnect the client, like
doc-updater would do.
2020-03-24 09:12:12 +01:00
Simon Detheridge
21e294c6eb
Generate retryable error when hitting rate limits in web
2019-09-02 11:27:04 +01:00
Brian Gough
478a727c61
ignore spurious requests to leave other docs
2019-07-29 15:19:08 +01:00
Brian Gough
04a171171f
fix async behaviour of join/leave
2019-07-29 11:54:02 +01:00
Henry Oswald
2c9b222437
fix breaking tests from using ioredis with inbuilt promises
...
because a promise is returned from ioredis it errors in mocha as it
can't take a promise and a callback
2019-05-30 10:58:05 +01:00
Chrystal Griffiths
507c4e5ce2
Fix test to accommodate changes to anonymous users
2019-02-15 15:18:17 +00:00
Henry Oswald
a07e516f65
update redis key
2019-02-04 10:22:26 +00:00
Henry Oswald
327fa79f1c
update build scripts, acceptence tests now pass. includes dockerfile 1.1.3
2018-05-23 15:00:46 +01:00
Brian Gough
168d646328
exit if mock servers fail to start
2017-10-20 15:19:20 +01:00
Alasdair Smith
6470577c3f
Add acceptance tests for joinDoc variadic
2017-09-22 11:01:11 +01:00
James Allen
a8917b933f
Remove multi call to make compatible with redis-cluster
2017-05-11 17:27:28 +01:00
James Allen
d8ff8ba098
Merge pull request #11 from sharelatex/ja-allow-readonly-comments
...
Allow readonly users to submit comments
2017-03-20 14:25:03 +00:00
James Allen
8766646149
Allow users to send a comment update if they are read-only
2017-03-15 15:45:52 +00:00
Shane Kilkelly
50930cd7b1
Don't npm rebuild inside container
2017-02-20 10:14:41 +00:00
James Allen
bf2620ee0c
Return ranges from docupdater to client
2016-12-08 11:37:31 +00:00
James Allen
5d377713d6
Try to fix issue with acceptance tests timing out
2016-12-08 11:25:25 +00:00
James Allen
9cf0eb5540
Add in acceptance test script
2016-12-08 11:14:27 +00:00
James Allen
4cff89becc
Fix acceptance tests
2016-12-08 11:12:07 +00:00
James Allen
030abc5340
Don't flush to track changes now that this happens in doc updater
2016-01-20 17:51:24 +00:00
James Allen
a48c8aad92
Support anonymous access
2014-11-21 11:48:59 +00:00
James Allen
7b275e9e0e
Add acceptence tests for leaving(disconnecting) from a project
2014-11-17 12:23:30 +00:00
James Allen
80b7875414
Add in leaveProject handler
2014-11-14 16:51:55 +00:00
James Allen
fd56655529
Add in track changes and doc updater flushing calls
2014-11-14 15:53:59 +00:00
James Allen
347ceaaf03
Listen for updates from doc updater and send them to clients
2014-11-14 15:30:18 +00:00
James Allen
b6f51fdafd
Refactor acceptance tests to wait for connection before proceeding
2014-11-14 10:21:54 +00:00
James Allen
fef5f6b775
Add acceptance tests for applyOtUpdate
2014-11-14 10:12:35 +00:00
James Allen
f0e69bfe2d
Add appltOtUpdate end point (sans acceptance tests for now)
2014-11-13 17:07:05 +00:00
James Allen
cc1c85ebf8
Distribute server side socket.io updates over Redis Pub/Sub
2014-11-13 16:03:37 +00:00
James Allen
e769819521
Add in clientTracking.updatePosition end point
2014-11-13 15:27:18 +00:00
James Allen
84778b5961
Mark user as connected for cursor updates when joining project
2014-11-13 13:05:49 +00:00
James Allen
431abdc6eb
Add leaveDoc acceptance tests
2014-11-13 11:54:10 +00:00
James Allen
0b18edeff3
Add in /clients and /client/:client_id status end points
2014-11-13 11:48:49 +00:00
James Allen
eb8ccc0298
Create joinDoc socket.io end point
2014-11-12 15:54:55 +00:00
James Allen
dc60f2b736
Add acceptance test for unauthorized project joining
2014-11-10 11:38:26 +00:00
James Allen
02c0a3a867
Create joinProject socket.io endpoint
2014-11-10 11:27:08 +00:00
James Allen
fbf983c2ff
Create framework for real-time API with session authentication
2014-11-07 17:38:12 +00:00