Commit graph

248 commits

Author SHA1 Message Date
Ashod Nakashian
494b90e541 loolwsd: new unittests
Change-Id: I935dbc79df638a7481f851b3e7b42703b97b93ec
Reviewed-on: https://gerrit.libreoffice.org/23648
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-03-30 02:06:32 +00:00
Tor Lillqvist
2604824d5f Need to #include <Poco/Net/PrivateKeyPassphraseHandler.h> to avoid warning 2016-03-28 13:26:37 +03:00
Ashod Nakashian
0f580476fc loolwsd: improving unittests
Dumping of registered tests in preparation
to allow for selective test running.

Change-Id: I83af1c9be211804f757918c326602a0b53815704
Reviewed-on: https://gerrit.libreoffice.org/23531
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-03-26 16:56:58 +00:00
Ashod Nakashian
d7732bdcaa loolwsd: new unittests and test improvements
Change-Id: I14e53f8bc3958dda1da1a95283c42cfef0bccd99
Reviewed-on: https://gerrit.libreoffice.org/23530
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-03-26 16:53:57 +00:00
Ashod Nakashian
82bd7a606a loolwsd: recursive_mutex -> mutex and new loading synchronization mechanics
Change-Id: I20249ca56ca3e9203e6a989e6fe9972b6b4eca36
Reviewed-on: https://gerrit.libreoffice.org/23528
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-03-26 16:52:25 +00:00
Ashod Nakashian
d48d9044a1 loolwsd: run tests on doc copies
Tests can modify the test documents they use.
Currently there is data-loss protection that
saves an open doc if connection is lost with
the client. For tests this means modification
are saved when a connection is terminated
ungracefully and this both adds noise
to the git checkout and makes subsequent
tests fail.

This patch makes temp copies of the original
doc before a test is run and deletes them
afterwards.

Change-Id: I1dd6ff2b839701e85c8bd502ba75170c01fa106e
Reviewed-on: https://gerrit.libreoffice.org/23447
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-03-23 00:00:34 +00:00
Tor Lillqvist
129f797c83 Need to #include <Poco/Net/PrivateKeyPassphraseHandler.h> to avoid warning
Poco/SharedPtr.h: In instantiation of ‘static void Poco::ReleasePolicy<C>::release(C*) [with C = Poco::Net::PrivateKeyPassphraseHandler]’:
Poco/SharedPtr.h:130:14:   required from ‘Poco::SharedPtr<C, RC, RP>::SharedPtr(C*) [with C = Poco::Net::PrivateKeyPassphraseHandler; RC = Poco::ReferenceCounter; RP = Poco::ReleasePolicy<Poco::Net::PrivateKeyPassphraseHandler>]’

Poco/SharedPtr.h:70:3: warning: possible problem detected in invocation of delete operator: [-Wdelete-incomplete]
    delete pObj;

Poco/SharedPtr.h:66:25: warning: ‘pObj’ has incomplete type
    static void release(C* pObj)

Poco/Net/PrivateKeyFactory.h:30:7: note: forward declaration of ‘class Poco::Net::PrivateKeyPassphraseHandler’
    class PrivateKeyPassphraseHandler;
2016-03-22 20:32:46 +02:00
Pranav Kant
4dd14c0024 loolwsd: SSL infrastructure
... and use SSL for client connections. Also fix our test suite
to use HTTPS now.

