74bebc13e6
requireNotNullOrEmpty -> requireNotNullNorEmpty
2018-07-17 15:10:39 +02:00
1f731f6318
Rework support for XEP-0384: OMEMO Encryption
...
Changes:
Rework integration tests
New structure of base integration test classes
bump dependency on signal-protocol-java from 2.4.0 to 2.6.2
Introduced CachingOmemoStore implementations
Use CachingOmemoStore classes in integration tests
Removed OmemoSession classes (replaced with more logical OmemoRatchet classes)
Consequently also removed load/storeOmemoSession methods from OmemoStore
Removed some clutter from KeyUtil classes
Moved trust decision related code from OmemoStore to TrustCallback
Require authenticated connection for many functions
Add async initialization function in OmemoStore
Refactor omemo test package (/java/org/jivesoftware/smack/omemo -> /java/org/jivesoftware/smackx)
Remove OmemoStore method isFreshInstallation() as well as defaultDeviceId related stuff
FileBasedOmemoStore: Add cleaner methods to store/load base data types (Using tryWithResource, only for future releases, once Android API gets bumped)
Attempt to make OmemoManager thread safe
new logic for getInstanceFor() deviceId determination
OmemoManagers encrypt methods now don't throw exceptions when encryption for some devices fails. Instead message gets encrypted when possible and more information about failures gets returned alongside the message itself
Added OmemoMessage class for that purpose
Reworked entire OmemoService class
Use safer logic for creating trust-ignoring messages (like ratchet-update messages)
Restructure elements/provider in order to prepare for OMEMO namespace bumps
Remove OmemoManager.regenerate() methods in favor of getInstanceFor(connection, randomDeviceId)
Removed some unnecessary configuration options
Prepare for support of more AES message key types
Simplify session creation
Where possible, avoid side effects in methods
Add UntrustedOmemoIdentityException
Add TrustState enum
More improved tests
2018-06-13 12:29:16 +02:00
Florian Schmaus
9161ba9e7d
Improve MamManager API
2018-06-12 08:53:18 +02:00
Florian Schmaus
458d8d98b6
Make junit assertion more verbose
2018-05-10 15:26:06 +02:00
Florian Schmaus
6f83553c1b
Reduce scope of 'discoInfoSend' in EntityCapsTest integratino test
2018-05-10 14:55:34 +02: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
f4f072c4cb
Create sinntest configuration to connection configuration method
...
This also fixes the bug that only low level integration tests handled
the debugger sinttest setting.
2018-05-09 18:10:11 +02:00
Florian Schmaus
5ab2903c32
Change Element.toXml() to toXml(String enclosingNamespace)
2018-04-27 10:05:25 +02:00
Florian Schmaus
4fb34a6952
Add MultiUserChatManager.getMucServiceDomains()
...
and deprecate getXMPPServiceDomains().
2018-04-23 17:02:28 +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
2a56b24929
Add IntegrationTests for chat2 API
2018-04-04 15:41:59 +02:00
Florian Schmaus
ad87243060
Globally 's;stanza(/packet);stanza;'
2018-03-31 14:17:30 +02:00
Florian Schmaus
3132d9a224
Bump errorprone to 2.2.0
2018-03-28 15:56:04 +02:00
Florian Schmaus
b5209f4701
Enable RedundantModifier checkstyle check
2018-03-28 14:02:21 +02:00
Florian Schmaus
193688e553
Merge branch '4.2'
2018-03-28 12:51:28 +02:00
Jesus Fuentes
a70063dc89
Rename and deprecate XMPPConnection methods
...
Rename and deprecate XMPPConnections methods as described in SMACK-802
2018-03-22 15:40:40 -05:00
a3d430f334
Migrate the ChatState package to chat2 API
...
Fixes SMACK-761
2018-03-22 16:22:59 +01:00
Florian Schmaus
3bdeca44f2
Merge branch '4.2'
2018-02-23 18:35:34 +01:00
Florian Schmaus
1bd3469fec
Also set persist items to true in PubSubIntegrationTest
2018-02-22 15:05:12 +01:00
Florian Schmaus
a48e8ef843
Merge branch '4.2'
2018-02-21 20:13:05 +01:00
Florian Schmaus
79cb639f93
Improve PubSubIntegrationTest.simplePubSubNodeTest()
...
by setting the node's deliverPayloads to 'false'.
2018-02-21 20:09:11 +01:00
ec95bd4422
Prevent race condition in ecaps test ( #206 )
...
Properly synchronize EntityCapsTest.testPreventDiscoInfo()
2018-02-20 15:52:04 +01:00
2f2c2f8663
Fix minor codestyle issues
2017-12-17 11:19:41 +01:00
Florian Schmaus
431e5b3c67
Merge branch '4.2' into master-paul-merged
2017-12-17 11:16:02 +01:00
cb18056613
Fix minor codestyle issues
2017-12-17 11:03:46 +01:00
Florian Schmaus
81002c4fbd
Merge branch '4.2'
2017-11-22 08:37:47 +01:00
Florian Schmaus
9e11b68144
Add comment style checkstyle rule requiring a space
2017-11-20 08:53:19 +01:00
Florian Schmaus
384c285fbc
Merge branch '4.2'
2017-10-14 14:56:36 +02:00
8052ee752b
Add missing cleanup in Omemo integrationtest
2017-08-14 21:14:28 +02:00
Florian Schmaus
43abd52d76
Smack 4.2.1
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAlmR75tfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFLeXggAjdgj7YVUe22NtamnROBj1c3PaWwgSY0gEjcyDPsOz5qeqNUdQLHbmt2j
XQQpYZWKg1/1uoQHlsixaFKbGVctKRk72aNEodRfd1osta11WTOwZKEb8nI411Tt
7M0Fhf430WZY6nioZiZIorsmid57fftJ2EMPlmjEDp2FD0AVGAXkEhCneGaPtt9Q
hbWbepIy9tApeIH+QgmFLBmPLnFCaSg+X6NUden3Z21bUz5vH8pmcbeUVfsNB7kW
nkkDuNwKHPFLgjuhcq7D+KAKRwNU7n8WEuHseRzM7bMCEB+S/rZok5KPXe/tV4v+
YZKN2e+2yh4j5l4FT/fCzELfWcvrgA==
=MV3G
-----END PGP SIGNATURE-----
Merge tag '4.2.1'
Smack 4.2.1
2017-08-14 21:01:36 +02:00
Florian Schmaus
772e45da92
Introduce NotAPubSubNodeException
...
Fixes SMACK-759.
2017-08-14 20:23:35 +02:00
Florian Schmaus
b9ed22c732
Add MamManager.isSupported()
...
Fixes SMACK-777.
2017-08-14 20:23:35 +02:00
Florian Schmaus
0602ae064a
Remove deprecated methods from XMPPConnection
2017-08-12 13:36:47 +02:00
Florian Schmaus
b8ee8d808f
Rework Smack debugger.
...
Also fixes SMACK-728.
2017-07-28 12:01:11 +02:00
8bd3856fa1
Fix typos in filetransfer package
2017-07-06 14:01:28 +02:00
Florian Schmaus
2b11074950
Merge branch '4.2'
2017-06-17 15:55:38 +02: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
f5ef42ec56
Merge branch '4.2'
2017-06-02 13:51:56 +02:00
e86700b040
Add OMEMO support
...
This commit adds the modules smack-omemo and smack-omemo-signal.
smack-omemo is licensed under the Apache license like the rest of the smack project.
smack-omemo-signal on the other hand is licensed under the GPLv3.
Due to the fact, that smack-omemo is not of much use without smack-omemo-signal,
the OMEMO feature can currently only be used by GPLv3 compatible software.
This may change in the future, when a more permissively licensed module becomes available.
Fixes SMACK-743.
2017-06-02 13:40:10 +02:00
655cd873a3
Make sure, archiving is enabled
2017-05-29 22:32:14 +02:00
Florian Schmaus
7a5f9e6a03
Merge branch '4.2'
2017-05-25 11:25:36 +02:00
Florian Schmaus
ce1cddc722
More checkstyle whitespace related checks
2017-05-24 14:42:38 +02:00
Florian Schmaus
5f900d3713
Add PingManager.pingAsync(Jid, long)
...
and SmackFuture API.
2017-05-16 15:53:03 +02:00
Florian Schmaus
08c228ef99
Merge branch '4.2'
2017-03-20 14:57:42 +01:00
Florian Schmaus
76adf22ba1
Add missing break statement to deleteViaServiceAdministration()
...
in IntTestUtil.
2017-03-18 19:19:48 +01:00
Florian Schmaus
525feaa161
Add SynchronizationPoint.getFailureException()
2017-03-13 07:37:40 +01:00
Florian Schmaus
1a93b448db
Smack 4.2.0
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAljDKBtfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFJB7Qf6AlkwpzMqq1g18jzEBFVX/3Sk2QWivEY7t3EhGuSguan2VIfd1fL0P85Q
vLBm6Pw93haIxHXKRUKc8DINwP9yuRMvUotCN2hYVgfqfByHGhDCJLTNZ9atncL5
JToptfhdRy6kgljVZPtpXOMXKBvaO3QOuTuC5cmz8PlidsYw0yUnliPLQ36uPRWX
eaEXXbgmkjJh35WjsaafD/uM86OCqZahfvEf3e8bkPzdAayd0OKU67+v0ArA9P2E
CiRU5vfco/vt2Qo41aLLIEOjSFfVX6Xh/pXxfQvInMAxies0KRLi5vonOmfrWRmi
uIblzcYRXCSaZSgVN2yF8KzmF4pzcw==
=qETn
-----END PGP SIGNATURE-----
Merge tag '4.2.0'
Smack 4.2.0
2017-03-10 23:35:06 +01:00
Florian Schmaus
09b6608a3a
Fix and improve the HTTP File Upload implementation
...
Fix a few resource leaks. Improve the API and add an integration
test. Also add compability layer for XEP-0363: HTTP File Upload 0.2.
SMACK-747
2017-03-10 17:54:29 +01:00
Florian Schmaus
ccd386ebbc
Merge pull request #106 from annovanvliet/fixBuild
...
Make Smack buildable under windows.
2017-02-27 12:04:59 +01:00
Anno van Vliet
382d519766
Make Smack buildable under windows.
...
Specify UTF-8 as character set. Added some symbolic links to smack-integration-test for consistency sake.
2017-02-26 18:13:10 +01:00
Florian Schmaus
ca54f65b3e
Merge branch '4.2'
2017-02-11 21:02:20 +01:00
Florian Schmaus
4c646436a5
Bump "Error Prone" to 2.0.15
...
and fix a few things :)
2017-02-11 16:16:41 +01:00
Florian Schmaus
382ed9d871
Smack 4.2.0-rc2
...
-----BEGIN PGP SIGNATURE-----
iQF8BAABCgBmBQJYe7kjXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ5Nzc1MDU5RjNBMjFEQ0UxNkJFNEZCQUUy
MjM5QTdFOEY1ODUyMDUyAAoJECI5p+j1hSBSuGkH/1mU66MNR0/ywbdZ2RKcb9MK
WTHBBOuD/KaqkQOQQ5Fud+ktyahmDd9Nk4TbchIJ56PlEPqJbhnwP8txh1gU+8Zz
jpRHYYQiTEuLSblToVL3afrfd/IQnOrh7VbwkG7S1wkWmOFKCv94wlv/OgZFaICc
RHHJyJbJ0TTuavEkJ141ruNYmq/qYjUjdLmFrqhT3hv3iuiHCT1PK1787wEB0EWS
ciwkw2j/j/2i27XNQRwu7QaLsmUGk8rLnr2/AsYpmsBsjAMqMbNEQEPbIgO9MVef
7dt/GWoqHjH1opVcOw+rRz/cynMii2sSTXiqRVTEZsWlx3uYYz5eKsuiuckZcBs=
=yqh1
-----END PGP SIGNATURE-----
Merge tag '4.2.0-rc2'
Smack 4.2.0-rc2
2017-01-15 20:02:13 +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
50a8ff08e3
Re-activate FormTest integration test
2017-01-04 00:32:52 +01:00
Florian Schmaus
90a5e289f8
s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/
2017-01-03 11:35:04 +01:00
Florian Schmaus
183c605278
Bump JXMPP to 0.5.0
2017-01-02 09:40:46 +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
ca394838f0
Make sinttest (Before|After)Class methods non-static
2016-12-23 23:42:47 +01:00
Florian Schmaus
01169a956c
Log when executing (Before|After) class sinttest methods
2016-12-23 23:42:47 +01:00
Florian Schmaus
e27e416063
Fix sinttest log string: s/AfterClass/BeforeClass/
2016-12-23 23:42:47 +01:00
Florian Schmaus
814cc1fdde
Create low-level inttest accounts with test run ID
2016-12-19 18:11:19 +01:00
Florian Schmaus
8511a9e67b
Fix deadline check
...
The pattern
if (now > deadline) break;
wait(deadline - now);
is insufficient in case "now == deadline" because the result would be
wait() being called with 0, which would mean "wait until
notified". Thus, the timeout would become infinite.
2016-12-19 16:29:16 +01:00
Florian Schmaus
cfe5c2233d
Fix integration test using XEP-0133 credentials
...
for the created connections.
2016-12-19 14:13:53 +01:00
Florian Schmaus
274e5630c4
Add support for XEP-0133: Service Administration
...
also extend Smack's integration test framework to use XEP-0133 as a
means for of throw away account creation.
Fixes SMACK-742
2016-12-04 21:42:50 +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
8810f17460
Allow empty username/passwords in integration test
2016-07-31 14:50:59 +02:00
Florian Schmaus
aeb385a022
Apply refinements and fixes to the MAM code
...
SMACK-625.
2016-07-23 15:45:45 +02:00
Fernando Ramirez
189cac072b
Implement Message Archive Management (MAM) XEP-0313
...
Fixes SMACK-625
2016-07-23 12:45:14 +02:00
Florian Schmaus
b91978dcc4
Add (partial) support for IoT XEPs
...
That is XEP-0323, -0324, -0325, and -0347.
SMACK-727.
2016-07-21 08:51:11 +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
4248fbbb89
Use lowercase chars in integration testRunId
2016-06-29 08:08:13 +02:00
Florian Schmaus
4c18814b12
sinttest: Throw exception if service is not set
2016-06-08 23:05:44 +02:00
Florian Schmaus
92968e1630
Use java-pinning-java7 for the integration tests
...
to avoid "Certificates does not conform to algorithm constraints" when
using certain cert chains (e.g CACert).
2016-04-14 22:59:22 +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
d728204890
Add errorprone check and fix found errors
...
Adds gradle-errorprone-plugin 0.0.8, requires Gradle 2.6.
2015-09-13 18:12:33 +02:00
Florian Schmaus
7b1b20a13c
Use Localpart in AccountManager
2015-08-20 19:01:33 +02:00
Florian Schmaus
d49fadd466
Log integeration testType also
2015-06-13 19:23:36 +02:00
Florian Schmaus
ffea35282c
Don't make NotConnectedException fatal
...
If such an exception ever happes when running a integration, then the
framework should not abort, but instead log the exception so that other
information is also logged.
2015-06-09 22:16:41 +02:00
Florian Schmaus
b9782aa6bc
Handle junit's AssertionError in integration tests
2015-06-09 22:16:23 +02:00
Florian Schmaus
bad52fad21
Deprecate setServiceName in favor of setXmppDomain
2015-06-08 14:42:05 +02: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
c125a3b055
Bump jxmpp to 0.5.0-alpha4
2015-05-27 19:29:51 +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
f369a009ac
Rename 'serviceName' to 'xmppServiceDomain'
...
Also use 'null' as default value for the resource, to enforce server
generated resources.
Fixes Smack-665
2015-05-19 09:26:59 +02:00
Florian Schmaus
001e824fb9
Improve PubSub API
...
Use Manager pattern for PubSubManager.
Also improve the API of ServiceDiscoverManager.
2015-05-12 17:56:06 +02:00
Florian Schmaus
51700400bc
Remove never-thrown exception declarations
2015-04-25 22:46:56 +02:00
Florian Schmaus
c7454ce968
Remove unnecessary cast
2015-04-24 21:33:23 +02:00
Florian Schmaus
221b81a627
Delete accounts created by LowLevelIntegrationTest performCheck()
...
those where created but not deleted.
2015-04-24 21:33:20 +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
Florian Schmaus
0efdc4018f
Use XMPPConnection.toString() in SmackIntegrationTestFramework
2015-04-22 22:31:58 +02:00
Florian Schmaus
7c3f4b7129
Add AbstractXMPPConnection.toString()
2015-04-22 09:28:30 +02:00
Florian Schmaus
bfb3f5cd95
Retry to delete integration test accounts
...
in the the connection was terminated because of an error, try to
re-establish the connection when trying to delete the account.
2015-04-22 09:23:22 +02:00
Florian Schmaus
f274581c27
Add MucBookmarkAutojoinManager
...
Also add MucConfigFormManager and improve the MUC API (SMACK-648). Bump
to jxmpp 0.5.0-alpha3.
Improve and extend PrivateDataManager and BookmarkManager.
2015-04-21 19:31:10 +02:00
Florian Schmaus
b4694ec152
Add FinalClass checkstyle check
...
And mark affected classes final.
2015-04-06 10:45:12 +02:00
Florian Schmaus
38dc59eb8e
Fix assert in TestResult
...
sometimes the unit test where failing because the assert '>' didn't
hold. Use '>=' instead now.
2015-04-05 10:49:14 +02:00
Florian Schmaus
328da5a7e2
Throw IAE on wrong signature (after|before)Class methods
...
as otherwhise the reflective invokation will eventually throw an
Exception like
Exception in thread "main" java.lang.NullPointerException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.igniterealtime.smack.inttest.SmackIntegrationTestFramework.runTests(SmackIntegrationTestFramework.java:412)
at org.igniterealtime.smack.inttest.SmackIntegrationTestFramework.run(SmackIntegrationTestFramework.java:163)
at org.igniterealtime.smack.inttest.SmackIntegrationTestFramework.main(SmackIntegrationTestFramework.java:89)
:smack-integration-test:run FAILED
2015-04-04 17:38:00 +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
7cefe63175
Don't require a properties file
...
when running the integration tests.
2015-03-23 21:12:13 +01:00
Florian Schmaus
b8f046706b
Add Integration Test Framework
...
and resurrect a few integration tests.
2015-03-18 11:09:56 +01:00