Commit Graph

44 Commits

Author SHA1 Message Date
Aditya Borikar fcaeca48ec Add SimpleXmppConnectionIntegrationTest 2020-07-22 16:35:56 +05:30
Florian Schmaus 2900cc2274 [sinttest] Disconnect connection in LoginIntegrationTest
So that it will cause an connectionClosedOnError() callback, caused by
an connection-timeout stream error.
2020-05-31 21:00:42 +02:00
Florian Schmaus 57961a8cc1 Remove SynchronizationPoint
This continues the design started with e98d42790 ("SmackReactor/NIO,
Java8/Android19, Pretty print XML, FSM connections"), where the
exceptions that caused an operation to fail, are not recorded within
SynchronizationPoint but within the connection instance itself.
2020-05-31 19:48:47 +02:00
Florian Schmaus dd248adb28 sinttest: delcare boolean in WaitForClosingStreamElementTest 2020-04-13 22:49:31 +02:00
Florian Schmaus e8fef260e6 sinttest: migrate to JUnit5, drop JUnit4
The before/after class annotations are now no longer borrowed from
JUnit.

Also some integration tests used @After and/or @Before from JUnit,
which was never supported nor had any effected. Those methods got
deleted. But since there appears to be a desire for such a
functionality in sinttest, we should consider adding one.
2020-04-12 22:21:30 +02:00
Florian Schmaus 594d2f5238 sinttest: convert LoginIntegrationTest to Junit5 2020-04-11 12:18:18 +02:00
Florian Schmaus 79b9c7b934 sinttest: add testDisconnectedNeverConnected for modular connection 2020-04-09 21:09:42 +02:00
Florian Schmaus e68b89d266 sinttest: rename and move ModularXmppClientToServerConnection test
Rename and move the test in the correct package.
2020-04-09 21:09:17 +02:00
Florian Schmaus cc636fff21 Introduce Smack's Modular Connection Architecture
This is a complete redesign of what was previously
XmppNioTcpConnection. The new architecture allows to extend an XMPP
client to server (c2s) connection with new transport bindings and
other extensions.
2020-04-04 13:03:31 +02:00
Florian Schmaus eb4c2c5572 s/occured/occurred/ 2019-10-30 12:02:36 +01:00
Florian Schmaus e2d206e741 Introduce XMPPConnection.add(Message|Presence)Interceptor
add deprecate addStanzaInterceptor().
2019-10-25 21:41:55 +02:00
Florian Schmaus 5db6191110 Introduce StanzaBuilder
As first step to immutable Stanza types.
2019-10-25 21:41:55 +02:00
Florian Schmaus 75625283ef Make "duplicate" package-info.java files symbolic links
This is needed for javadocAll since otherwhise there will be

smack-core/src/main/java/org/jivesoftware/smack/package-info.java:21:
	warning: a package-info.java file has already been seen for
	package org.jivesoftware.smack

warnings.
2019-09-01 23:13:20 +02:00
Florian Schmaus 1a3067c89b Enable werror for javadoc and fix javadoc issues 2019-08-30 12:08:30 +02:00
Florian Schmaus 9246ea5dca LowLevelRosterIntegrationTest: Use timeout value from superclass 2019-03-16 21:24:04 +01:00
Florian Schmaus 9c4e5d0330 Add Roster.createItem() and Roster.createItemAndRequestSubscription()
and deprecate createEntry().

createEntry() would also send a subscription request which may is
suprising given that you can also create an roster item without having
to send a subscription request out.

This also fixes a bug in
LowLevelRosterIntegrationTest.testPresenceEventListenersOffline()
where createEntry() was used, which would also trigger a presence
subscription request which in turn made the test fail if the
SubscribeListener of ensureSubscribedTo() was not yet set
up. So the test would fail depending on the timing.
2019-03-16 21:23:45 +01:00
Florian Schmaus e98d42790a SmackReactor/NIO, Java8/Android19, Pretty print XML, FSM connections
This commit adds
- SmackReactor / NIO
- a framework for finite state machine connections
- support for Java 8
- pretty printed XML debug output

It also
- reworks the integration test framework
- raises the minimum Android API level to 19
- introduces XmppNioTcpConnection

Furthermore fixes SMACK-801 (at least partly). Java 8 language
features are available, but not all runtime library methods. For that
we would need to raise the Android API level to 24 or higher.
2019-02-05 13:18:03 +01:00
Florian Schmaus b705355e3d Add IntegrationTestRosterUtil 2018-11-11 17:10:40 +01:00
Florian Schmaus e8923b9d16 Enable trailing whitespace checkstyle check
for all source code regions, including javadoc.
2018-05-09 23:26:39 +02:00
Florian Schmaus 1acfd872a7 Merge branch '4.2' 2018-04-07 23:51:58 +02:00
Florian Schmaus 14d20367b2 Improve chat2 integration tests
- Move in correct package
- Use 'timeout' where possible
- Introduce AbstractChatIntegrationTest holding the chat managers
2018-04-07 23:48:28 +02:00
Florian Schmaus ad87243060 Globally 's;stanza(/packet);stanza;' 2018-03-31 14:17:30 +02:00
Paul Schaub cb18056613 Fix minor codestyle issues 2017-12-17 11:03:46 +01:00
Florian Schmaus 08e897113d Add CustomImportOrder checkstyle rule
And matching ImportOrder settings for Eclipse in
resources/eclipse/smack.importorder
2017-06-14 17:12:43 +02:00
Florian Schmaus 525feaa161 Add SynchronizationPoint.getFailureException() 2017-03-13 07:37:40 +01:00
Florian Schmaus 7c46f58c80 Rename "PacketReplyTimeout" → "ReplyTimeout" 2017-01-12 20:57:19 +01:00
Florian Schmaus d47463a533 Deprecate Chat API, introduce new Chat API
Also add (From|To)TypeFilter and update/fix the documentation in a few places.
2017-01-11 19:48:22 +01:00
Florian Schmaus 90a5e289f8 s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/ 2017-01-03 11:35:04 +01:00
Florian Schmaus 7655ac17f2 Re-activate EntityCaps integration test 2016-12-24 10:27:04 +01:00
Florian Schmaus 1f7770b831 More detailed logging to RosterIntegrationTest 2016-12-23 23:52:29 +01:00
Florian Schmaus 814cc1fdde Create low-level inttest accounts with test run ID 2016-12-19 18:11:19 +01:00
Florian Schmaus f1e24e2273 Rework Roster's SubscribeListener
allow multiple of them to be installed, instead of at most one. Fixes
deadlock in LowLevelRosterIntegration test because
IoTProvisioningManager's SubscribeListener would not come up with a
decission.
2016-07-31 14:50:59 +02:00
Florian Schmaus d07ed60737 Add support for "Caps Optimizations"
Smack's previous entity caps implementation assumed that an entity lost
its entity caps feature as soon as a presence without caps from that
entity was received. But according to XEP-0115 § 8.4, this is a
perfectly normal optimization technique. We now reset the caps state
after an available presence becomes unavailable.

Also introduce PresenceEventListener, which is required for this
feature.

Also make Roster.preApprove() take a BareJid as argument.

Fixes SMACK-723.
2016-06-30 17:01:46 +02:00
Florian Schmaus 0d47e65c96 Remove unnecessary code to enable stream mangement
it is now enabled per default. See also
57838f1ffe and SMACK-655.
2016-01-10 19:44:33 +01:00
Florian Schmaus 658a671cbe Make StringUtils.randomString(int) use SecureRandom 2016-01-10 18:21:46 +01:00
Florian Schmaus 58402c5615 Bump jxmpp to 0.5.0-alpha5 and change Roster API
to only allow bare JIDs as roster entires.
2015-06-06 11:16:12 +02:00
Florian Schmaus 8840236b72 Gracefully disconnect XMPPTCPConnection
That is, wait with a timeout for a closing stream element if we have
sent a closing stream element to the server. See RFC 6120 § 4.4.

Fixes SMACK-633.
2015-05-27 17:36:04 +02:00
Florian Schmaus 2365c4c208 Add Roster.addSubscribeListener()
Remove unnecessary 'Unsubscribe' case in Roster: It is not required to
acknowledge these.
2015-05-21 22:41:21 +02:00
Florian Schmaus 51700400bc Remove never-thrown exception declarations 2015-04-25 22:46:56 +02:00
Florian Schmaus 00a7556bfe Fix StreamManagementTest in smack-integration
Since 6c637d5784 connect() does not longer
automatically perform a login.

Also verify the message bodies in the test.
2015-04-22 22:45:15 +02:00
stawny 75e35e8db6 Fix for getting after method 2015-04-04 17:31:14 +02:00
stawny 9d0ea3cf70 Resurrect integration tests: Chat Test 2015-04-04 17:19:31 +02:00
Florian Schmaus de528eee67 Add JavadocPackage checkstyle
change from package.html to package-info.java. Add missing
package-info.java with a placeholder description.
2015-04-04 17:16:47 +02:00
Florian Schmaus b8f046706b Add Integration Test Framework
and resurrect a few integration tests.
2015-03-18 11:09:56 +01:00