Change-Id: Id396a7c2d1830da8d3b0ce446522403363ac17c1
Reviewed-on: https://gerrit.libreoffice.org/23395
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Tor Lillqvist <tml@collabora.com>
2016-03-22 00:05:26 +05:30
Ashod Nakashian
cc0a607185 loolwsd: fix tests to pass URL in GET request
Change-Id: Ia4027bfccca49f48feee52c9e4d86505cae02aa1
Reviewed-on: https://gerrit.libreoffice.org/23227
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-03-14 03:17:46 +00:00
Ashod Nakashian
f1007266e1 loolwsd: DocumentStoreManager shared by MasterProcessSession instances
Change-Id: Id7ada60387cafdf742690dbf345bb1e703b2ca76
Reviewed-on: https://gerrit.libreoffice.org/23206
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-03-14 03:01:48 +00:00
Tor Lillqvist
69a6167f0e Use better test names 2016-03-03 17:31:13 +02:00
Tor Lillqvist
06f56e646d Test harder 2016-03-03 17:14:15 +02:00
Jan Holesovsky
2590cd186e loolwsd: LOK_CALLBACK_PARTS_COUNT_CHANGED was removed from the API. 2016-03-03 11:13:34 +01:00
Miklos Vajna
34fc0baacc loolwsd: indentation fixes in httpwstest
This file had a consistent style up to recently, keep it that way.
2016-03-01 09:55:06 +01:00
Tor Lillqvist
3cad8c183a Seems that 10 seconds is not enough
One has to love arbitrary retry counts and timeouts. Loading the
password-protected.ods in a loolkit process, with correct password
provided, takes 12 seconds on my machine. I think this slowness is
because the NSS code LO uses to do crypto wants to initialize its
crypto goodness in various ways that don't work so well inside a
chroot jail. Presumably it uses some wait with timeout when attempting
to do something which doesn't succeed. For instance it tries to run
netstat -in. (In an interactive LibreOffice the doc loads fairly
instantly.) Oh well.
2016-02-25 16:22:07 +02:00
Tor Lillqvist
ff7a0ac8ee Add more verbose debug output...
Debugging this crack is really hard.
2016-02-25 15:57:55 +02:00
Tor Lillqvist
4b5e799a33 Split testPasswordProtectedDocument() into three
It does three separate things, and the first two intentionally result
in errors, and the server probably disconnects after errors. Not
sure. This is horrible, horrible.
2016-02-25 11:02:35 +02:00
Tor Lillqvist
bbcc2c43da I think it makes more sense to output to std::cout here
Because that is where cppunit outputs, I am told, so less chance of
out-of-order mixing, maybe.
2016-02-25 10:31:36 +02:00
Tor Lillqvist
dbd5e3877d Don't send "disconnect" frames here either
The JavaScript code does not either.
2016-02-24 17:45:20 +02:00
Tor Lillqvist
7320d8ca51 Bin unused 'using' 2016-02-23 20:02:54 +02:00
Tor Lillqvist
79037b687e Log received messages to stderr 2016-02-23 20:02:29 +02:00
Tor Lillqvist
5a69177f74 We are not interested in the payload of CLOSE frames 2016-02-22 13:50:14 +02:00
Henry Castro
fa4e3bcc86 loolwsd: use kill signal SIGINT 2016-02-21 14:48:05 -04:00
Pranav Kant
6722d430a5 loolwsd: Use helper functions for document password unit test
Change-Id: Ibf921ea1834f85b9a1d81232b1a018c1936fe620
2016-02-21 20:40:05 +05:30
Henry Castro
cdc0ffb0cb loolwsd: add cppunit test partscountchanged 2016-02-20 17:14:10 -04:00
Pranav Kant
d05f42df08 loolwsd: Rework document password unit test
Our unit test structure changed with
7037f07a38 . Restructure this one
too.

