Commit Graph

258 Commits

Author SHA1 Message Date
Florian Schmaus b3637101ce [sinttest] Use MultiUserChat.getMyRoomJid() in integration test 2021-12-20 22:40:55 +01:00
Florian Schmaus 56ca31b156 [sinttset] AbstractMultiUserChatIntegrationTest cleanups 2021-12-20 22:40:13 +01:00
Florian Schmaus 56c66f17d8 [sinttest] MultiUserChatEntityIntegrationTest cleanups 2021-12-20 22:39:45 +01:00
Dan Caseley e51cf47b29 [sinttest] Additional tests for § 6 of XEP-0045
Modified-by: Florian Schmaus <flo@geekplace.eu>
2021-12-20 21:11:31 +01:00
Florian Schmaus 10a2687ff1 [sinttest] Allow the selection of individual test *methods* 2021-12-13 21:08:45 +01:00
Florian Schmaus 69a55aaa84 [sinttest] Evaluate compatibilityMode property 2021-12-13 21:04:32 +01:00
Florian Schmaus def7c91e6a [sinttest] Introduce dirty hack in performActionAndWaitForPresence() 2021-12-13 21:03:40 +01:00
Florian Schmaus 4e2d0035ac [sinttest] Increase 'try' block in MultiUserChatRolesAffiliations*Test
Fixes: aff6283798
2021-12-13 21:01:41 +01:00
Florian Schmaus 400a2b2564 [sinttest] Use popular desktop OS in SoftwareInfoIntegrationTest values 2021-12-13 20:51:33 +01:00
Florian Schmaus 33e8053258 [sinttest] Remove unnecessary catch in UserTuneIntegrationTest 2021-12-13 20:50:56 +01:00
Guus der Kinderen 819ed87a17 [sinttest] Wait for notification filter to propagate
The UserTuneIntegrationTest, in rapid succession:
- add a listener for PEP-published usertune data
- publishes a usertune
- waits for a notification to arrive

Implicit to adding the listener is the publication of a change in
Pubsub notification filtering. This can involve a stanza handshake,
as CAPS is involved.

A race condition exists where the usertune data can be published
before the notification filter has been properly applied.

The changes in this commit add a synchronzation point that ensures
that the notification filter is in place, before the usertune data
is published.

Co-authored-by: Paul Schaub <vanitasvitae@fsfe.org>
2021-12-12 18:13:31 +01:00
Florian Schmaus f611941dcf
Merge pull request #480 from guusdk/sint_improve-notinroster
[sint] increase stability
2021-11-04 09:46:18 +01:00
Florian Schmaus a0b9279441 [sinttest] Add "compatibility mode" setting 2021-08-22 16:16:03 +02:00
Dan Caseley 48c057ab10 [sinttest] Additional tests for s5 of XEP-0045
Modified-by: Florian Schmaus <flo@geekplace.eu>
2021-08-22 15:29:07 +02:00
Florian Schmaus f64288ba6d [sinttest] Treat NPE as test failure not as abort condition 2021-07-16 08:56:48 +02:00
Florian Schmaus 4120b42761 [omemo] Add OmemoManager.purgeEveryting()
This is basically the already existing method from
OmemoManagerSetupHelper.cleanUpPubSub() moved over into OmemoManager
as purgeEverything().
2021-07-06 12:31:47 +02:00
Guus der Kinderen 5e203086b3 [sint] increase stability
Some roster-based tests depend on there not being any prior subscription state beteween entities. The utility method that
tries to guarantee that, acts on the state of the roster that's cached in memory, but acts on the one that's stored on the
server. This occasionally causes issues, as both representations might be different.

Stability is added in this commit by:
- refreshing the roster from the server prior to evaluating it
- ignoring an 'item-not-found' as returned by the server, when the code tries to remove that item.
2021-06-25 16:08:31 +02:00
Florian Schmaus 6434e77336 [sinttest] Use correct camel case in method name: s/MUC/muc/
See also https://google.github.io/styleguide/javaguide.html#s5.3-camel-case
2021-06-21 14:52:18 +02:00
Dan Caseley cd6ff363c6 [sinttest] Refactor MUC tests ready to add more 2021-06-15 13:03:46 +01:00
Florian Schmaus 64db6e3ebc [openpgp] Remove INFO log sites
INFO log sites should be used sparingly and carefully. Those are a
good examples for an unnecessary INFO log sites.
2021-05-02 18:45:25 +02:00
Dan Caseley fc191e4e19 [sinttest] Add XEP reference for muc destroy test 2021-04-26 13:28:00 +01:00
Dan Caseley b541397119 [sinttest] Fix typo in muc XEP reference for test 2021-04-26 13:26:29 +01:00
Florian Schmaus 6a78e4ad09 [sinttest] Do not catch exceptions when destroying a MUC
If something goes wrong when destroying a MUC, we want to be notified
about it immediately, as further results of the integration test run
are unreliable anyway.
2021-04-26 09:42:20 +02:00
Florian Schmaus a36251ff7d Merge remote-tracking branch 'github/pr/469' into muc 2021-04-26 09:08:44 +02:00
Florian Schmaus 0c397294e1 Merge remote-tracking branch 'github/pr/468' into muc 2021-04-26 09:00:50 +02:00
Dan Caseley 920b686f29 Add kick presence tests
Inspired by OF-2240. Used to validate the problem, then test the fix.
2021-04-25 14:32:58 +01:00
Dan Caseley 642f5bde61 [sinttest] Fix ordering of parameters in muc assertEquals checks 2021-04-23 16:50:33 +01:00
Florian Schmaus 8a91021a0e [sinttest] Improve MultiUserChatIntegrationTest.tryDestroy(MultiUserChat) 2021-04-18 21:35:34 +02:00
Florian Schmaus 3d4e7938a7 Make ExtensionElement marker interface wrt. QNAME field
ExtensionElement is now a marker interface that requires all
implementation non-abstract classes to carry a static final QNAME
field (of type QName). This is verified by a new unit test.