Change-Id: I1a14dd0ab0d631fd447edf620b6c24fe3730c843
2016-02-20 03:52:22 +05:30
Pranav Kant
b902d80ec7 loolwsd: Add a unit test for password protected documents
Change-Id: Ia675d2750e11cb466b2e80b8f36f2ef04e0a7a09
Reviewed-on: https://gerrit.libreoffice.org/22466
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-02-19 21:55:07 +00:00
Miklos Vajna
e3cc05ddcd loolwsd: fix indentation 2016-02-19 08:38:02 +01:00
Henry Castro
7037f07a38 loolwsd: re-work cppunit test websoket 2016-02-18 17:12:16 -04:00
Tor Lillqvist
3d817e914e When running against a LOK_PREINIT=1 loolwsd, for some reason we get a BOM
So skip that.
2016-02-18 18:37:02 +02:00
Ashod Nakashian
11e8a9bb4f loolwsd: test improvements
Change-Id: Ieeef1019063636cef171cc360f523810f6f989d2
Reviewed-on: https://gerrit.libreoffice.org/21759
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-01-24 21:12:43 +00:00
Ashod Nakashian
dd374d8aec loolwsd: disconnect command to gracefully shutdown a socket
Change-Id: I8beb4c14fc95bdb2a98c7e5da44408511bce5e28
Reviewed-on: https://gerrit.libreoffice.org/21683
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-01-21 16:05:55 +00:00
Ashod Nakashian
291b0aac67 loolwsd: don't ignore the last few bytes of a closed socket
Change-Id: Id6332857e49ccbacfa6e63b87a1ed570e9598147
Reviewed-on: https://gerrit.libreoffice.org/21680
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-01-21 16:03:29 +00:00
Ashod Nakashian
8ec0efe8bc loolwsd: const correctness
Change-Id: Icf1e7d625f9217abf3abe5d9123347aa61e0a74c
Reviewed-on: https://gerrit.libreoffice.org/21687
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-01-21 15:59:15 +00:00
Miklos Vajna
a67d73ea57 loolwsd: HTML paste testcase
Fails without the previous commit.
2016-01-18 11:47:57 +01:00
Miklos Vajna
1977f07d5c paste: handle data containing newlines
By changing the protocol, so that instead of "paste ... data=<data>",
the client is now expected to send "paste ...\n<data>".
2016-01-15 14:43:59 +01:00
Miklos Vajna
b8ef0c8813 loolwsd: fix make check
After my commit 49b67cdc36b599f865d4a6de214d901861f27196 (tdf#96961 sw
Hide Whitespace: still show whitespace on the last page, 2016-01-08) in
core.git.
2016-01-11 11:24:20 +01:00
Ashod Nakashian
cf65588031 loolwsd: more local ClientPortNumber
Change-Id: I2ce649a8f880bd0ec3bded715b1d8864e176b935
Reviewed-on: https://gerrit.libreoffice.org/21178
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-01-07 05:52:24 +00:00
Miklos Vajna
d1ff4721cf loolwsd: fix make check 2016-01-06 09:56:51 +01:00
Miklos Vajna
e3e4c4d6f3 loolwsd: fix tests to build again 2016-01-05 21:33:13 +01:00
Miklos Vajna
2bb596a256 loolwsd: coding style
If README says "spaces, not tabs" and "braces go on separate lines",
then be consistent about it before it gets normal to not respect those
rules.
2015-11-24 09:43:17 +01:00
Miklos Vajna
0723a96df7 HTTPWSTest: share socket init code between tests 2015-11-19 11:11:47 +01:00
Miklos Vajna
7be61ec464 HTTPWSTest: add document rendering options testcase
Fails without commit 57199a36cd (loolwsd:
route rendering options to initializeForRendering(), 2015-11-19).
2015-11-19 11:03:32 +01:00
Miklos Vajna
0fe05e6d91 loolwsd: -Werror=shadow 2015-10-28 10:55:27 +01:00
Miklos Vajna
3d613a443f loolwsd: add paste testcase
Fails with commit cc24463f08 (loolwsd:
wrap lok::Document::paste(), 2015-10-27) reverted.
2015-10-28 10:42:29 +01:00
Miklos Vajna
9917dd733f HTTPPostTest::testConvertTo: fix accidentel copy&paste 2015-10-21 13:58:50 +02:00
Miklos Vajna
3ed78cce6f loolwsd: add HTTP POST convert-to testcase
Fails with 8f90c38844 (loolwsd convert-to:
implement actual conversion, 2015-10-20) reverted.
2015-10-21 13:51:30 +02:00
Miklos Vajna
443486117a loolwsd: cppunit skeleton 2015-10-21 12:06:02 +02:00