Also FullyQualifiedElement is renamed to simply XmlElement. XmlElement
is used over ExtensionElement when implementing classes do not
statically know the qualified name of the XML elements they
represent. In general, XmlElement should be used sparingly, and every
XML element should be modeled by its own Java class (implementing
ExtensionElement).
2021-04-18 21:07:19 +02:00
Florian Schmaus fbddd074bc [gradle] Do not use deprecated 'compile' directive 2021-04-14 20:30:51 +02:00
Florian Schmaus 6b3e41d591 Merge branch 'master' of github.com:igniterealtime/Smack 2021-04-12 14:06:15 +02:00
Dan Caseley aff6283798 Add MUC tests for presence & self-presence for role & affiliation changes 2021-04-07 10:33:38 +01:00
Florian Schmaus 138725a22f [sinttest] Log testPackages to ISE's message
This means we the reason for the LOGGER.info() call is now gone.
2021-04-05 15:02:58 +02:00
Florian Schmaus c484b72fb7 [sinttest] Fix buildWebsocketDescriptor() 2021-04-01 17:22:23 +02:00
Florian Schmaus 0c4b5d3ff9 [sinttest] Log if sinttest packages are provided via command line 2021-04-01 17:22:06 +02:00
Florian Schmaus cd10d1b40c [sinttest] Downgrade org.refelections:reflections to 0.9.11 2021-04-01 17:21:49 +02:00
Guus der Kinderen 252cea1149 SINT: MAM test does not require XEP-0441
The MAM integration test setup attepts to set MAM preferences (XEP-0441).
When a server does not support this XEP, the setup phase errors out, preventing
the tests from being executed.

There is no functional reason why tests shouldn't be run when XEP-0441 is not
supported: the tests can run against the default configuration of the MAM
service.

This commit ignores feature-not-implemented errors when MAM
preferences are set.

[Ignore only feature-not-implemented errors, log ignored errors)
Modified-by: Florian Schmaus <flo@geekplace.eu>
2021-04-01 13:13:42 +02:00
Florian Schmaus 4fefa92e40 Merge branch '4.4' 2021-03-19 09:47:07 +01:00
Florian Schmaus b276b89916 [sinttest] Add code comment and empty line 2021-03-18 21:32:37 +01:00
Florian Schmaus ddf96828e4 [sinttest] Add fromMarkers array to exception message 2021-03-18 21:32:21 +01:00
Florian Schmaus 35cd1a8f88 [sinttest] Do not lazily create fromMarkers
If we do not create the fromMarkers initialized with 'false' at the
start, then it may appear like all messages are received, because we
only check for false markers. But if there is not even the fromMarkers
array, then we do not see those 'false' markers.
2021-03-18 21:32:10 +01:00
Florian Schmaus 9520aa7d90 [sinttest] Do not create myReceiveMarkers on demand 2021-03-15 19:24:19 +01:00
Florian Schmaus 11a486d84d [sinttest] Add header to NotAllMessagesReceivedException
This header maps the internal connection ID to the connection.
2021-03-15 19:22:57 +01:00
Florian Schmaus f91598e10c [sinttest] Improve NotAllMessageReceivedException 2021-03-15 19:22:26 +01:00
Florian Schmaus ad8eeebc0d [sinttest] Allow maxPayloadChunks == 0 2021-03-15 19:21:55 +01:00
Florian Schmaus 73941629f3 [sinttest] Call OutgoingFiletransfer.getException() in case of error 2021-03-14 17:57:13 +01:00
Florian Schmaus 4aacdc5154 Add smack-websocket-java11
This also lifts a bunch of logic from smack-websocket-okhttp into
smack-websocket. Furthermore, the following subprojects require now
Java 11:
- smack-integration-test
- smack-omemo-signal-integration-test
- smack-repl
- smack-websocket-java11

Related tracking issue: SMACK-835
2021-02-14 20:34:40 +01:00
Florian Schmaus cd40455b62 [smack-integration-test] Bump reflections to 0.9.12
This also means that smack-integration-test needs to declare a
dependency on Guava, which was previously available as transitive
dependency of 'reflections' 0.9.11.
2021-02-14 18:37:44 +01:00
Florian Schmaus a7b3303f3e Bump ErrorProne to 2.5.1 and refactor Providers a bit
This also resulted in a refactoring of the Providers and parsing
Exceptions. NumberFormatException and ParseException can now be thrown
directly, the wrapping in a SmackParsingException is down at a higher
layer, i.e. in AbstractProvider.
2021-01-29 09:26:15 +01:00
Florian Schmaus 71f5cfe3da Merge branch '4.4' 2020-11-09 11:08:47 +01:00