diff --git a/build.gradle b/build.gradle index b0a81ba9f..6eeea45c5 100644 --- a/build.gradle +++ b/build.gradle @@ -23,8 +23,8 @@ apply plugin: 'org.kordamp.gradle.markdown' apply from: 'version.gradle' allprojects { + apply plugin: 'java' apply plugin: 'java-library' - apply plugin: 'java-test-fixtures' apply plugin: 'eclipse' apply plugin: 'idea' apply plugin: 'jacoco' @@ -123,12 +123,15 @@ allprojects { androidJavadocOffline = { getAndroidJavadocOffline() } junit4Projects = [ ':smack-core', + ':smack-extensions', ':smack-im', + ':smack-integration-test', ':smack-omemo', ':smack-omemo-signal', ':smack-openpgp', ].collect { project(it) } junitVersion = '5.6.0' + powerMockVersion = '2.0.2' commonsIoVersion = '2.6' if (project.hasProperty("useSonatype")) { useSonatype = project.getProperty("useSonatype").toBoolean() @@ -264,16 +267,10 @@ allprojects { } dependencies { - testFixturesApi "org.junit.jupiter:junit-jupiter-api:$junitVersion" + testImplementation "org.junit.jupiter:junit-jupiter-api:$junitVersion" testImplementation "org.junit.jupiter:junit-jupiter-params:$junitVersion" testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitVersion" - // The smack-extensions subproject uses mockito in its fest - // fixtures, and we want to have mockito also available in - // test, so we use API here. - testFixturesApi "org.mockito:mockito-core:3.3.3" - testImplementation 'com.jamesmurty.utils:java-xmlbuilder:1.2' - errorprone 'com.google.errorprone:error_prone_core:2.3.3' errorproneJavac('com.google.errorprone:javac:9+181-r4173-1') } @@ -286,6 +283,9 @@ allprojects { configure (junit4Projects) { dependencies { testImplementation "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.powermock:powermock-module-junit4:$powerMockVersion" + testImplementation "org.powermock:powermock-module-junit4-rule:$powerMockVersion" + testImplementation "org.powermock:powermock-api-mockito2:$powerMockVersion" } } diff --git a/config/checkstyle/suppressions.xml b/config/checkstyle/suppressions.xml index 2a22f2881..f638dbbf1 100644 --- a/config/checkstyle/suppressions.xml +++ b/config/checkstyle/suppressions.xml @@ -9,5 +9,5 @@ it disabled until gradle uses a checkstyle version where this is fixed - + diff --git a/smack-core/build.gradle b/smack-core/build.gradle index acbbba065..d9da388b1 100644 --- a/smack-core/build.gradle +++ b/smack-core/build.gradle @@ -10,19 +10,10 @@ dependencies { compile "org.jxmpp:jxmpp-core:$jxmppVersion" compile "org.jxmpp:jxmpp-jid:$jxmppVersion" compile "org.minidns:minidns-core:$miniDnsVersion" - - testFixturesImplementation project(':smack-xmlparser-stax') - testFixturesImplementation project(':smack-xmlparser-xpp3') - - // Bouncy Castle is setup by SmackTestSuite. We deliberately use - // 'implementation' here since there is no need to shadow it - // outside of the fixtures compilation classpath. That is, no test - // should ever setup Bouncy Castle as security provider explicitly. - testFixturesImplementation 'org.bouncycastle:bcprov-jdk15on:1.64' - testFixturesImplementation 'org.apache.commons:commons-lang3:3.10' - - testFixturesApi "org.jxmpp:jxmpp-jid:$jxmppVersion:tests" - testFixturesApi "org.xmlunit:xmlunit-core:$xmlUnitVersion" + testCompile project(':smack-xmlparser-stax') + testCompile project(':smack-xmlparser-xpp3') + testCompile "org.jxmpp:jxmpp-jid:$jxmppVersion:tests" + testCompile "org.xmlunit:xmlunit-core:$xmlUnitVersion" // Explictily add assertj-core which is a dependency of // xmlunit-assertj, but gradle fails to resolves it with: // Execution failed for task ':smack-core:compileTestJava'. @@ -30,9 +21,12 @@ dependencies { // > Could not find org.assertj:assertj-core:. // Required by: // project :smack-core > org.xmlunit:xmlunit-assertj:2.6.2 - testFixturesApi "org.assertj:assertj-core:3.11.1" - testFixturesApi "org.xmlunit:xmlunit-assertj:$xmlUnitVersion" - testFixturesApi 'org.hamcrest:hamcrest-library:2.2' + testCompile "org.assertj:assertj-core:3.11.1" + testCompile "org.xmlunit:xmlunit-assertj:$xmlUnitVersion" + testCompile 'com.jamesmurty.utils:java-xmlbuilder:1.2' + testCompile 'org.bouncycastle:bcprov-jdk15on:1.64' + testCompile 'com.google.guava:guava:28.2-jre' + testCompile 'org.jgrapht:jgrapht-io:1.3.1' } class CreateFileTask extends DefaultTask { diff --git a/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java b/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java index 66ebb1916..3c20fce8b 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java @@ -2154,7 +2154,6 @@ public abstract class AbstractXMPPConnection implements XMPPConnection { CACHED_EXECUTOR_SERVICE.execute(runnable); } - @SuppressWarnings("static-method") protected final SmackReactor getReactor() { return SMACK_REACTOR; } diff --git a/smack-core/src/main/java/org/jivesoftware/smack/packet/Stanza.java b/smack-core/src/main/java/org/jivesoftware/smack/packet/Stanza.java index bedcad481..833ff041a 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/packet/Stanza.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/packet/Stanza.java @@ -338,7 +338,7 @@ public abstract class Stanza implements StanzaView, TopLevelStreamElement { /** * Returns the first extension of this stanza that has the given namespace. *

- * When possible, use {@link #getExtensionElement(String, String)} instead. + * When possible, use {@link #getExtension(String, String)} instead. *

* * @param namespace the namespace of the extension that is desired. @@ -350,18 +350,15 @@ public abstract class Stanza implements StanzaView, TopLevelStreamElement { /** * Returns the first extension that matches the specified element name and - * namespace, or null if it doesn't exist. Extensions are + * namespace, or null if it doesn't exist. If the provided elementName is null, + * only the namespace is matched. Extensions are * are arbitrary XML elements in standard XMPP stanzas. - *

- * Note that it is recommended to use {@link #getExtension(Class)} instead of this method. - * The {@link #getExtension(Class)} is more robust, as it is type safe. - *

* - * @param elementName the XML element name of the extension. + * @param elementName the XML element name of the extension. (May be null) * @param namespace the XML element namespace of the extension. * @return the extension, or null if it doesn't exist. */ - public final ExtensionElement getExtensionElement(String elementName, String namespace) { + public final ExtensionElement getExtension(String elementName, String namespace) { if (namespace == null) { return null; } @@ -373,22 +370,6 @@ public abstract class Stanza implements StanzaView, TopLevelStreamElement { return packetExtension; } - /** - * This method is deprecated. Use preferably {@link #getExtension(Class)} or {@link #getExtensionElement(String, String)}. - * - * @param the type to cast to. - * @param elementName the XML element name of the extension. (May be null) - * @param namespace the XML element namespace of the extension. - * @return the extension, or null if it doesn't exist. - * @deprecated use {@link #getExtension(Class)} or {@link #getExtensionElement(String, String)} isntead. - */ - // TODO: Remove in Smack 4.5. - @SuppressWarnings("unchecked") - @Deprecated - public final E getExtension(String elementName, String namespace) { - return (E) getExtensionElement(elementName, namespace); - } - @Override public final ExtensionElement getExtension(QName qname) { synchronized (extensionElements) { diff --git a/smack-core/src/main/java/org/jivesoftware/smack/packet/StanzaView.java b/smack-core/src/main/java/org/jivesoftware/smack/packet/StanzaView.java index 9ee3b6933..981898965 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/packet/StanzaView.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/packet/StanzaView.java @@ -87,14 +87,10 @@ public interface StanzaView extends XmlLangElement { return false; } + @SuppressWarnings("unchecked") default E getExtension(Class extensionElementClass) { QName qname = XmppElementUtil.getQNameFor(extensionElementClass); - ExtensionElement extensionElement = getExtension(qname); - if (!extensionElementClass.isInstance(extensionElement)) { - return null; - } - - return extensionElementClass.cast(extensionElement); + return (E) getExtension(qname); } /** diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/DummyConnection.java b/smack-core/src/test/java/org/jivesoftware/smack/DummyConnection.java similarity index 99% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/DummyConnection.java rename to smack-core/src/test/java/org/jivesoftware/smack/DummyConnection.java index 135fd79d0..3dc30cc76 100644 --- a/smack-core/src/testFixtures/java/org/jivesoftware/smack/DummyConnection.java +++ b/smack-core/src/test/java/org/jivesoftware/smack/DummyConnection.java @@ -14,6 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.jivesoftware.smack; import java.io.IOException; diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/ThreadedDummyConnection.java b/smack-core/src/test/java/org/jivesoftware/smack/ThreadedDummyConnection.java similarity index 100% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/ThreadedDummyConnection.java rename to smack-core/src/test/java/org/jivesoftware/smack/ThreadedDummyConnection.java diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/sasl/AbstractSaslTest.java b/smack-core/src/test/java/org/jivesoftware/smack/sasl/AbstractSaslTest.java similarity index 100% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/sasl/AbstractSaslTest.java rename to smack-core/src/test/java/org/jivesoftware/smack/sasl/AbstractSaslTest.java diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/sasl/DigestMd5SaslTest.java b/smack-core/src/test/java/org/jivesoftware/smack/sasl/DigestMd5SaslTest.java similarity index 100% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/sasl/DigestMd5SaslTest.java rename to smack-core/src/test/java/org/jivesoftware/smack/sasl/DigestMd5SaslTest.java diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/CharSequenceEquals.java b/smack-core/src/test/java/org/jivesoftware/smack/test/util/CharSequenceEquals.java similarity index 94% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/CharSequenceEquals.java rename to smack-core/src/test/java/org/jivesoftware/smack/test/util/CharSequenceEquals.java index cefc3e919..479ba39e7 100644 --- a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/CharSequenceEquals.java +++ b/smack-core/src/test/java/org/jivesoftware/smack/test/util/CharSequenceEquals.java @@ -1,6 +1,6 @@ /** * - * Copyright © 2014-2020 Florian Schmaus + * Copyright © 2014 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.jivesoftware.smack.test.util; import org.hamcrest.Description; +import org.hamcrest.Factory; import org.hamcrest.Matcher; import org.hamcrest.TypeSafeMatcher; @@ -39,6 +40,7 @@ public class CharSequenceEquals extends TypeSafeMatcher { return charSequenceString.equals(itemString); } + @Factory public static Matcher equalsCharSequence(CharSequence charSequence) { return new CharSequenceEquals(charSequence); } diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/SmackTestSuite.java b/smack-core/src/test/java/org/jivesoftware/smack/test/util/SmackTestSuite.java similarity index 100% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/SmackTestSuite.java rename to smack-core/src/test/java/org/jivesoftware/smack/test/util/SmackTestSuite.java diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/SmackTestUtil.java b/smack-core/src/test/java/org/jivesoftware/smack/test/util/SmackTestUtil.java similarity index 100% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/SmackTestUtil.java rename to smack-core/src/test/java/org/jivesoftware/smack/test/util/SmackTestUtil.java diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/TestUtils.java b/smack-core/src/test/java/org/jivesoftware/smack/test/util/TestUtils.java similarity index 100% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/TestUtils.java rename to smack-core/src/test/java/org/jivesoftware/smack/test/util/TestUtils.java diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/WaitForPacketListener.java b/smack-core/src/test/java/org/jivesoftware/smack/test/util/WaitForPacketListener.java similarity index 100% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/WaitForPacketListener.java rename to smack-core/src/test/java/org/jivesoftware/smack/test/util/WaitForPacketListener.java diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/XmlUnitUtils.java b/smack-core/src/test/java/org/jivesoftware/smack/test/util/XmlUnitUtils.java similarity index 100% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/XmlUnitUtils.java rename to smack-core/src/test/java/org/jivesoftware/smack/test/util/XmlUnitUtils.java diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/MemoryLeakTestUtil.java b/smack-core/src/test/java/org/jivesoftware/smack/util/MemoryLeakTestUtil.java similarity index 96% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/MemoryLeakTestUtil.java rename to smack-core/src/test/java/org/jivesoftware/smack/util/MemoryLeakTestUtil.java index 6746e8f13..1b453979f 100644 --- a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/MemoryLeakTestUtil.java +++ b/smack-core/src/test/java/org/jivesoftware/smack/util/MemoryLeakTestUtil.java @@ -1,6 +1,6 @@ /** * - * Copyright 2019-2020 Florian Schmaus + * Copyright 2019 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,9 +14,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.jivesoftware.smack.test.util; +package org.jivesoftware.smack.util; -import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.Assert.assertNull; import static org.junit.jupiter.api.Assertions.fail; import java.lang.ref.PhantomReference; @@ -129,7 +129,7 @@ public class MemoryLeakTestUtil { } Reference reference = referenceQueue.poll(); - assertNull(reference, "Reference queue is not empty when it should be"); + assertNull("Reference queue is not empty when it should be", reference); } private static void assertReferencesQueueIsEmpty(ReferenceQueue referenceQueue) { diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/NetworkUtil.java b/smack-core/src/test/java/org/jivesoftware/smack/util/NetworkUtil.java similarity index 97% rename from smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/NetworkUtil.java rename to smack-core/src/test/java/org/jivesoftware/smack/util/NetworkUtil.java index 5b38d9ad0..ac58e8790 100644 --- a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/NetworkUtil.java +++ b/smack-core/src/test/java/org/jivesoftware/smack/util/NetworkUtil.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.jivesoftware.smack.test.util; +package org.jivesoftware.smack.util; import java.io.IOException; import java.net.BindException; diff --git a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/Whitebox.java b/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/Whitebox.java deleted file mode 100644 index 6d0cf5814..000000000 --- a/smack-core/src/testFixtures/java/org/jivesoftware/smack/test/util/Whitebox.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * - * Copyright 2020 Florian Schmaus - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jivesoftware.smack.test.util; - -import java.lang.reflect.Field; - -import org.apache.commons.lang3.reflect.FieldUtils; - -public class Whitebox { - - public static T getInternalState(Object object, String fieldName, Class fieldType) { - Class objectClass = object.getClass(); - - Field field = FieldUtils.getField(objectClass, fieldName, true); - - Object res; - try { - res = field.get(object); - } catch (IllegalArgumentException | IllegalAccessException e) { - throw new AssertionError(e); - } - - if (!fieldType.isInstance(res)) { - throw new AssertionError(res + " is not a (sub)type of " + fieldType); - } - - return fieldType.cast(res); - } - -} diff --git a/smack-debug-slf4j/build.gradle b/smack-debug-slf4j/build.gradle index fe3456341..bf1477b6e 100644 --- a/smack-debug-slf4j/build.gradle +++ b/smack-debug-slf4j/build.gradle @@ -6,4 +6,5 @@ Connect your favourite slf4j backend of choice to get output inside of it""" dependencies { compile project(':smack-core') compile 'org.slf4j:slf4j-api:[1.7,1.8)' + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-debug/build.gradle b/smack-debug/build.gradle index 62324392c..3cc23ac14 100644 --- a/smack-debug/build.gradle +++ b/smack-debug/build.gradle @@ -4,4 +4,5 @@ Inspect the exchanged XMPP stanzas.""" dependencies { compile project(':smack-core') + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-experimental/build.gradle b/smack-experimental/build.gradle index e3b2d3771..f64702d10 100644 --- a/smack-experimental/build.gradle +++ b/smack-experimental/build.gradle @@ -7,8 +7,8 @@ between patch versions.""" dependencies { compile project(':smack-core') compile project(':smack-extensions') + testCompile project(path: ":smack-core", configuration: "testRuntime") + testCompile project(path: ":smack-extensions", configuration: "testRuntime") compile "org.hsluv:hsluv:0.2" - - testFixturesApi(testFixtures(project(":smack-extensions"))) } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/carbons/packet/CarbonExtension.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/carbons/packet/CarbonExtension.java index 960922d07..6fb49ce39 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/carbons/packet/CarbonExtension.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/carbons/packet/CarbonExtension.java @@ -114,9 +114,9 @@ public class CarbonExtension implements ExtensionElement { * @return a Carbon if available, null otherwise. */ public static CarbonExtension from(Message msg) { - CarbonExtension cc = (CarbonExtension) msg.getExtensionElement(Direction.received.name(), NAMESPACE); + CarbonExtension cc = (CarbonExtension) msg.getExtension(Direction.received.name(), NAMESPACE); if (cc == null) - cc = (CarbonExtension) msg.getExtensionElement(Direction.sent.name(), NAMESPACE); + cc = (CarbonExtension) msg.getExtension(Direction.sent.name(), NAMESPACE); return cc; } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/dox/DnsOverXmppManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/dox/DnsOverXmppManager.java index 92bd0b555..1ffba5597 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/dox/DnsOverXmppManager.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/dox/DnsOverXmppManager.java @@ -60,7 +60,7 @@ public final class DnsOverXmppManager extends Manager { private static DnsOverXmppResolver defaultResolver; - public static void setDefaultDnsOverXmppResolver(DnsOverXmppResolver resolver) { + public void setDefaultDnsOverXmppResolver(DnsOverXmppResolver resolver) { defaultResolver = resolver; } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoCopyHint.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoCopyHint.java index a29ae0473..393fe55fe 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoCopyHint.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoCopyHint.java @@ -48,7 +48,7 @@ public final class NoCopyHint extends MessageProcessingHint { } public static NoCopyHint from(Message message) { - return (NoCopyHint) message.getExtensionElement(ELEMENT, NAMESPACE); + return (NoCopyHint) message.getExtension(ELEMENT, NAMESPACE); } public static boolean hasHint(Message message) { diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoPermanentStoreHint.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoPermanentStoreHint.java index 4b0bc7100..63aea7699 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoPermanentStoreHint.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoPermanentStoreHint.java @@ -48,7 +48,7 @@ public final class NoPermanentStoreHint extends MessageProcessingHint { } public static NoPermanentStoreHint from(Message message) { - return (NoPermanentStoreHint) message.getExtensionElement(ELEMENT, NAMESPACE); + return (NoPermanentStoreHint) message.getExtension(ELEMENT, NAMESPACE); } public static boolean hasHint(Message message) { diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoStoreHint.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoStoreHint.java index b6b9e2a25..72bc4ff44 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoStoreHint.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/hints/element/NoStoreHint.java @@ -48,7 +48,7 @@ public final class NoStoreHint extends MessageProcessingHint { } public static NoStoreHint from(Message message) { - return (NoStoreHint) message.getExtensionElement(ELEMENT, NAMESPACE); + return (NoStoreHint) message.getExtension(ELEMENT, NAMESPACE); } public static boolean hasHint(Message message) { diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadManager.java index eadbaff94..2977f8601 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadManager.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadManager.java @@ -46,7 +46,6 @@ import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.XMPPConnectionRegistry; import org.jivesoftware.smack.XMPPException; import org.jivesoftware.smack.XMPPException.XMPPErrorException; - import org.jivesoftware.smackx.disco.ServiceDiscoveryManager; import org.jivesoftware.smackx.disco.packet.DiscoverInfo; import org.jivesoftware.smackx.httpfileupload.UploadService.Version; diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/jingle_filetransfer/provider/JingleFileTransferProvider.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/jingle_filetransfer/provider/JingleFileTransferProvider.java index ea590d825..1eba4075a 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/jingle_filetransfer/provider/JingleFileTransferProvider.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/jingle_filetransfer/provider/JingleFileTransferProvider.java @@ -28,7 +28,6 @@ import org.jivesoftware.smack.xml.XmlPullParserException; import org.jivesoftware.smackx.hashes.element.HashElement; import org.jivesoftware.smackx.hashes.provider.HashElementProvider; -import org.jivesoftware.smackx.jingle.element.JingleContentDescription; import org.jivesoftware.smackx.jingle.element.JingleContentDescriptionChildElement; import org.jivesoftware.smackx.jingle.provider.JingleContentDescriptionProvider; import org.jivesoftware.smackx.jingle_filetransfer.element.JingleFileTransfer; @@ -102,7 +101,7 @@ public class JingleFileTransferProvider builder = JingleFileTransferChild.getBuilder(); break; - case JingleContentDescription.ELEMENT: + case JingleFileTransfer.ELEMENT: return new JingleFileTransfer(payloads); } break; diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/MamManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/MamManager.java index 9bbbe301e..f3477bdd4 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/MamManager.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/MamManager.java @@ -43,7 +43,6 @@ import org.jivesoftware.smack.packet.Message; import org.jivesoftware.smack.packet.Stanza; import org.jivesoftware.smack.util.Objects; import org.jivesoftware.smack.util.StringUtils; - import org.jivesoftware.smackx.commands.AdHocCommandManager; import org.jivesoftware.smackx.commands.RemoteCommand; import org.jivesoftware.smackx.disco.ServiceDiscoveryManager; diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/element/MamElements.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/element/MamElements.java index 034245a5a..540ffe774 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/element/MamElements.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/element/MamElements.java @@ -140,7 +140,7 @@ public class MamElements { } public static MamResultExtension from(Message message) { - return (MamResultExtension) message.getExtensionElement(ELEMENT, NAMESPACE); + return (MamResultExtension) message.getExtension(ELEMENT, NAMESPACE); } } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/message_markup/provider/MarkupElementProvider.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/message_markup/provider/MarkupElementProvider.java index 58210c59a..c7aae6ce1 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/message_markup/provider/MarkupElementProvider.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/message_markup/provider/MarkupElementProvider.java @@ -32,7 +32,6 @@ import org.jivesoftware.smackx.message_markup.element.BlockQuoteElement; import org.jivesoftware.smackx.message_markup.element.CodeBlockElement; import org.jivesoftware.smackx.message_markup.element.ListElement; import org.jivesoftware.smackx.message_markup.element.MarkupElement; -import org.jivesoftware.smackx.message_markup.element.MarkupElement.MarkupChildElement; import org.jivesoftware.smackx.message_markup.element.SpanElement; public class MarkupElementProvider extends ExtensionElementProvider { @@ -56,26 +55,26 @@ public class MarkupElementProvider extends ExtensionElementProvider(); - spanStart = ParserUtils.getIntegerAttributeOrThrow(parser, MarkupChildElement.ATTR_START, + spanStart = ParserUtils.getIntegerAttributeOrThrow(parser, SpanElement.ATTR_START, "Message Markup SpanElement MUST contain a 'start' attribute."); - spanEnd = ParserUtils.getIntegerAttributeOrThrow(parser, MarkupChildElement.ATTR_END, + spanEnd = ParserUtils.getIntegerAttributeOrThrow(parser, SpanElement.ATTR_END, "Message Markup SpanElement MUST contain a 'end' attribute."); break; @@ -93,14 +92,14 @@ public class MarkupElementProvider extends ExtensionElementProvider(); - listStart = ParserUtils.getIntegerAttributeOrThrow(parser, MarkupChildElement.ATTR_START, + listStart = ParserUtils.getIntegerAttributeOrThrow(parser, ListElement.ATTR_START, "Message Markup ListElement MUST contain a 'start' attribute."); - listEnd = ParserUtils.getIntegerAttributeOrThrow(parser, MarkupChildElement.ATTR_END, + listEnd = ParserUtils.getIntegerAttributeOrThrow(parser, ListElement.ATTR_END, "Message Markup ListElement MUST contain a 'end' attribute."); break; case ListElement.ELEM_LI: - start = ParserUtils.getIntegerAttributeOrThrow(parser, MarkupChildElement.ATTR_START, + start = ParserUtils.getIntegerAttributeOrThrow(parser, ListElement.ATTR_START, "Message Markup ListElement 'li' MUST contain a 'start' attribute."); lis.add(new ListElement.ListEntryElement(start)); break; diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLight.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLight.java index ba001f38c..6ada795b3 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLight.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLight.java @@ -147,6 +147,7 @@ public class MultiUserChatLight { * for the newly created chat. * @return new Chat for sending private messages to a given room occupant. */ + @SuppressWarnings("deprecation") @Deprecated // Do not re-use Chat API, which was designed for XMPP-IM 1:1 chats and not MUClight private chats. public org.jivesoftware.smack.chat.Chat createPrivateChat(EntityJid occupant, ChatMessageListener listener) { diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightElements.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightElements.java index 33861b29e..ba14e5f62 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightElements.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightElements.java @@ -233,7 +233,7 @@ public abstract class MUCLightElements { } public static ConfigurationsChangeExtension from(Message message) { - return (ConfigurationsChangeExtension) message.getExtensionElement(ConfigurationsChangeExtension.ELEMENT, ConfigurationsChangeExtension.NAMESPACE); + return (ConfigurationsChangeExtension) message.getExtension(ConfigurationsChangeExtension.ELEMENT, ConfigurationsChangeExtension.NAMESPACE); } } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/element/OriginIdElement.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/element/OriginIdElement.java index 585be47a6..10282b70b 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/element/OriginIdElement.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/element/OriginIdElement.java @@ -82,7 +82,7 @@ public class OriginIdElement extends StableAndUniqueIdElement { * @return origin-id element */ public static OriginIdElement getOriginId(Message message) { - return (OriginIdElement) message.getExtensionElement(OriginIdElement.ELEMENT, StableUniqueStanzaIdManager.NAMESPACE); + return (OriginIdElement) message.getExtension(OriginIdElement.ELEMENT, StableUniqueStanzaIdManager.NAMESPACE); } @Override diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/provider/OriginIdProvider.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/provider/OriginIdProvider.java index 6b8a851c5..166c7d630 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/provider/OriginIdProvider.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/provider/OriginIdProvider.java @@ -21,7 +21,6 @@ import org.jivesoftware.smack.provider.ExtensionElementProvider; import org.jivesoftware.smack.xml.XmlPullParser; import org.jivesoftware.smackx.sid.element.OriginIdElement; -import org.jivesoftware.smackx.sid.element.StableAndUniqueIdElement; public class OriginIdProvider extends ExtensionElementProvider { @@ -33,6 +32,6 @@ public class OriginIdProvider extends ExtensionElementProvider @Override public OriginIdElement parse(XmlPullParser parser, int initialDepth, XmlEnvironment xmlEnvironment) { - return new OriginIdElement(parser.getAttributeValue(null, StableAndUniqueIdElement.ATTR_ID)); + return new OriginIdElement(parser.getAttributeValue(null, OriginIdElement.ATTR_ID)); } } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/provider/StanzaIdProvider.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/provider/StanzaIdProvider.java index 21d451a76..a45d34289 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/provider/StanzaIdProvider.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/sid/provider/StanzaIdProvider.java @@ -20,7 +20,6 @@ import org.jivesoftware.smack.packet.XmlEnvironment; import org.jivesoftware.smack.provider.ExtensionElementProvider; import org.jivesoftware.smack.xml.XmlPullParser; -import org.jivesoftware.smackx.sid.element.StableAndUniqueIdElement; import org.jivesoftware.smackx.sid.element.StanzaIdElement; public class StanzaIdProvider extends ExtensionElementProvider { @@ -29,7 +28,7 @@ public class StanzaIdProvider extends ExtensionElementProvider @Override public StanzaIdElement parse(XmlPullParser parser, int initialDepth, XmlEnvironment xmlEnvironment) { - String id = parser.getAttributeValue(null, StableAndUniqueIdElement.ATTR_ID); + String id = parser.getAttributeValue(null, StanzaIdElement.ATTR_ID); String by = parser.getAttributeValue(null, StanzaIdElement.ATTR_BY); return new StanzaIdElement(id, by); } diff --git a/smack-experimental/src/test/java/org/jivesoftware/smackx/hashes/HashTest.java b/smack-experimental/src/test/java/org/jivesoftware/smackx/hashes/HashTest.java index 355f1a45a..91a9852e7 100644 --- a/smack-experimental/src/test/java/org/jivesoftware/smackx/hashes/HashTest.java +++ b/smack-experimental/src/test/java/org/jivesoftware/smackx/hashes/HashTest.java @@ -18,9 +18,12 @@ package org.jivesoftware.smackx.hashes; import static org.junit.jupiter.api.Assertions.assertEquals; +import java.security.Security; + import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.StringUtils; +import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.junit.jupiter.api.Test; /** @@ -30,6 +33,10 @@ import org.junit.jupiter.api.Test; */ public class HashTest extends SmackTestSuite { + static { + Security.addProvider(new BouncyCastleProvider()); + } + private static final String testString = "Hello World!"; private static final String md5sum = "ed076287532e86365e841e92bfc50d8c"; private static final String sha1sum = "2ef7bde608ce5404e97d5f042f95f89f1c232871"; diff --git a/smack-experimental/src/test/java/org/jivesoftware/smackx/mam/MamTest.java b/smack-experimental/src/test/java/org/jivesoftware/smackx/mam/MamTest.java index 6dd2f8e73..9c79c34e3 100644 --- a/smack-experimental/src/test/java/org/jivesoftware/smackx/mam/MamTest.java +++ b/smack-experimental/src/test/java/org/jivesoftware/smackx/mam/MamTest.java @@ -21,13 +21,13 @@ import java.lang.reflect.Method; import org.jivesoftware.smack.DummyConnection; import org.jivesoftware.smack.XMPPConnection; -import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.xdata.packet.DataForm; import org.junit.jupiter.api.BeforeAll; -public class MamTest extends SmackTestSuite { +public class MamTest extends InitExtensions { protected static XMPPConnection connection; protected static String queryId; diff --git a/smack-experimental/src/test/java/org/jivesoftware/smackx/spoiler/SpoilerTest.java b/smack-experimental/src/test/java/org/jivesoftware/smackx/spoiler/SpoilerTest.java index 165c4be40..33104f575 100644 --- a/smack-experimental/src/test/java/org/jivesoftware/smackx/spoiler/SpoilerTest.java +++ b/smack-experimental/src/test/java/org/jivesoftware/smackx/spoiler/SpoilerTest.java @@ -44,7 +44,7 @@ public class SpoilerTest extends SmackTestSuite { Message message = StanzaBuilder.buildMessage().build(); SpoilerElement.addSpoiler(message); - SpoilerElement empty = (SpoilerElement) message.getExtensionElement(SpoilerElement.ELEMENT, SpoilerManager.NAMESPACE_0); + SpoilerElement empty = (SpoilerElement) message.getExtension(SpoilerElement.ELEMENT, SpoilerManager.NAMESPACE_0); assertNull(empty.getHint()); assertNull(empty.getLanguage()); @@ -63,7 +63,7 @@ public class SpoilerTest extends SmackTestSuite { Message message = StanzaBuilder.buildMessage().build(); SpoilerElement.addSpoiler(message, "Love story end"); - SpoilerElement withHint = (SpoilerElement) message.getExtensionElement(SpoilerElement.ELEMENT, SpoilerManager.NAMESPACE_0); + SpoilerElement withHint = (SpoilerElement) message.getExtension(SpoilerElement.ELEMENT, SpoilerManager.NAMESPACE_0); assertEquals("Love story end", withHint.getHint()); assertNull(withHint.getLanguage()); @@ -83,7 +83,7 @@ public class SpoilerTest extends SmackTestSuite { Message message = StanzaBuilder.buildMessage().build(); SpoilerElement.addSpoiler(message, "de", "Der Kuchen ist eine Lüge!"); - SpoilerElement i18nHint = (SpoilerElement) message.getExtensionElement(SpoilerElement.ELEMENT, SpoilerManager.NAMESPACE_0); + SpoilerElement i18nHint = (SpoilerElement) message.getExtension(SpoilerElement.ELEMENT, SpoilerManager.NAMESPACE_0); assertEquals("Der Kuchen ist eine Lüge!", i18nHint.getHint()); assertEquals("de", i18nHint.getLanguage()); diff --git a/smack-extensions/build.gradle b/smack-extensions/build.gradle index 6f56016ce..0083169ae 100644 --- a/smack-extensions/build.gradle +++ b/smack-extensions/build.gradle @@ -10,6 +10,5 @@ dependencies { // Some implementations need APIs provided by smack-im, // e.g. message delivery receipts the roster compile project(':smack-im') - testFixturesApi(testFixtures(project(":smack-core"))) - //testCompile project(path: ":smack-core", configuration: "testRuntime") + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bob/element/BoBExtension.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bob/element/BoBExtension.java index 442474fa1..a0ee8af9e 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bob/element/BoBExtension.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bob/element/BoBExtension.java @@ -91,7 +91,7 @@ public class BoBExtension extends XHTMLExtension { } public static BoBExtension from(Message message) { - return (BoBExtension) message.getExtensionElement(ELEMENT, NAMESPACE); + return (BoBExtension) message.getExtension(ELEMENT, NAMESPACE); } } diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationListener.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationListener.java deleted file mode 100644 index 8b1259ec7..000000000 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationListener.java +++ /dev/null @@ -1,26 +0,0 @@ -/** - * - * Copyright 2020 Aditya Borikar. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jivesoftware.smackx.geoloc; - -import org.jivesoftware.smack.packet.Message; -import org.jivesoftware.smackx.geoloc.packet.GeoLocation; - -import org.jxmpp.jid.BareJid; - -public interface GeoLocationListener { - void onGeoLocationUpdated(BareJid jid, GeoLocation geoLocation, Message message); -} diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java index 3dbee6589..a12d975d1 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java @@ -16,13 +16,9 @@ */ package org.jivesoftware.smackx.geoloc; -import java.util.List; import java.util.Map; -import java.util.Set; import java.util.WeakHashMap; -import java.util.concurrent.CopyOnWriteArraySet; -import org.jivesoftware.smack.AsyncButOrdered; import org.jivesoftware.smack.ConnectionCreationListener; import org.jivesoftware.smack.Manager; import org.jivesoftware.smack.SmackException.NoResponseException; @@ -30,53 +26,22 @@ import org.jivesoftware.smack.SmackException.NotConnectedException; import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.XMPPConnectionRegistry; import org.jivesoftware.smack.XMPPException.XMPPErrorException; -import org.jivesoftware.smack.packet.ExtensionElement; import org.jivesoftware.smack.packet.Message; -import org.jivesoftware.smackx.disco.ServiceDiscoveryManager; + import org.jivesoftware.smackx.geoloc.packet.GeoLocation; import org.jivesoftware.smackx.geoloc.provider.GeoLocationProvider; -import org.jivesoftware.smackx.pep.PepListener; -import org.jivesoftware.smackx.pep.PepManager; -import org.jivesoftware.smackx.pubsub.EventElement; -import org.jivesoftware.smackx.pubsub.ItemsExtension; +import org.jivesoftware.smackx.pubsub.LeafNode; import org.jivesoftware.smackx.pubsub.PayloadItem; import org.jivesoftware.smackx.pubsub.PubSubException.NotALeafNodeException; +import org.jivesoftware.smackx.pubsub.PubSubManager; import org.jivesoftware.smackx.xdata.provider.FormFieldChildElementProviderManager; -import org.jxmpp.jid.BareJid; -import org.jxmpp.jid.EntityBareJid; import org.jxmpp.jid.Jid; -/** - * Entry point for Smacks API for XEP-0080: User Location. - *
- * To publish a UserLocation, please use {@link #sendGeolocation(GeoLocation)} method. This will publish the node. - *
- * To stop publishing a UserLocation, please use {@link #stopPublishingGeolocation()} method. This will send a disble publishing signal. - *
- * To add a {@link GeoLocationListener} in order to remain updated with other users GeoLocation, use {@link #addGeoLocationListener(GeoLocationListener)} method. - *
- * To link a GeoLocation with {@link Message}, use `message.addExtension(geoLocation)`. - *
- * An example for illustration is provided inside GeoLocationTest inside the test package. - *
- * @see - * XEP-0080: User Location - */ public final class GeoLocationManager extends Manager { - public static final String GEOLOCATION_NODE = "http://jabber.org/protocol/geoloc"; - public static final String GEOLOCATION_NOTIFY = GEOLOCATION_NODE + "+notify"; - private static final Map INSTANCES = new WeakHashMap<>(); - private static boolean ENABLE_USER_LOCATION_NOTIFICATIONS_BY_DEFAULT = true; - - private final Set geoLocationListeners = new CopyOnWriteArraySet<>(); - private final AsyncButOrdered asyncButOrdered = new AsyncButOrdered(); - private final ServiceDiscoveryManager serviceDiscoveryManager; - private final PepManager pepManager; - static { FormFieldChildElementProviderManager.addFormFieldChildElementProvider( GeoLocationProvider.GeoLocationFormFieldChildElementProvider.INSTANCE); @@ -89,6 +54,11 @@ public final class GeoLocationManager extends Manager { }); } + public GeoLocationManager(XMPPConnection connection) { + super(connection); + + } + /** * Retrieves a {@link GeoLocationManager} for the specified {@link XMPPConnection}, creating one if it doesn't * already exist. @@ -105,36 +75,6 @@ public final class GeoLocationManager extends Manager { return geoLocationManager; } - private GeoLocationManager(XMPPConnection connection) { - super(connection); - pepManager = PepManager.getInstanceFor(connection); - pepManager.addPepListener(new PepListener() { - - @Override - public void eventReceived(EntityBareJid from, EventElement event, Message message) { - if (!GEOLOCATION_NODE.equals(event.getEvent().getNode())) { - return; - } - - final BareJid contact = from.asBareJid(); - asyncButOrdered.performAsyncButOrdered(contact, () -> { - ItemsExtension itemsExtension = (ItemsExtension) event.getEvent(); - List items = itemsExtension.getExtensions(); - @SuppressWarnings("unchecked") - PayloadItem payload = (PayloadItem) items.get(0); - GeoLocation geoLocation = payload.getPayload(); - for (GeoLocationListener listener : geoLocationListeners) { - listener.onGeoLocationUpdated(contact, geoLocation, message); - } - }); - } - }); - serviceDiscoveryManager = ServiceDiscoveryManager.getInstanceFor(connection); - if (ENABLE_USER_LOCATION_NOTIFICATIONS_BY_DEFAULT) { - enableUserLocationNotifications(); - } - } - public void sendGeoLocationToJid(GeoLocation geoLocation, Jid jid) throws InterruptedException, NotConnectedException { @@ -171,7 +111,7 @@ public final class GeoLocationManager extends Manager { */ public void sendGeolocation(GeoLocation geoLocation) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException, NotALeafNodeException { - pepManager.publish(GeoLocation.NAMESPACE, new PayloadItem(geoLocation)); + getNode().publish(new PayloadItem(geoLocation)); } /** @@ -185,25 +125,13 @@ public final class GeoLocationManager extends Manager { */ public void stopPublishingGeolocation() throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException, NotALeafNodeException { - pepManager.publish(GeoLocation.NAMESPACE, new PayloadItem(GeoLocation.EMPTY_GEO_LOCATION)); + GeoLocation emptyGeolocation = new GeoLocation.Builder().build(); + getNode().publish(new PayloadItem(emptyGeolocation)); } - public static void setGeoLocationNotificationsEnabledByDefault(boolean bool) { - ENABLE_USER_LOCATION_NOTIFICATIONS_BY_DEFAULT = bool; + private LeafNode getNode() + throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException, NotALeafNodeException { + return PubSubManager.getInstanceFor(connection()).getOrCreateLeafNode(GeoLocation.NAMESPACE); } - public void enableUserLocationNotifications() { - serviceDiscoveryManager.addFeature(GEOLOCATION_NOTIFY); - } - - public void disableGeoLocationNotifications() { - serviceDiscoveryManager.removeFeature(GEOLOCATION_NOTIFY); - } - - public boolean addGeoLocationListener(GeoLocationListener geoLocationListener) { - return geoLocationListeners.add(geoLocationListener); - } - public boolean removeGeoLocationListener(GeoLocationListener geoLocationListener) { - return geoLocationListeners.remove(geoLocationListener); - } } diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/packet/GeoLocation.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/packet/GeoLocation.java index 3cf633ee8..0b7b823fa 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/packet/GeoLocation.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/packet/GeoLocation.java @@ -48,8 +48,6 @@ public final class GeoLocation implements Serializable, ExtensionElement, FormFi public static final QName QNAME = new QName(NAMESPACE, ELEMENT); - public static final GeoLocation EMPTY_GEO_LOCATION = GeoLocation.builder().build(); - private static final Logger LOGGER = Logger.getLogger(GeoLocation.class.getName()); private final Double accuracy; @@ -266,10 +264,6 @@ public final class GeoLocation implements Serializable, ExtensionElement, FormFi return NAMESPACE; } - /** - * Returns a new instance of {@link Builder}. - * @return Builder - */ public static Builder builder() { return new GeoLocation.Builder(); } @@ -279,35 +273,14 @@ public final class GeoLocation implements Serializable, ExtensionElement, FormFi return true; } - /** - * Returns the first GeoLocation, or null if it doesn't exist in {@link Message}. - *
- * @param message The Message stanza containing GeoLocation - * @return GeoLocation - */ public static GeoLocation from(Message message) { return message.getExtension(GeoLocation.class); } - /** - * Returns the first GeoLocation, or null if it doesn't exist in {@link FormField}. - *
- * @param formField the Formfield containing GeoLocation - * @return GeoLocation - */ public static GeoLocation from(FormField formField) { return (GeoLocation) formField.getFormFieldChildElement(QNAME); } - /** - * This class defines a builder class for {@link GeoLocation}. - *
- * {@link GeoLocation} instance can be obtained using {@link #build()} method as follows.

- * GeoLocation.Builder builder = GeoLocation.builder();
- * GeoLocation geoLocation = builder.build();
- *

- * To set GeoLocation parameters, use their respective setters. - */ public static class Builder { private Double accuracy; @@ -335,285 +308,133 @@ public final class GeoLocation implements Serializable, ExtensionElement, FormFi private String tzo; private URI uri; - /** - * Sets accuracy of horizontal GPS error in meters. - * - * @param accuracy accuracy in meters - * @return Builder - */ public Builder setAccuracy(Double accuracy) { this.accuracy = accuracy; return this; } - /** - * Sets Altitude in meters above or below sea level. - * - * @param alt altitude in meters - * @return Builder - */ public Builder setAlt(Double alt) { this.alt = alt; return this; } - /** - * Sets Vertical GPS error in meters. - * - * @param altAccuracy altAccuracy in meters - * @return Builder - */ public Builder setAltAccuracy(Double altAccuracy) { this.altAccuracy = altAccuracy; return this; } - /** - * Sets a named area such as a campus or neighborhood. - * - * @param area the named area - * @return Builder - */ public Builder setArea(String area) { this.area = area; return this; } - /** - * Sets GPS bearing (direction in which the entity is heading
- * to reach its next waypoint), measured in decimal degrees,
- * relative to true north. - * - * @param bearing bearing in decimal degrees - * @return Builder - */ public Builder setBearing(Double bearing) { this.bearing = bearing; return this; } - /** - * Sets a specific building on a street or in an area. - * - * @param building name of the building - * @return Builder - */ public Builder setBuilding(String building) { this.building = building; return this; } - /** - * Sets the nation where the user is located. - * - * @param country user's country of location - * @return Builder - */ public Builder setCountry(String country) { this.country = country; return this; } - /** - * Sets The ISO 3166 two-letter country code. - * - * @param countryCode two-letter country code - * @return Builder - */ public Builder setCountryCode(String countryCode) { this.countryCode = countryCode; return this; } - /** - * Sets GPS Datum. - * - * @param datum GPS datum - * @return Builder - */ public Builder setDatum(String datum) { this.datum = datum; return this; } - /** - * Sets A natural-language name for or description of the location. - * - * @param description description of the location - * @return Builder - */ public Builder setDescription(String description) { this.description = description; return this; } - /** - * Sets Horizontal GPS error in arc minutes;
- * this element is deprecated in favor of accuracy. - * - * @param error error in arc minutes - * @return Builder - */ public Builder setError(Double error) { this.error = error; return this; } - /** - * Sets a particular floor in a building. - * - * @param floor floor in a building - * @return Builder - */ public Builder setFloor(String floor) { this.floor = floor; return this; } - /** - * Sets Latitude in decimal degrees North. - * - * @param lat latitude in decimal degrees - * @return Builder - */ public Builder setLat(Double lat) { this.lat = lat; return this; } - /** - * Sets Locality within the administrative region,
- * such as a town or city. - * - * @param locality locality in a region - * @return Builder - */ public Builder setLocality(String locality) { this.locality = locality; return this; } - /** - * Sets Longitude in decimal degrees East. - * - * @param lon longitude in decimal degrees - * @return Builder - */ public Builder setLon(Double lon) { this.lon = lon; return this; } - /** - * Sets PostalCode used for postal delivery. - * - * @param postalcode code for postal delivery - * @return Builder - */ public Builder setPostalcode(String postalcode) { this.postalcode = postalcode; return this; } - /** - * Sets an administrative region of the nation,
- * such as a state or province. - * - * @param region an administrative region - * @return Builder - */ public Builder setRegion(String region) { this.region = region; return this; } - /** - * Sets a particular room in a building. - * - * @param room room inside a building - * @return Builder - */ public Builder setRoom(String room) { this.room = room; return this; } - /** - * Sets Speed at which the entity is moving, in meters per second. - * - * @param speed speed in meters per second - * @return Builder - */ public Builder setSpeed(Double speed) { this.speed = speed; return this; } - /** - * Sets a thoroughfare within the locality, or a crossing of two thoroughfares. - * - * @param street name of the street - * @return Builder - */ public Builder setStreet(String street) { this.street = street; return this; } - /** - * Sets a catch-all element that captures any other information about the location. - * - * @param text distinctive feature about the location - * @return Builder - */ public Builder setText(String text) { this.text = text; return this; } - /** - * Sets UTC timestamp specifying the moment when the reading was taken. - * - * @param timestamp timestamp of the reading - * @return Builder - */ public Builder setTimestamp(Date timestamp) { this.timestamp = timestamp; return this; } - /** - * Sets the time zone offset from UTC for the current location. - * - * @param tzo time zone offset - * @return Builder - */ public Builder setTzo(String tzo) { this.tzo = tzo; return this; } - /** - * Sets URI or URL pointing to information about the location. - * - * @param uri uri to the location - * @return Builder - */ public Builder setUri(URI uri) { this.uri = uri; return this; } - /** - * This method is called to build {@link GeoLocation} from the Builder. - * - * @return GeoLocation - */ public GeoLocation build() { return new GeoLocation(accuracy, alt, altAccuracy, area, bearing, building, country, countryCode, datum, description, error, floor, lat, locality, lon, postalcode, region, room, speed, street, text, timestamp, tzo, uri); } + } + } diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/jingle/transports/jingle_s5b/provider/JingleS5BTransportProvider.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/jingle/transports/jingle_s5b/provider/JingleS5BTransportProvider.java index 7f85961db..153fee447 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/jingle/transports/jingle_s5b/provider/JingleS5BTransportProvider.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/jingle/transports/jingle_s5b/provider/JingleS5BTransportProvider.java @@ -32,7 +32,6 @@ import org.jivesoftware.smack.xml.XmlPullParser; import org.jivesoftware.smack.xml.XmlPullParserException; import org.jivesoftware.smackx.jingle.element.JingleContentTransport; -import org.jivesoftware.smackx.jingle.element.JingleContentTransportCandidate; import org.jivesoftware.smackx.jingle.provider.JingleContentTransportProvider; import org.jivesoftware.smackx.jingle.transports.jingle_s5b.elements.JingleS5BTransport; import org.jivesoftware.smackx.jingle.transports.jingle_s5b.elements.JingleS5BTransportCandidate; @@ -67,7 +66,7 @@ public class JingleS5BTransportProvider extends JingleContentTransportProvider payload = (PayloadItem) items.getItems().get(0); + PayloadItem payload = (PayloadItem) items.getItems().get(0); MoodElement mood = (MoodElement) payload.getPayload(); for (MoodListener listener : moodListeners) { diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/mood/provider/MoodProvider.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/mood/provider/MoodProvider.java index e23234d69..c9814b091 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/mood/provider/MoodProvider.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/mood/provider/MoodProvider.java @@ -57,7 +57,7 @@ public class MoodProvider extends ExtensionElementProvider { if (!MoodElement.NAMESPACE.equals(namespace)) { LOGGER.log(Level.FINE, "Foreign namespace " + namespace + " detected. Try to find suitable MoodConcretisationProvider."); - MoodConcretisationProvider provider = (MoodConcretisationProvider) ProviderManager.getExtensionProvider(name, namespace); + MoodConcretisationProvider provider = (MoodConcretisationProvider) ProviderManager.getExtensionProvider(name, namespace); if (provider != null) { concretisation = provider.parse(parser); } else { diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/Occupant.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/Occupant.java index 3e8884c64..babce3829 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/Occupant.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/Occupant.java @@ -53,7 +53,7 @@ public class Occupant { } Occupant(Presence presence) { - MUCUser mucUser = (MUCUser) presence.getExtensionElement("x", + MUCUser mucUser = (MUCUser) presence.getExtension("x", "http://jabber.org/protocol/muc#user"); MUCItem item = mucUser.getItem(); this.jid = item.getJid(); diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/LeafNode.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/LeafNode.java index a6eb39650..be658275e 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/LeafNode.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/LeafNode.java @@ -236,6 +236,7 @@ public class LeafNode extends Node { * @throws NoResponseException if there was no response from the remote entity. * @deprecated use {@link #publish(Item)} instead. */ + @SuppressWarnings("unchecked") @Deprecated public void send(T item) throws NotConnectedException, InterruptedException, NoResponseException, XMPPErrorException { publish(item); diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Node.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Node.java index 88decd520..2a43636b2 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Node.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Node.java @@ -686,7 +686,7 @@ public abstract class Node { @Override @SuppressWarnings({ "rawtypes", "unchecked" }) public void processStanza(Stanza packet) { - EventElement event = (EventElement) packet.getExtensionElement("event", PubSubNamespace.event.getXmlns()); + EventElement event = (EventElement) packet.getExtension("event", PubSubNamespace.event.getXmlns()); ItemsExtension itemsElem = (ItemsExtension) event.getEvent(); ItemPublishEvent eventItems = new ItemPublishEvent(itemsElem.getNode(), itemsElem.getItems(), getSubscriptionIds(packet), DelayInformationManager.getDelayTimestamp(packet)); // TODO: Use AsyncButOrdered (with Node as Key?) @@ -710,7 +710,7 @@ public abstract class Node { @Override public void processStanza(Stanza packet) { // CHECKSTYLE:OFF - EventElement event = (EventElement) packet.getExtensionElement("event", PubSubNamespace.event.getXmlns()); + EventElement event = (EventElement) packet.getExtension("event", PubSubNamespace.event.getXmlns()); List extList = event.getExtensions(); @@ -749,7 +749,7 @@ public abstract class Node { @Override public void processStanza(Stanza packet) { - EventElement event = (EventElement) packet.getExtensionElement("event", PubSubNamespace.event.getXmlns()); + EventElement event = (EventElement) packet.getExtension("event", PubSubNamespace.event.getXmlns()); ConfigurationEvent config = (ConfigurationEvent) event.getEvent(); // TODO: Use AsyncButOrdered (with Node as Key?) diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java index 7d91e41ca..420c36f5a 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java @@ -503,7 +503,7 @@ public final class PubSubManager extends Manager { */ public List getSubscriptions() throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException { Stanza reply = sendPubsubPacket(Type.get, new NodeExtension(PubSubElementType.SUBSCRIPTIONS), null); - SubscriptionsExtension subElem = (SubscriptionsExtension) reply.getExtensionElement(PubSubElementType.SUBSCRIPTIONS.getElementName(), PubSubElementType.SUBSCRIPTIONS.getNamespace().getXmlns()); + SubscriptionsExtension subElem = (SubscriptionsExtension) reply.getExtension(PubSubElementType.SUBSCRIPTIONS.getElementName(), PubSubElementType.SUBSCRIPTIONS.getNamespace().getXmlns()); return subElem.getSubscriptions(); } diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/packet/PubSub.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/packet/PubSub.java index a71410139..e8a6f4749 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/packet/PubSub.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/packet/PubSub.java @@ -51,7 +51,7 @@ public class PubSub extends IQ { @SuppressWarnings("unchecked") public PE getExtension(PubSubElementType elem) { - return (PE) getExtensionElement(elem.getElementName(), elem.getNamespace().getXmlns()); + return (PE) getExtension(elem.getElementName(), elem.getNamespace().getXmlns()); } /** diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/util/NodeUtils.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/util/NodeUtils.java index 9d386e609..7b0d7e7f8 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/util/NodeUtils.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/util/NodeUtils.java @@ -37,7 +37,7 @@ public class NodeUtils { * @return The configuration form */ public static ConfigureForm getFormFromPacket(Stanza packet, PubSubElementType elem) { - FormNode config = (FormNode) packet.getExtensionElement(elem.getElementName(), elem.getNamespace().getXmlns()); + FormNode config = (FormNode) packet.getExtension(elem.getElementName(), elem.getNamespace().getXmlns()); Form formReply = config.getForm(); return new ConfigureForm(formReply); } diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/rsm/packet/RSMSet.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/rsm/packet/RSMSet.java index cd3703938..e96f74bea 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/rsm/packet/RSMSet.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/rsm/packet/RSMSet.java @@ -151,7 +151,7 @@ public class RSMSet implements ExtensionElement { } public static RSMSet from(Stanza packet) { - return (RSMSet) packet.getExtensionElement(ELEMENT, NAMESPACE); + return (RSMSet) packet.getExtension(ELEMENT, NAMESPACE); } public static RSMSet newAfter(String after) { diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLManager.java index de2def875..6a72b855c 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLManager.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLManager.java @@ -89,7 +89,7 @@ public class XHTMLManager { * @return a boolean indicating whether the message is an XHTML message */ public static boolean isXHTMLMessage(Message message) { - return message.getExtensionElement(XHTMLExtension.ELEMENT, XHTMLExtension.NAMESPACE) != null; + return message.getExtension(XHTMLExtension.ELEMENT, XHTMLExtension.NAMESPACE) != null; } /** diff --git a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/package-info.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/InitExtensions.java similarity index 64% rename from smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/package-info.java rename to smack-extensions/src/test/java/org/jivesoftware/smackx/InitExtensions.java index 11723cd94..d4c6b0350 100644 --- a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/package-info.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/InitExtensions.java @@ -1,6 +1,6 @@ /** * - * Copyright 2020 Florian Schmaus + * Copyright 2014 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,8 +14,15 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +package org.jivesoftware.smackx; -/** - * Java annotations for Smack's Integration Test Framework. - */ -package org.igniterealtime.smack.inttest.annotations; +import org.jivesoftware.smack.extensions.ExtensionsInitializer; +import org.jivesoftware.smack.test.util.SmackTestSuite; + +public class InitExtensions extends SmackTestSuite { + + static { + new ExtensionsInitializer().initialize(); + } + +} diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/attention/AttentionElementTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/attention/AttentionElementTest.java index dd01b7331..52be8b713 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/attention/AttentionElementTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/attention/AttentionElementTest.java @@ -20,7 +20,7 @@ import static org.jivesoftware.smack.test.util.XmlUnitUtils.assertXmlSimilar; import org.jivesoftware.smackx.attention.packet.AttentionExtension; -import org.junit.jupiter.api.Test; +import org.junit.Test; public class AttentionElementTest { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/CloseListenerTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/CloseListenerTest.java index 081afe58b..4671209fd 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/CloseListenerTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/CloseListenerTest.java @@ -23,22 +23,22 @@ import static org.mockito.Mockito.verify; import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StanzaError; -import org.jivesoftware.smack.test.util.SmackTestSuite; -import org.jivesoftware.smack.test.util.Whitebox; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.bytestreams.ibb.packet.Close; import org.junit.jupiter.api.Test; import org.jxmpp.jid.Jid; import org.jxmpp.jid.JidTestUtil; import org.mockito.ArgumentCaptor; +import org.powermock.reflect.Whitebox; /** * Test for the CloseListener class. * * @author Henning Staib */ -public class CloseListenerTest extends SmackTestSuite { +public class CloseListenerTest extends InitExtensions { private static final Jid initiatorJID = JidTestUtil.DUMMY_AT_EXAMPLE_ORG_SLASH_DUMMYRESOURCE; private static final Jid targetJID = JidTestUtil.FULL_JID_1_RESOURCE_1; @@ -59,7 +59,7 @@ public class CloseListenerTest extends SmackTestSuite { InBandBytestreamManager byteStreamManager = InBandBytestreamManager.getByteStreamManager(connection); // get the CloseListener from InBandByteStreamManager - CloseListener closeListener = Whitebox.getInternalState(byteStreamManager, "closeListener", + CloseListener closeListener = Whitebox.getInternalState(byteStreamManager, CloseListener.class); Close close = new Close("unknownSessionId"); diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/DataListenerTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/DataListenerTest.java index effffd1c0..7e8d8e34f 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/DataListenerTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/DataListenerTest.java @@ -23,9 +23,8 @@ import static org.mockito.Mockito.verify; import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StanzaError; -import org.jivesoftware.smack.test.util.SmackTestSuite; -import org.jivesoftware.smack.test.util.Whitebox; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.bytestreams.ibb.packet.Data; import org.jivesoftware.smackx.bytestreams.ibb.packet.DataPacketExtension; @@ -33,13 +32,14 @@ import org.junit.jupiter.api.Test; import org.jxmpp.jid.Jid; import org.jxmpp.jid.JidTestUtil; import org.mockito.ArgumentCaptor; +import org.powermock.reflect.Whitebox; /** * Test for the CloseListener class. * * @author Henning Staib */ -public class DataListenerTest extends SmackTestSuite { +public class DataListenerTest extends InitExtensions { private static final Jid initiatorJID = JidTestUtil.DUMMY_AT_EXAMPLE_ORG_SLASH_DUMMYRESOURCE; private static final Jid targetJID = JidTestUtil.FULL_JID_1_RESOURCE_1; @@ -60,7 +60,7 @@ public class DataListenerTest extends SmackTestSuite { InBandBytestreamManager byteStreamManager = InBandBytestreamManager.getByteStreamManager(connection); // get the DataListener from InBandByteStreamManager - DataListener dataListener = Whitebox.getInternalState(byteStreamManager, "dataListener", + DataListener dataListener = Whitebox.getInternalState(byteStreamManager, DataListener.class); DataPacketExtension dpe = new DataPacketExtension("unknownSessionID", 0, "Data"); diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManagerTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManagerTest.java index 36e62af46..bf3da6cae 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManagerTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManagerTest.java @@ -29,8 +29,8 @@ import org.jivesoftware.smack.XMPPException; import org.jivesoftware.smack.XMPPException.XMPPErrorException; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StanzaError; -import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.bytestreams.ibb.InBandBytestreamManager.StanzaType; import org.jivesoftware.smackx.bytestreams.ibb.packet.Open; @@ -47,7 +47,7 @@ import org.jxmpp.jid.JidTestUtil; * * @author Henning Staib */ -public class InBandBytestreamManagerTest extends SmackTestSuite { +public class InBandBytestreamManagerTest extends InitExtensions { // settings private static final EntityFullJid initiatorJID = JidTestUtil.DUMMY_AT_EXAMPLE_ORG_SLASH_DUMMYRESOURCE; diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamRequestTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamRequestTest.java index fe58b7fc3..9eb9d1e7f 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamRequestTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamRequestTest.java @@ -25,8 +25,8 @@ import org.jivesoftware.smack.SmackException.NotConnectedException; import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StanzaError; -import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.bytestreams.ibb.packet.Open; import org.junit.jupiter.api.BeforeEach; @@ -40,7 +40,7 @@ import org.mockito.ArgumentCaptor; * * @author Henning Staib */ -public class InBandBytestreamRequestTest extends SmackTestSuite { +public class InBandBytestreamRequestTest extends InitExtensions { private static final Jid initiatorJID = JidTestUtil.DUMMY_AT_EXAMPLE_ORG_SLASH_DUMMYRESOURCE; private static final Jid targetJID = JidTestUtil.FULL_JID_1_RESOURCE_1; diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionMessageTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionMessageTest.java index 678ede38f..a327204a8 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionMessageTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionMessageTest.java @@ -32,10 +32,9 @@ import org.jivesoftware.smack.XMPPException; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.Message; import org.jivesoftware.smack.packet.StanzaBuilder; -import org.jivesoftware.smack.test.util.SmackTestSuite; -import org.jivesoftware.smack.test.util.Whitebox; import org.jivesoftware.smack.util.stringencoder.Base64; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.bytestreams.ibb.InBandBytestreamManager.StanzaType; import org.jivesoftware.smackx.bytestreams.ibb.packet.DataPacketExtension; import org.jivesoftware.smackx.bytestreams.ibb.packet.Open; @@ -47,6 +46,7 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.jxmpp.jid.EntityFullJid; import org.jxmpp.jid.JidTestUtil; +import org.powermock.reflect.Whitebox; /** * Test for InBandBytestreamSession. @@ -55,7 +55,7 @@ import org.jxmpp.jid.JidTestUtil; * * @author Henning Staib */ -public class InBandBytestreamSessionMessageTest extends SmackTestSuite { +public class InBandBytestreamSessionMessageTest extends InitExtensions { // settings private static final EntityFullJid initiatorJID = JidTestUtil.DUMMY_AT_EXAMPLE_ORG_SLASH_DUMMYRESOURCE; @@ -262,7 +262,7 @@ public class InBandBytestreamSessionMessageTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // build invalid packet with out of order sequence String base64Data = Base64.encode("Data"); @@ -303,7 +303,7 @@ public class InBandBytestreamSessionMessageTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // verify data packet and notify listener for (int i = 0; i < controlData.length / blockSize; i++) { @@ -349,7 +349,7 @@ public class InBandBytestreamSessionMessageTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // verify data packet and notify listener for (int i = 0; i < controlData.length / blockSize; i++) { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionTest.java index 8a861cc32..b1cd44c98 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionTest.java @@ -31,10 +31,9 @@ import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.XMPPException; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StanzaError; -import org.jivesoftware.smack.test.util.SmackTestSuite; -import org.jivesoftware.smack.test.util.Whitebox; import org.jivesoftware.smack.util.stringencoder.Base64; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.bytestreams.ibb.packet.Data; import org.jivesoftware.smackx.bytestreams.ibb.packet.DataPacketExtension; import org.jivesoftware.smackx.bytestreams.ibb.packet.Open; @@ -46,6 +45,7 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.jxmpp.jid.EntityFullJid; import org.jxmpp.jid.JidTestUtil; +import org.powermock.reflect.Whitebox; /** * Test for InBandBytestreamSession. @@ -55,7 +55,7 @@ import org.jxmpp.jid.JidTestUtil; * * @author Henning Staib */ -public class InBandBytestreamSessionTest extends SmackTestSuite { +public class InBandBytestreamSessionTest extends InitExtensions { // settings private static final EntityFullJid initiatorJID = JidTestUtil.DUMMY_AT_EXAMPLE_ORG_SLASH_DUMMYRESOURCE; @@ -309,7 +309,7 @@ public class InBandBytestreamSessionTest extends SmackTestSuite { // insert data to read InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); String base64Data = Base64.encode("Data"); DataPacketExtension dpe = new DataPacketExtension(sessionID, 0, base64Data); Data data = new Data(dpe); @@ -343,7 +343,7 @@ public class InBandBytestreamSessionTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); String base64Data = Base64.encode("Data"); DataPacketExtension dpe = new DataPacketExtension(sessionID, 0, base64Data); @@ -381,7 +381,7 @@ public class InBandBytestreamSessionTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // build data packets String base64Data = Base64.encode("Data"); @@ -420,7 +420,7 @@ public class InBandBytestreamSessionTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // build data packets DataPacketExtension dpe = new DataPacketExtension(sessionID, 0, "AA=BB"); @@ -454,7 +454,7 @@ public class InBandBytestreamSessionTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // build invalid packet with out of order sequence String base64Data = Base64.encode("Data"); @@ -495,7 +495,7 @@ public class InBandBytestreamSessionTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // set data packet acknowledgment and notify listener for (int i = 0; i < controlData.length / blockSize; i++) { @@ -542,7 +542,7 @@ public class InBandBytestreamSessionTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // set data packet acknowledgment and notify listener for (int i = 0; i < controlData.length / blockSize; i++) { @@ -583,7 +583,7 @@ public class InBandBytestreamSessionTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // build data packet String base64Data = Base64.encode("Data"); @@ -626,7 +626,7 @@ public class InBandBytestreamSessionTest extends SmackTestSuite { InBandBytestreamSession session = new InBandBytestreamSession(connection, initBytestream, initiatorJID); final InputStream inputStream = session.getInputStream(); - StanzaListener listener = Whitebox.getInternalState(inputStream, "dataPacketListener", StanzaListener.class); + StanzaListener listener = Whitebox.getInternalState(inputStream, StanzaListener.class); // build data packet String base64Data = Base64.encode("Data"); diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InitiationListenerTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InitiationListenerTest.java index 3f4591212..3e8c6212c 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InitiationListenerTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InitiationListenerTest.java @@ -24,9 +24,8 @@ import static org.mockito.Mockito.verify; import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StanzaError; -import org.jivesoftware.smack.test.util.SmackTestSuite; -import org.jivesoftware.smack.test.util.Whitebox; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.bytestreams.BytestreamRequest; import org.jivesoftware.smackx.bytestreams.ibb.packet.Open; @@ -36,13 +35,14 @@ import org.jxmpp.jid.EntityFullJid; import org.jxmpp.jid.JidTestUtil; import org.jxmpp.jid.impl.JidCreate; import org.mockito.ArgumentCaptor; +import org.powermock.reflect.Whitebox; /** * Test for the InitiationListener class. * * @author Henning Staib */ -public class InitiationListenerTest extends SmackTestSuite { +public class InitiationListenerTest extends InitExtensions { private static final EntityFullJid initiatorJID = JidTestUtil.DUMMY_AT_EXAMPLE_ORG_SLASH_DUMMYRESOURCE; private static final EntityFullJid targetJID = JidTestUtil.FULL_JID_1_RESOURCE_1; @@ -66,7 +66,7 @@ public class InitiationListenerTest extends SmackTestSuite { byteStreamManager = InBandBytestreamManager.getByteStreamManager(connection); // get the InitiationListener from InBandByteStreamManager - initiationListener = Whitebox.getInternalState(byteStreamManager, "initiationListener", InitiationListener.class); + initiationListener = Whitebox.getInternalState(byteStreamManager, InitiationListener.class); // create a In-Band Bytestream open packet initBytestream = new Open(sessionID, 4096); diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/CloseTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/CloseTest.java index 8fbb488fc..4b5866d80 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/CloseTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/CloseTest.java @@ -24,7 +24,8 @@ import java.util.Properties; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StreamOpen; -import org.jivesoftware.smack.test.util.SmackTestSuite; + +import org.jivesoftware.smackx.InitExtensions; import com.jamesmurty.utils.XMLBuilder; import org.junit.jupiter.api.Test; @@ -35,7 +36,7 @@ import org.jxmpp.jid.impl.JidCreate; * * @author Henning Staib */ -public class CloseTest extends SmackTestSuite { +public class CloseTest extends InitExtensions { @Test public void shouldNotInstantiateWithInvalidArguments1() { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtensionTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtensionTest.java index 3042ae07a..4d2638ea7 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtensionTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtensionTest.java @@ -24,7 +24,7 @@ import static org.junit.jupiter.api.Assertions.assertThrows; import java.nio.charset.StandardCharsets; import java.util.Properties; -import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smackx.InitExtensions; import com.jamesmurty.utils.XMLBuilder; import org.junit.jupiter.api.Test; @@ -34,7 +34,7 @@ import org.junit.jupiter.api.Test; * * @author Henning Staib */ -public class DataPacketExtensionTest extends SmackTestSuite { +public class DataPacketExtensionTest extends InitExtensions { @Test public void shouldNotInstantiateWithInvalidArgument1() { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataTest.java index aa24c043d..453dd9ddd 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataTest.java @@ -25,9 +25,10 @@ import java.util.Properties; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StreamOpen; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.stringencoder.Base64; +import org.jivesoftware.smackx.InitExtensions; + import com.jamesmurty.utils.XMLBuilder; import org.junit.jupiter.api.Test; import org.jxmpp.jid.impl.JidCreate; @@ -37,7 +38,7 @@ import org.jxmpp.jid.impl.JidCreate; * * @author Henning Staib */ -public class DataTest extends SmackTestSuite { +public class DataTest extends InitExtensions { @Test public void shouldNotInstantiateWithInvalidArgument() { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/OpenTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/OpenTest.java index 8206efbf2..5d196fbb6 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/OpenTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/OpenTest.java @@ -24,11 +24,12 @@ import java.util.Properties; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StreamOpen; -import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.bytestreams.ibb.InBandBytestreamManager.StanzaType; import com.jamesmurty.utils.XMLBuilder; + import org.junit.jupiter.api.Test; import org.jxmpp.jid.impl.JidCreate; @@ -37,7 +38,7 @@ import org.jxmpp.jid.impl.JidCreate; * * @author Henning Staib */ -public class OpenTest extends SmackTestSuite { +public class OpenTest extends InitExtensions { @Test public void shouldNotInstantiateWithInvalidArguments1() { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/provider/OpenIQProviderTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/provider/OpenIQProviderTest.java index 967b765a8..ff39972a1 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/provider/OpenIQProviderTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/provider/OpenIQProviderTest.java @@ -20,10 +20,10 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import java.util.Properties; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; import org.jivesoftware.smack.xml.XmlPullParser; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.bytestreams.ibb.InBandBytestreamManager.StanzaType; import org.jivesoftware.smackx.bytestreams.ibb.packet.Open; @@ -35,7 +35,7 @@ import org.junit.jupiter.api.Test; * * @author Henning Staib */ -public class OpenIQProviderTest extends SmackTestSuite { +public class OpenIQProviderTest extends InitExtensions { private static final Properties outputProperties = new Properties(); { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/InitiationListenerTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/InitiationListenerTest.java index 3bfe87bca..5093361b8 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/InitiationListenerTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/InitiationListenerTest.java @@ -25,7 +25,6 @@ import static org.mockito.Mockito.verify; import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StanzaError; -import org.jivesoftware.smack.test.util.Whitebox; import org.jivesoftware.smackx.bytestreams.BytestreamRequest; import org.jivesoftware.smackx.bytestreams.socks5.packet.Bytestream; @@ -38,6 +37,7 @@ import org.jxmpp.jid.EntityFullJid; import org.jxmpp.jid.JidTestUtil; import org.jxmpp.jid.impl.JidCreate; import org.mockito.ArgumentCaptor; +import org.powermock.reflect.Whitebox; /** * Test for the InitiationListener class. @@ -75,7 +75,7 @@ public class InitiationListenerTest { byteStreamManager = Socks5BytestreamManager.getBytestreamManager(connection); // get the InitiationListener from Socks5ByteStreamManager - initiationListener = Whitebox.getInternalState(byteStreamManager, "initiationListener", InitiationListener.class); + initiationListener = Whitebox.getInternalState(byteStreamManager, InitiationListener.class); // create a SOCKS5 Bytestream initiation packet initBytestream = Socks5PacketUtils.createBytestreamInitiation(initiatorJID, targetJID, diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamManagerTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamManagerTest.java index c2b748686..e25dd3d17 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamManagerTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamManagerTest.java @@ -41,8 +41,8 @@ import org.jivesoftware.smack.XMPPException.XMPPErrorException; import org.jivesoftware.smack.packet.ErrorIQ; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StanzaError; -import org.jivesoftware.smack.test.util.NetworkUtil; import org.jivesoftware.smack.util.ExceptionUtil; +import org.jivesoftware.smack.util.NetworkUtil; import org.jivesoftware.smackx.bytestreams.socks5.packet.Bytestream; import org.jivesoftware.smackx.bytestreams.socks5.packet.Bytestream.StreamHost; diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamRequestTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamRequestTest.java index 5b764da5a..e8aa92f9f 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamRequestTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamRequestTest.java @@ -31,7 +31,7 @@ import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.Stanza; import org.jivesoftware.smack.packet.StanzaError; -import org.jivesoftware.smack.test.util.NetworkUtil; +import org.jivesoftware.smack.util.NetworkUtil; import org.jivesoftware.smackx.bytestreams.socks5.packet.Bytestream; diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientTest.java index af2623e1d..4f7a2810b 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientTest.java @@ -28,7 +28,7 @@ import java.net.Socket; import java.nio.charset.StandardCharsets; import org.jivesoftware.smack.SmackException; -import org.jivesoftware.smack.test.util.NetworkUtil; +import org.jivesoftware.smack.util.NetworkUtil; import org.jivesoftware.smackx.bytestreams.socks5.packet.Bytestream.StreamHost; diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5TestProxy.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5TestProxy.java index 9788fba02..3d32ebd40 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5TestProxy.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5TestProxy.java @@ -19,7 +19,7 @@ package org.jivesoftware.smackx.bytestreams.socks5; import java.io.IOException; import java.net.ServerSocket; -import org.jivesoftware.smack.test.util.NetworkUtil; +import org.jivesoftware.smack.util.NetworkUtil; /** * Simple SOCKS5 proxy for testing purposes. It is almost the same as the Socks5Proxy class but the diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/caps/EntityCapsManagerTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/caps/EntityCapsManagerTest.java index bd3985a17..dc58aa304 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/caps/EntityCapsManagerTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/caps/EntityCapsManagerTest.java @@ -26,11 +26,11 @@ import java.util.Collection; import java.util.LinkedList; import org.jivesoftware.smack.packet.IQ; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.StringUtils; import org.jivesoftware.smack.util.stringencoder.Base32; import org.jivesoftware.smack.util.stringencoder.StringEncoder; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.caps.cache.EntityCapsPersistentCache; import org.jivesoftware.smackx.caps.cache.SimpleDirectoryPersistentCache; import org.jivesoftware.smackx.disco.packet.DiscoverInfo; @@ -43,7 +43,7 @@ import org.jxmpp.jid.impl.JidCreate; import org.jxmpp.stringprep.XmppStringprepException; -public class EntityCapsManagerTest extends SmackTestSuite { +public class EntityCapsManagerTest extends InitExtensions { /** * XEP- diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/caps/provider/CapsExtensionProviderTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/caps/provider/CapsExtensionProviderTest.java index 26f1c2dce..98bed5d3f 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/caps/provider/CapsExtensionProviderTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/caps/provider/CapsExtensionProviderTest.java @@ -18,15 +18,15 @@ package org.jivesoftware.smackx.caps.provider; import static org.junit.jupiter.api.Assertions.assertNotNull; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.test.util.SmackTestUtil; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.caps.packet.CapsExtension; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.EnumSource; -public class CapsExtensionProviderTest extends SmackTestSuite { +public class CapsExtensionProviderTest extends InitExtensions { @ParameterizedTest @EnumSource(SmackTestUtil.XmlPullParserKind.class) diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/delay/provider/DelayInformationTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/delay/provider/DelayInformationTest.java index afb45a63e..c94c20055 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/delay/provider/DelayInformationTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/delay/provider/DelayInformationTest.java @@ -31,11 +31,11 @@ import java.util.TimeZone; import javax.xml.parsers.FactoryConfigurationError; import org.jivesoftware.smack.packet.Presence; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; import org.jivesoftware.smack.xml.XmlPullParser; import org.jivesoftware.smack.xml.XmlPullParserException; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.delay.DelayInformationManager; import org.jivesoftware.smackx.delay.packet.DelayInformation; @@ -43,7 +43,7 @@ import com.jamesmurty.utils.XMLBuilder; import org.junit.jupiter.api.Test; import org.jxmpp.util.XmppDateTime; -public class DelayInformationTest extends SmackTestSuite { +public class DelayInformationTest extends InitExtensions { private static final Calendar calendar = new GregorianCalendar(2002, 9 - 1, 10, 23, 8, 25); private static Properties outputProperties = new Properties(); diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/filetransfer/FileTransferNegotiatorTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/filetransfer/FileTransferNegotiatorTest.java index 065b8b589..b4a7164f2 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/filetransfer/FileTransferNegotiatorTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/filetransfer/FileTransferNegotiatorTest.java @@ -21,8 +21,8 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import org.jivesoftware.smack.DummyConnection; import org.jivesoftware.smack.SmackException.NoResponseException; import org.jivesoftware.smack.packet.Stanza; -import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.disco.ServiceDiscoveryManager; import org.junit.jupiter.api.AfterEach; @@ -30,7 +30,7 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.jxmpp.jid.JidTestUtil; -public class FileTransferNegotiatorTest extends SmackTestSuite { +public class FileTransferNegotiatorTest extends InitExtensions { private DummyConnection connection; @BeforeEach diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/geoloc/packet/GeoLocationTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/geoloc/packet/GeoLocationTest.java index f8af5da0b..ec03015c2 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/geoloc/packet/GeoLocationTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/geoloc/packet/GeoLocationTest.java @@ -24,9 +24,9 @@ import java.util.Calendar; import java.util.TimeZone; import org.jivesoftware.smack.packet.Message; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.time.packet.Time; import org.junit.jupiter.api.Test; @@ -37,7 +37,7 @@ import org.jxmpp.util.XmppDateTime; * * @author Ishan Khanna */ -public class GeoLocationTest extends SmackTestSuite { +public class GeoLocationTest extends InitExtensions { @Test public void negativeTimezoneTest() { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/geoloc/provider/GeoLocationProviderTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/geoloc/provider/GeoLocationProviderTest.java index 01738fa3e..605e09dc7 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/geoloc/provider/GeoLocationProviderTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/geoloc/provider/GeoLocationProviderTest.java @@ -23,15 +23,15 @@ import static org.junit.jupiter.api.Assertions.assertNull; import java.net.URI; import org.jivesoftware.smack.packet.Message; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.geoloc.packet.GeoLocation; import org.junit.jupiter.api.Test; import org.jxmpp.util.XmppDateTime; -public class GeoLocationProviderTest extends SmackTestSuite { +public class GeoLocationProviderTest extends InitExtensions { @Test public void testGeoLocationProviderWithNoDatumSet() throws Exception { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/iqlast/LastActivityTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/iqlast/LastActivityTest.java index b44d8c892..eaa62f110 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/iqlast/LastActivityTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/iqlast/LastActivityTest.java @@ -22,15 +22,15 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import org.jivesoftware.smack.DummyConnection; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.Stanza; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.iqlast.packet.LastActivity; import com.jamesmurty.utils.XMLBuilder; import org.junit.jupiter.api.Test; -public class LastActivityTest extends SmackTestSuite { +public class LastActivityTest extends InitExtensions { @Test public void checkProvider() throws Exception { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/iqversion/VersionTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/iqversion/VersionTest.java index ff4d59390..66e41362b 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/iqversion/VersionTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/iqversion/VersionTest.java @@ -24,14 +24,14 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import org.jivesoftware.smack.DummyConnection; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.Stanza; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.iqversion.packet.Version; import org.junit.jupiter.api.Test; -public class VersionTest extends SmackTestSuite { +public class VersionTest extends InitExtensions { @Test public void checkProvider() throws Exception { // @formatter:off diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/jingle/JingleUtilTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/jingle/JingleUtilTest.java index 7859a55cc..3c26003ae 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/jingle/JingleUtilTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/jingle/JingleUtilTest.java @@ -16,16 +16,24 @@ */ package org.jivesoftware.smackx.jingle; +import org.jivesoftware.smack.DummyConnection; +import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smackx.jingle.element.Jingle; +import org.jivesoftware.smackx.jingle.element.JingleContent; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.jxmpp.jid.FullJid; +import org.jxmpp.jid.impl.JidCreate; +import org.jxmpp.stringprep.XmppStringprepException; + /** * Test the JingleUtil class. */ public class JingleUtilTest extends SmackTestSuite { - // TODO: Finish the test. - - /* private XMPPConnection connection; private JingleUtil jutil; @@ -94,5 +102,4 @@ public class JingleUtilTest extends SmackTestSuite { ""; // TODO: Finish test } - */ } diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/jiveproperties/JivePropertiesExtensionTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/jiveproperties/JivePropertiesExtensionTest.java index 57e459605..b2b06cb86 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/jiveproperties/JivePropertiesExtensionTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/jiveproperties/JivePropertiesExtensionTest.java @@ -20,16 +20,16 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; import org.jivesoftware.smack.packet.Message; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.jiveproperties.packet.JivePropertiesExtension; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -public class JivePropertiesExtensionTest extends SmackTestSuite { +public class JivePropertiesExtensionTest extends InitExtensions { @BeforeEach public void setUp() { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/muc/MucMemoryLeakTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/muc/MucMemoryLeakTest.java index 602a60aaa..d9e35fefd 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/muc/MucMemoryLeakTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/muc/MucMemoryLeakTest.java @@ -16,8 +16,8 @@ */ package org.jivesoftware.smackx.muc; -import org.jivesoftware.smack.test.util.MemoryLeakTestUtil; import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smack.util.MemoryLeakTestUtil; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/nick/NickTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/nick/NickTest.java index 61c7b70eb..9819642f0 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/nick/NickTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/nick/NickTest.java @@ -17,20 +17,19 @@ package org.jivesoftware.smackx.nick; import static org.jivesoftware.smack.test.util.XmlUnitUtils.assertXmlSimilar; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertThrows; import java.io.IOException; import org.jivesoftware.smack.parsing.SmackParsingException; import org.jivesoftware.smack.test.util.SmackTestUtil; import org.jivesoftware.smack.xml.XmlPullParserException; - import org.jivesoftware.smackx.nick.packet.Nick; import org.jivesoftware.smackx.nick.provider.NickProvider; -import org.junit.jupiter.api.Test; +import org.junit.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.EnumSource; @@ -42,16 +41,14 @@ public class NickTest { @Test public void disallowEmptyNickTest() { - assertThrows(IllegalArgumentException.class, - () -> new Nick(""), - "Empty String as argument MUST cause IllegalArgumentException."); + assertThrows("Empty String as argument MUST cause IllegalArgumentException.", + IllegalArgumentException.class, () -> new Nick("")); } @Test public void disallowNullNickTest() { - assertThrows(IllegalArgumentException.class, - () -> new Nick(null), - "Null argument MUST cause IllegalArgumentException."); + assertThrows("Null argument MUST cause IllegalArgumentException.", + IllegalArgumentException.class, () -> new Nick(null)); } diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/ping/PingTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/ping/PingTest.java index 5de06a190..09a5038b8 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/ping/PingTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/ping/PingTest.java @@ -33,14 +33,14 @@ import org.jivesoftware.smack.ThreadedDummyConnection; import org.jivesoftware.smack.XMPPException; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.Stanza; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.ping.packet.Ping; import org.junit.jupiter.api.Test; -public class PingTest extends SmackTestSuite { +public class PingTest extends InitExtensions { @Test public void checkProvider() throws Exception { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/privacy/provider/PrivacyProviderTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/privacy/provider/PrivacyProviderTest.java index 7b2f65d0b..c5c810124 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/privacy/provider/PrivacyProviderTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/privacy/provider/PrivacyProviderTest.java @@ -23,15 +23,15 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import java.util.List; import org.jivesoftware.smack.packet.IQ; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.privacy.packet.Privacy; import org.jivesoftware.smackx.privacy.packet.PrivacyItem; import org.junit.jupiter.api.Test; -public class PrivacyProviderTest extends SmackTestSuite { +public class PrivacyProviderTest extends InitExtensions { @Test public void parsePrivacyList() throws Exception { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/pubsub/ConfigureFormTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/pubsub/ConfigureFormTest.java index efdb6dae0..cd43ad887 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/pubsub/ConfigureFormTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/pubsub/ConfigureFormTest.java @@ -31,8 +31,8 @@ import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.IQ.Type; import org.jivesoftware.smack.packet.StanzaError; import org.jivesoftware.smack.packet.StanzaError.Condition; -import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.disco.packet.DiscoverInfo; import org.jivesoftware.smackx.disco.packet.DiscoverInfo.Identity; import org.jivesoftware.smackx.disco.packet.DiscoverInfoBuilder; @@ -46,7 +46,7 @@ import org.junit.jupiter.api.Test; * @author Robin Collier * */ -public class ConfigureFormTest extends SmackTestSuite { +public class ConfigureFormTest extends InitExtensions { @Test public void checkChildrenAssocPolicy() { ConfigureForm form = new ConfigureForm(DataForm.Type.submit); diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/pubsub/ItemValidationTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/pubsub/ItemValidationTest.java index 9dafb5334..a0f0eaedc 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/pubsub/ItemValidationTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/pubsub/ItemValidationTest.java @@ -24,10 +24,10 @@ import org.jivesoftware.smack.ThreadedDummyConnection; import org.jivesoftware.smack.packet.ExtensionElement; import org.jivesoftware.smack.packet.NamedElement; import org.jivesoftware.smack.packet.Stanza; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; import org.jivesoftware.smack.xml.XmlPullParser; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.pubsub.packet.PubSubNamespace; import org.junit.jupiter.api.AfterEach; @@ -39,7 +39,7 @@ import org.junit.jupiter.api.Test; * @author Robin Collier * */ -public class ItemValidationTest extends SmackTestSuite { +public class ItemValidationTest extends InitExtensions { private ThreadedDummyConnection connection; @BeforeEach diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/receipts/DeliveryReceiptTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/receipts/DeliveryReceiptTest.java index af11468a3..814d5c9a7 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/receipts/DeliveryReceiptTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/receipts/DeliveryReceiptTest.java @@ -30,18 +30,18 @@ import org.jivesoftware.smack.packet.Message; import org.jivesoftware.smack.packet.MessageBuilder; import org.jivesoftware.smack.packet.Stanza; import org.jivesoftware.smack.packet.StanzaBuilder; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.test.util.WaitForPacketListener; import org.jivesoftware.smack.util.PacketParserUtils; import org.jivesoftware.smack.xml.XmlPullParser; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.receipts.DeliveryReceiptManager.AutoReceiptMode; import com.jamesmurty.utils.XMLBuilder; import org.junit.jupiter.api.Test; import org.jxmpp.jid.Jid; -public class DeliveryReceiptTest extends SmackTestSuite { +public class DeliveryReceiptTest extends InitExtensions { private static Properties outputProperties = new Properties(); static { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/rsm/provider/RSMSetProviderTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/rsm/provider/RSMSetProviderTest.java index 1bc67a716..5c27f281c 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/rsm/provider/RSMSetProviderTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/rsm/provider/RSMSetProviderTest.java @@ -20,14 +20,14 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; import org.jivesoftware.smack.packet.IQ; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.rsm.packet.RSMSet; import org.junit.jupiter.api.Test; -public class RSMSetProviderTest extends SmackTestSuite { +public class RSMSetProviderTest extends InitExtensions { @Test public void testRsmSetProvider() throws Exception { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/time/packet/TimeTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/time/packet/TimeTest.java index e9156ecf3..76901233b 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/time/packet/TimeTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/time/packet/TimeTest.java @@ -22,11 +22,11 @@ import java.util.Calendar; import java.util.Date; import java.util.TimeZone; -import org.jivesoftware.smack.test.util.SmackTestSuite; +import org.jivesoftware.smackx.InitExtensions; import org.junit.jupiter.api.Test; -public class TimeTest extends SmackTestSuite { +public class TimeTest extends InitExtensions { @Test public void parseCurrentTimeTest() { diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/vcardtemp/VCardTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/vcardtemp/VCardTest.java index f5be6b1fd..40891c3aa 100644 --- a/smack-extensions/src/test/java/org/jivesoftware/smackx/vcardtemp/VCardTest.java +++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/vcardtemp/VCardTest.java @@ -21,15 +21,15 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import java.util.Arrays; -import org.jivesoftware.smack.test.util.SmackTestSuite; import org.jivesoftware.smack.util.PacketParserUtils; import org.jivesoftware.smack.util.stringencoder.Base64; +import org.jivesoftware.smackx.InitExtensions; import org.jivesoftware.smackx.vcardtemp.packet.VCard; import org.junit.jupiter.api.Test; -public class VCardTest extends SmackTestSuite { +public class VCardTest extends InitExtensions { @Test public void testParseFullVCardIQStanza() throws Throwable { diff --git a/smack-extensions/src/testFixtures/java/org/jivesoftware/util/ConnectionUtils.java b/smack-extensions/src/test/java/org/jivesoftware/util/ConnectionUtils.java similarity index 100% rename from smack-extensions/src/testFixtures/java/org/jivesoftware/util/ConnectionUtils.java rename to smack-extensions/src/test/java/org/jivesoftware/util/ConnectionUtils.java diff --git a/smack-extensions/src/testFixtures/java/org/jivesoftware/util/Protocol.java b/smack-extensions/src/test/java/org/jivesoftware/util/Protocol.java similarity index 100% rename from smack-extensions/src/testFixtures/java/org/jivesoftware/util/Protocol.java rename to smack-extensions/src/test/java/org/jivesoftware/util/Protocol.java diff --git a/smack-extensions/src/testFixtures/java/org/jivesoftware/util/Verification.java b/smack-extensions/src/test/java/org/jivesoftware/util/Verification.java similarity index 100% rename from smack-extensions/src/testFixtures/java/org/jivesoftware/util/Verification.java rename to smack-extensions/src/test/java/org/jivesoftware/util/Verification.java diff --git a/smack-im/build.gradle b/smack-im/build.gradle index f89202c2a..6c8fd90d1 100644 --- a/smack-im/build.gradle +++ b/smack-im/build.gradle @@ -7,5 +7,5 @@ Roster, Chat and other functionality.""" // sourceSet.test of the core subproject dependencies { compile project(':smack-core') - testImplementation(testFixtures(project(":smack-core"))) + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-integration-test/build.gradle b/smack-integration-test/build.gradle index c3e6602d4..27e983dd4 100644 --- a/smack-integration-test/build.gradle +++ b/smack-integration-test/build.gradle @@ -12,8 +12,15 @@ dependencies { compile 'org.reflections:reflections:0.9.11' compile 'eu.geekplace.javapinning:java-pinning-java7:1.1.0-alpha1' compile group: 'commons-io', name: 'commons-io', version: "$commonsIoVersion" - api "org.junit.jupiter:junit-jupiter-api:$junitVersion" - testFixturesApi(testFixtures(project(":smack-core"))) + // Note that the junit-vintage-engine runtime dependency is not + // directly required, but it declares a dependency to + // junit:junit:4.12, which we currently need in sinttest, since it + // (ab)uses @Before from org.junit + compile "org.junit.vintage:junit-vintage-engine:$junitVersion" + compile 'junit:junit:4.12' + // Add Junit 5 API for e.g. assertThrows() + implementation "org.junit.jupiter:junit-jupiter-api:$junitVersion" + testCompile project(path: ":smack-core", configuration: "testRuntime") testCompile "org.jxmpp:jxmpp-jid:$jxmppVersion:tests" } diff --git a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/SmackIntegrationTest.java b/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/SmackIntegrationTest.java similarity index 95% rename from smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/SmackIntegrationTest.java rename to smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/SmackIntegrationTest.java index 173b4d2e9..bcbfb8e35 100644 --- a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/SmackIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/SmackIntegrationTest.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.igniterealtime.smack.inttest.annotations; +package org.igniterealtime.smack.inttest; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; diff --git a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFramework.java b/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFramework.java index 006aa61d8..a8c541d8f 100644 --- a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFramework.java +++ b/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFramework.java @@ -65,9 +65,8 @@ import org.jivesoftware.smackx.debugger.EnhancedDebuggerWindow; import org.jivesoftware.smackx.iqregister.AccountManager; import org.igniterealtime.smack.inttest.Configuration.AccountRegistration; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.BeforeClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; +import org.junit.AfterClass; +import org.junit.BeforeClass; import org.reflections.Reflections; import org.reflections.scanners.MethodAnnotationsScanner; import org.reflections.scanners.MethodParameterScanner; @@ -746,10 +745,8 @@ public class SmackIntegrationTestFramework { .append(method.getName()) .append(" (") .append(testType.name()); - if (subdescriptons != null) { - sb.append(", "); - StringUtils.appendTo(Arrays.asList(subdescriptons), sb); - } + sb.append(", "); + StringUtils.appendTo(Arrays.asList(subdescriptons), sb); sb.append(')'); stringCache = sb.toString(); diff --git a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/AfterClass.java b/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/AfterClass.java deleted file mode 100644 index 3e567131d..000000000 --- a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/AfterClass.java +++ /dev/null @@ -1,30 +0,0 @@ -/** - * - * Copyright 2020 Florian Schmaus - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.igniterealtime.smack.inttest.annotations; - -import java.lang.annotation.Documented; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -@Documented -@Retention(RetentionPolicy.RUNTIME) -@Target(ElementType.METHOD) -public @interface AfterClass { - -} diff --git a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/BeforeClass.java b/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/BeforeClass.java deleted file mode 100644 index 49f159e9b..000000000 --- a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/annotations/BeforeClass.java +++ /dev/null @@ -1,30 +0,0 @@ -/** - * - * Copyright 2020 Florian Schmaus - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.igniterealtime.smack.inttest.annotations; - -import java.lang.annotation.Documented; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -@Documented -@Retention(RetentionPolicy.RUNTIME) -@Target(ElementType.METHOD) -public @interface BeforeClass { - -} diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/ChatTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/ChatTest.java index d956c92ee..ff058b8e8 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/ChatTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/ChatTest.java @@ -19,9 +19,9 @@ package org.jivesoftware.smack; import static org.jivesoftware.smackx.jiveproperties.JivePropertiesManager.addProperty; import static org.jivesoftware.smackx.jiveproperties.JivePropertiesManager.getProperty; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; import java.util.Date; @@ -34,10 +34,10 @@ import org.jivesoftware.smack.packet.StanzaBuilder; import org.jivesoftware.smackx.jiveproperties.JivePropertiesManager; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.BeforeClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; +import org.junit.AfterClass; +import org.junit.BeforeClass; /** * Tests for Chat Manager and for Chat Manager Listener. @@ -87,33 +87,33 @@ public class ChatTest extends AbstractSmackIntegrationTest { newChat.sendMessage(msg); Message msg2 = collector.nextResult(2000); - assertNotNull(msg2, "No message was received"); - assertEquals(msg.getSubject(), msg2.getSubject(), "Subjects are different"); - assertEquals(msg.getBody(), msg2.getBody(), "Bodies are different"); + assertNotNull("No message was received", msg2); + assertEquals("Subjects are different", msg.getSubject(), msg2.getSubject()); + assertEquals("Bodies are different", msg.getBody(), msg2.getBody()); assertEquals( + "favoriteColors are different", getProperty(msg, "favoriteColor"), - getProperty(msg2, "favoriteColor"), - "favoriteColors are different"); + getProperty(msg2, "favoriteColor")); assertEquals( + "ages are different", getProperty(msg, "age"), - getProperty(msg2, "age"), - "ages are different"); + getProperty(msg2, "age")); assertEquals( + "distances are different", getProperty(msg, "distance"), - getProperty(msg2, "distance"), - "distances are different"); + getProperty(msg2, "distance")); assertEquals( + "weights are different", getProperty(msg, "weight"), - getProperty(msg2, "weight"), - "weights are different"); + getProperty(msg2, "weight")); assertEquals( + "males are different", getProperty(msg, "male"), - getProperty(msg2, "male"), - "males are different"); + getProperty(msg2, "male")); assertEquals( + "birthdates are different", getProperty(msg, "birthdate"), - getProperty(msg2, "birthdate"), - "birthdates are different"); + getProperty(msg2, "birthdate")); } @SuppressWarnings("deprecation") @@ -131,7 +131,7 @@ public class ChatTest extends AbstractSmackIntegrationTest { chatManagerOne.addChatListener(listener); chatManagerOne.createChat(conTwo.getUser()); - assertTrue(invoked, "TestChatManagerListener wasn't invoked"); + assertTrue("TestChatManagerListener wasn't invoked", invoked); } finally { chatManagerOne.removeChatListener(listener); diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/LoginIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/LoginIntegrationTest.java index 47c299671..f43f18f2b 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/LoginIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/LoginIntegrationTest.java @@ -16,8 +16,8 @@ */ package org.jivesoftware.smack; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.fail; import java.io.IOException; import java.security.KeyManagementException; @@ -25,12 +25,11 @@ import java.security.NoSuchAlgorithmException; import org.jivesoftware.smack.sasl.SASLError; import org.jivesoftware.smack.sasl.SASLErrorException; -import org.jivesoftware.smack.sasl.packet.SaslNonza; import org.jivesoftware.smack.util.StringUtils; import org.igniterealtime.smack.inttest.AbstractSmackLowLevelIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; public class LoginIntegrationTest extends AbstractSmackLowLevelIntegrationTest { @@ -58,11 +57,13 @@ public class LoginIntegrationTest extends AbstractSmackLowLevelIntegrationTest { AbstractXMPPConnection connection = getUnconnectedConnection(); connection.connect(); - SASLErrorException saslErrorException = assertThrows(SASLErrorException.class, - () -> connection.login(nonExistentUserString, invalidPassword)); - - SaslNonza.SASLFailure saslFailure = saslErrorException.getSASLFailure(); - assertEquals(SASLError.not_authorized, saslFailure.getSASLError()); + try { + connection.login(nonExistentUserString, invalidPassword); + fail("Exception expected"); + } + catch (SASLErrorException e) { + assertEquals(SASLError.not_authorized, e.getSASLFailure().getSASLError()); + } } } diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/StreamManagementTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/StreamManagementTest.java index c9ca9095b..e5e77e4b0 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/StreamManagementTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/StreamManagementTest.java @@ -16,8 +16,8 @@ */ package org.jivesoftware.smack; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; import java.io.IOException; @@ -29,9 +29,9 @@ import org.jivesoftware.smack.packet.Message; import org.jivesoftware.smack.tcp.XMPPTCPConnection; import org.igniterealtime.smack.inttest.AbstractSmackSpecificLowLevelIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; public class StreamManagementTest extends AbstractSmackSpecificLowLevelIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/WaitForClosingStreamElementTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/WaitForClosingStreamElementTest.java index 65bf5a5a4..50ddf0123 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/WaitForClosingStreamElementTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/WaitForClosingStreamElementTest.java @@ -16,13 +16,13 @@ */ package org.jivesoftware.smack; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertTrue; import java.lang.reflect.Field; import org.igniterealtime.smack.inttest.AbstractSmackLowLevelIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; public class WaitForClosingStreamElementTest extends AbstractSmackLowLevelIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/XmppConnectionIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/XmppConnectionIntegrationTest.java index 4ec185c12..29dc527e6 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/XmppConnectionIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/XmppConnectionIntegrationTest.java @@ -25,8 +25,8 @@ import org.igniterealtime.smack.XmppConnectionStressTest; import org.igniterealtime.smack.XmppConnectionStressTest.StressTestFailedException.ErrorsWhileSendingOrReceivingException; import org.igniterealtime.smack.XmppConnectionStressTest.StressTestFailedException.NotAllMessagesReceivedException; import org.igniterealtime.smack.inttest.AbstractSmackLowLevelIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; public class XmppConnectionIntegrationTest extends AbstractSmackLowLevelIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/c2s/ModularXmppClientToServerConnectionLowLevelIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/c2s/ModularXmppClientToServerConnectionLowLevelIntegrationTest.java index 5d6e67bd0..c5a1564c6 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/c2s/ModularXmppClientToServerConnectionLowLevelIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/c2s/ModularXmppClientToServerConnectionLowLevelIntegrationTest.java @@ -27,8 +27,8 @@ import org.jivesoftware.smack.XMPPException; import org.jivesoftware.smack.XMPPException.XMPPErrorException; import org.igniterealtime.smack.inttest.AbstractSmackSpecificLowLevelIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; public class ModularXmppClientToServerConnectionLowLevelIntegrationTest extends AbstractSmackSpecificLowLevelIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/chat2/IncomingMessageListenerIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/chat2/IncomingMessageListenerIntegrationTest.java index 7d536f072..ca76ab280 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/chat2/IncomingMessageListenerIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/chat2/IncomingMessageListenerIntegrationTest.java @@ -19,8 +19,8 @@ package org.jivesoftware.smack.chat2; import org.jivesoftware.smack.packet.Message; import org.jivesoftware.smack.util.StringUtils; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; import org.jxmpp.jid.EntityBareJid; diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/chat2/OutgoingMessageListenerIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/chat2/OutgoingMessageListenerIntegrationTest.java index 0b0109e98..6118d2ed2 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/chat2/OutgoingMessageListenerIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/chat2/OutgoingMessageListenerIntegrationTest.java @@ -20,8 +20,8 @@ import org.jivesoftware.smack.packet.Message; import org.jivesoftware.smack.packet.MessageBuilder; import org.jivesoftware.smack.util.StringUtils; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; import org.jxmpp.jid.EntityBareJid; diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/roster/LowLevelRosterIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/roster/LowLevelRosterIntegrationTest.java index 305e9ae47..8b73081be 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/roster/LowLevelRosterIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/roster/LowLevelRosterIntegrationTest.java @@ -22,8 +22,8 @@ import org.jivesoftware.smack.AbstractXMPPConnection; import org.jivesoftware.smack.packet.Presence; import org.igniterealtime.smack.inttest.AbstractSmackLowLevelIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.IntegrationTestRosterUtil; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; import org.jxmpp.jid.FullJid; diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smack/roster/RosterIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smack/roster/RosterIntegrationTest.java index 55aad5c12..6f2d0a8fb 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smack/roster/RosterIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smack/roster/RosterIntegrationTest.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smack.roster; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertTrue; import java.util.Collection; import java.util.concurrent.TimeoutException; @@ -26,8 +26,8 @@ import org.jivesoftware.smack.roster.packet.RosterPacket.ItemType; import org.jivesoftware.smack.util.StringUtils; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.IntegrationTestRosterUtil; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; import org.jxmpp.jid.BareJid; diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/caps/EntityCapsTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/caps/EntityCapsTest.java index 0a0110882..8a4946e51 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/caps/EntityCapsTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/caps/EntityCapsTest.java @@ -16,10 +16,10 @@ */ package org.jivesoftware.smackx.caps; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; import java.util.HashSet; import java.util.Set; @@ -45,11 +45,11 @@ import org.jivesoftware.smackx.disco.ServiceDiscoveryManager; import org.jivesoftware.smackx.disco.packet.DiscoverInfo; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.BeforeClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; +import org.junit.AfterClass; +import org.junit.BeforeClass; public class EntityCapsTest extends AbstractSmackIntegrationTest { @@ -169,8 +169,7 @@ public class EntityCapsTest extends AbstractSmackIntegrationTest { DiscoverInfo info = sdmOne.discoverInfo(conTwo.getUser()); // that discovery should cause a disco#info assertTrue(discoInfoSend.get()); - assertTrue(info.containsFeature(dummyFeature), - "The info response '" + info + "' does not contain the expected feature '" + dummyFeature + '\''); + assertTrue("The info response '" + info + "' does not contain the expected feature '" + dummyFeature + '\'', info.containsFeature(dummyFeature)); discoInfoSend.set(false); // discover that diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/chatstate/ChatStateIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/chatstate/ChatStateIntegrationTest.java index 6b153b3a2..539bdb03d 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/chatstate/ChatStateIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/chatstate/ChatStateIntegrationTest.java @@ -25,10 +25,10 @@ import org.jivesoftware.smackx.chatstates.ChatStateListener; import org.jivesoftware.smackx.chatstates.ChatStateManager; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; +import org.junit.After; public class ChatStateIntegrationTest extends AbstractSmackIntegrationTest { @@ -83,7 +83,7 @@ public class ChatStateIntegrationTest extends AbstractSmackIntegrationTest { activeSyncPoint.waitForResult(timeout); } - @AfterClass + @After public void cleanup() { ChatStateManager manTwo = ChatStateManager.getInstance(conTwo); manTwo.removeChatStateListener(composingListener); diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/filetransfer/FileTransferIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/filetransfer/FileTransferIntegrationTest.java index 5d536aedb..4a0af1d50 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/filetransfer/FileTransferIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/filetransfer/FileTransferIntegrationTest.java @@ -28,8 +28,8 @@ import org.jivesoftware.smack.XMPPException.XMPPErrorException; import org.jivesoftware.smack.util.StringUtils; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.ResultSyncPoint; public class FileTransferIntegrationTest extends AbstractSmackIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/geolocation/GeolocationIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/geolocation/GeolocationIntegrationTest.java deleted file mode 100644 index 3909cee88..000000000 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/geolocation/GeolocationIntegrationTest.java +++ /dev/null @@ -1,106 +0,0 @@ -/** - * - * Copyright 2020 Aditya Borikar. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jivesoftware.smackx.geolocation; - -import java.net.URI; -import java.util.concurrent.TimeoutException; - -import org.jivesoftware.smack.SmackException.NoResponseException; -import org.jivesoftware.smack.SmackException.NotConnectedException; -import org.jivesoftware.smack.SmackException.NotLoggedInException; -import org.jivesoftware.smack.XMPPException.XMPPErrorException; -import org.jivesoftware.smack.packet.Message; - -import org.jivesoftware.smackx.geoloc.GeoLocationListener; -import org.jivesoftware.smackx.geoloc.GeoLocationManager; -import org.jivesoftware.smackx.geoloc.packet.GeoLocation; - -import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; -import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; -import org.igniterealtime.smack.inttest.util.IntegrationTestRosterUtil; -import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; -import org.jxmpp.jid.BareJid; -import org.jxmpp.util.XmppDateTime; - -public class GeolocationIntegrationTest extends AbstractSmackIntegrationTest { - - private final GeoLocationManager glm1; - private final GeoLocationManager glm2; - - public GeolocationIntegrationTest(SmackIntegrationTestEnvironment environment) { - super(environment); - glm1 = GeoLocationManager.getInstanceFor(conOne); - glm2 = GeoLocationManager.getInstanceFor(conTwo); - } - - @SmackIntegrationTest - public void test() throws TimeoutException, Exception { - GeoLocation.Builder builder = GeoLocation.builder(); - GeoLocation geoLocation1 = builder.setAccuracy(23d) - .setAlt(1000d) - .setAltAccuracy(10d) - .setArea("Delhi") - .setBearing(10d) - .setBuilding("Small Building") - .setCountry("India") - .setCountryCode("IN") - .setDescription("My Description") - .setError(90d) - .setFloor("top") - .setLat(25.098345d) - .setLocality("awesome") - .setLon(77.992034) - .setPostalcode("110085") - .setRegion("North") - .setRoom("small") - .setSpeed(250.0d) - .setStreet("Wall Street") - .setText("Unit Testing GeoLocation") - .setTimestamp(XmppDateTime.parseDate("2004-02-19")) - .setTzo("+5:30") - .setUri(new URI("http://xmpp.org")) - .build(); - - IntegrationTestRosterUtil.ensureBothAccountsAreSubscribedToEachOther(conOne, conTwo, timeout); - final SimpleResultSyncPoint geoLocationReceived = new SimpleResultSyncPoint(); - final GeoLocationListener geoLocationListener = new GeoLocationListener() { - - @Override - public void onGeoLocationUpdated(BareJid jid, GeoLocation geoLocation, Message message) { - if (geoLocation.equals(geoLocation1)) { - geoLocationReceived.signal(); - } - } - }; - - glm2.addGeoLocationListener(geoLocationListener); - - try { - glm1.sendGeolocation(geoLocation1); - geoLocationReceived.waitForResult(timeout); - } finally { - glm2.removeGeoLocationListener(geoLocationListener); - } - } - - @AfterClass - public void unsubscribe() throws NotLoggedInException, NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException { - IntegrationTestRosterUtil.ensureBothAccountsAreNotInEachOthersRoster(conOne, conTwo); - } -} diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/geolocation/package-info.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/geolocation/package-info.java deleted file mode 100644 index 7ff880f4e..000000000 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/geolocation/package-info.java +++ /dev/null @@ -1,23 +0,0 @@ -/** - * - * Copyright 2020 Aditya Borikar. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** - * Integration Tests for Smacks support for XEP-0080: User Location. - * - * @see - * XEP-0080: User Location - */ -package org.jivesoftware.smackx.geolocation; diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java index 7736c0657..1d2e06914 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smackx.httpfileupload; -import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.Assert.assertArrayEquals; import java.io.BufferedInputStream; import java.io.ByteArrayOutputStream; @@ -33,9 +33,9 @@ import org.jivesoftware.smack.SmackException.NotConnectedException; import org.jivesoftware.smack.XMPPException.XMPPErrorException; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; public class HttpFileUploadIntegrationTest extends AbstractSmackIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTControlIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTControlIntegrationTest.java index 498493b5b..4a346479b 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTControlIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTControlIntegrationTest.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smackx.iot; -import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.Assert.assertNotNull; import java.util.Collection; import java.util.concurrent.TimeoutException; @@ -31,8 +31,8 @@ import org.jivesoftware.smackx.iot.control.element.SetBoolData; import org.jivesoftware.smackx.iot.control.element.SetData; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.IntegrationTestRosterUtil; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; import org.jxmpp.jid.Jid; diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTDataIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTDataIntegrationTest.java index 858eae9a7..dc6fc538e 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTDataIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTDataIntegrationTest.java @@ -16,8 +16,8 @@ */ package org.jivesoftware.smackx.iot; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; import java.util.Collections; import java.util.List; @@ -35,8 +35,8 @@ import org.jivesoftware.smackx.iot.data.element.NodeElement; import org.jivesoftware.smackx.iot.data.element.TimestampElement; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.IntegrationTestRosterUtil; public class IoTDataIntegrationTest extends AbstractSmackIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTDiscoveryIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTDiscoveryIntegrationTest.java index df6bf345e..92c950a86 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTDiscoveryIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/iot/IoTDiscoveryIntegrationTest.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smackx.iot; -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.Assert.assertEquals; import org.jivesoftware.smack.SmackException; import org.jivesoftware.smack.SmackException.NoResponseException; @@ -31,9 +31,9 @@ import org.jivesoftware.smackx.iot.discovery.ThingState; import org.jivesoftware.smackx.iot.discovery.element.IoTClaimed; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.jxmpp.jid.Jid; public class IoTDiscoveryIntegrationTest extends AbstractSmackIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/iqversion/VersionIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/iqversion/VersionIntegrationTest.java index 9e903bbb8..577819e11 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/iqversion/VersionIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/iqversion/VersionIntegrationTest.java @@ -16,8 +16,8 @@ */ package org.jivesoftware.smackx.iqversion; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; import org.jivesoftware.smack.SmackException.NoResponseException; import org.jivesoftware.smack.SmackException.NotConnectedException; @@ -26,8 +26,8 @@ import org.jivesoftware.smack.XMPPException.XMPPErrorException; import org.jivesoftware.smackx.iqversion.packet.Version; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; public class VersionIntegrationTest extends AbstractSmackIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/mam/MamIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/mam/MamIntegrationTest.java index cb4751d21..b0cc99584 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/mam/MamIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/mam/MamIntegrationTest.java @@ -16,9 +16,9 @@ */ package org.jivesoftware.smackx.mam; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; import java.util.ArrayList; import java.util.List; @@ -38,9 +38,9 @@ import org.jivesoftware.smackx.mam.MamManager.MamQuery; import org.jivesoftware.smackx.mam.MamManager.MamQueryArgs; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; import org.jxmpp.jid.EntityBareJid; diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/mood/MoodIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/mood/MoodIntegrationTest.java index 3338bc4f2..afac2dd12 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/mood/MoodIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/mood/MoodIntegrationTest.java @@ -20,11 +20,11 @@ import org.jivesoftware.smack.SmackException; import org.jivesoftware.smack.XMPPException; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.IntegrationTestRosterUtil; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; +import org.junit.AfterClass; public class MoodIntegrationTest extends AbstractSmackIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatIntegrationTest.java index 7ba0c1d1e..aee855f6a 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatIntegrationTest.java @@ -16,8 +16,8 @@ */ package org.jivesoftware.smackx.muc; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; import java.util.List; @@ -35,9 +35,9 @@ import org.jivesoftware.smackx.muc.MultiUserChatException.NotAMucServiceExceptio import org.jivesoftware.smackx.muc.packet.MUCUser; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.ResultSyncPoint; import org.jxmpp.jid.DomainBareJid; import org.jxmpp.jid.EntityBareJid; diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatLowLevelIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatLowLevelIntegrationTest.java index e0f476306..ba4abd160 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatLowLevelIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatLowLevelIntegrationTest.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smackx.muc; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertTrue; import java.io.IOException; @@ -30,9 +30,9 @@ import org.jivesoftware.smackx.muc.MultiUserChat.MucCreateConfigFormHandle; import org.jivesoftware.smackx.muc.bookmarkautojoin.MucBookmarkAutojoinManager; import org.igniterealtime.smack.inttest.AbstractSmackLowLevelIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.jxmpp.jid.DomainBareJid; import org.jxmpp.jid.impl.JidCreate; import org.jxmpp.jid.parts.Localpart; diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/AbstractTwoUsersOmemoIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/AbstractTwoUsersOmemoIntegrationTest.java index 1057e695c..1e324b77c 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/AbstractTwoUsersOmemoIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/AbstractTwoUsersOmemoIntegrationTest.java @@ -16,19 +16,20 @@ */ package org.jivesoftware.smackx.omemo; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; import java.io.IOException; +import java.util.logging.Level; import org.jivesoftware.smack.SmackException; import org.jivesoftware.smack.XMPPException; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.BeforeClass; import org.igniterealtime.smack.inttest.util.IntegrationTestRosterUtil; +import org.junit.AfterClass; +import org.junit.BeforeClass; /** * Abstract OMEMO integration test framing, which creates and initializes two OmemoManagers (for conOne and conTwo). @@ -50,6 +51,7 @@ public abstract class AbstractTwoUsersOmemoIntegrationTest extends AbstractOmemo alice = OmemoManagerSetupHelper.prepareOmemoManager(conOne); bob = OmemoManagerSetupHelper.prepareOmemoManager(conTwo); + LOGGER.log(Level.FINE, "Alice: " + alice.getOwnDevice() + " Bob: " + bob.getOwnDevice()); assertFalse(alice.getDeviceId().equals(bob.getDeviceId())); // Subscribe presences diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/MessageEncryptionIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/MessageEncryptionIntegrationTest.java index 2efd1fb1a..26ba5ab08 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/MessageEncryptionIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/MessageEncryptionIntegrationTest.java @@ -16,8 +16,8 @@ */ package org.jivesoftware.smackx.omemo; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotEquals; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotEquals; import org.jivesoftware.smack.SmackException; import org.jivesoftware.smack.XMPPConnection; @@ -26,9 +26,9 @@ import org.jivesoftware.smack.packet.MessageBuilder; import org.jivesoftware.smackx.omemo.element.OmemoBundleElement; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; /** * Simple OMEMO message encryption integration test. @@ -85,8 +85,8 @@ public class MessageEncryptionIntegrationTest extends AbstractTwoUsersOmemoInteg b2 = bob.getOmemoService().getOmemoStoreBackend().packOmemoBundle(bob.getOwnDevice()); } - assertEquals(a1, a1_, "Alice sent bob a preKeyMessage, so her bundle MUST still be the same."); - assertNotEquals(b1, b2, "Bob just received a preKeyMessage from alice, so his bundle must have changed."); + assertEquals("Alice sent bob a preKeyMessage, so her bundle MUST still be the same.", a1, a1_); + assertNotEquals("Bob just received a preKeyMessage from alice, so his bundle must have changed.", b1, b2); // Message B -> A final String body3 = "The german words for 'leek' and 'wimp' are the same."; @@ -103,9 +103,9 @@ public class MessageEncryptionIntegrationTest extends AbstractTwoUsersOmemoInteg OmemoBundleElement a1__ = alice.getOmemoService().getOmemoStoreBackend().packOmemoBundle(alice.getOwnDevice()); OmemoBundleElement b2_ = bob.getOmemoService().getOmemoStoreBackend().packOmemoBundle(bob.getOwnDevice()); - assertEquals(a1_, a1__, "Since alice initiated the session with bob, at no time he sent a preKeyMessage, " + - "so her bundle MUST still be the same."); - assertEquals(b2, b2_, "Bob changed his bundle earlier, but at this point his bundle must be equal to " + - "after the first change."); + assertEquals("Since alice initiated the session with bob, at no time he sent a preKeyMessage, " + + "so her bundle MUST still be the same.", a1_, a1__); + assertEquals("Bob changed his bundle earlier, but at this point his bundle must be equal to " + + "after the first change.", b2, b2_); } } diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoMamDecryptionTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoMamDecryptionTest.java index 442643071..ee39eec90 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoMamDecryptionTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoMamDecryptionTest.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smackx.omemo; -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.Assert.assertEquals; import java.io.IOException; import java.util.List; @@ -32,9 +32,9 @@ import org.jivesoftware.smackx.omemo.exceptions.CryptoFailedException; import org.jivesoftware.smackx.omemo.exceptions.UndecidedOmemoIdentityException; import org.jivesoftware.smackx.omemo.util.MessageOrOmemoMessage; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; /** * This test sends a message from Alice to Bob, while Bob has automatic decryption disabled. diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoManagerSetupHelper.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoManagerSetupHelper.java index 467650409..f330880ad 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoManagerSetupHelper.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoManagerSetupHelper.java @@ -16,9 +16,9 @@ */ package org.jivesoftware.smackx.omemo; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; import java.io.IOException; import java.util.HashMap; @@ -40,6 +40,7 @@ import org.jivesoftware.smackx.pubsub.PubSubManager; import com.google.common.collect.Maps; + public class OmemoManagerSetupHelper { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/ReadOnlyDeviceIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/ReadOnlyDeviceIntegrationTest.java index 94c671962..bed2b014d 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/ReadOnlyDeviceIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/ReadOnlyDeviceIntegrationTest.java @@ -16,9 +16,9 @@ */ package org.jivesoftware.smackx.omemo; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static junit.framework.TestCase.assertEquals; +import static junit.framework.TestCase.assertFalse; +import static junit.framework.TestCase.assertTrue; import java.io.IOException; @@ -29,9 +29,9 @@ import org.jivesoftware.smackx.omemo.exceptions.CryptoFailedException; import org.jivesoftware.smackx.omemo.exceptions.ReadOnlyDeviceException; import org.jivesoftware.smackx.omemo.exceptions.UndecidedOmemoIdentityException; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; public class ReadOnlyDeviceIntegrationTest extends AbstractTwoUsersOmemoIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/SessionRenegotiationIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/SessionRenegotiationIntegrationTest.java index c4a649911..3b4391ba3 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/SessionRenegotiationIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/SessionRenegotiationIntegrationTest.java @@ -21,9 +21,9 @@ import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.XMPPException; import org.jivesoftware.smack.packet.MessageBuilder; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; public class SessionRenegotiationIntegrationTest extends AbstractTwoUsersOmemoIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/ox/OXSecretKeyBackupIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/ox/OXSecretKeyBackupIntegrationTest.java index 6ee03ddaf..e5e33f39b 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/ox/OXSecretKeyBackupIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/ox/OXSecretKeyBackupIntegrationTest.java @@ -16,10 +16,10 @@ */ package org.jivesoftware.smackx.ox; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static junit.framework.TestCase.assertEquals; +import static junit.framework.TestCase.assertNotNull; +import static junit.framework.TestCase.assertNull; +import static junit.framework.TestCase.assertTrue; import java.io.File; import java.io.IOException; @@ -44,16 +44,19 @@ import org.jivesoftware.smackx.ox.exception.MissingUserIdOnKeyException; import org.jivesoftware.smackx.ox.exception.NoBackupFoundException; import org.jivesoftware.smackx.ox.store.definition.OpenPgpStore; import org.jivesoftware.smackx.ox.store.filebased.FileBasedOpenPgpStore; +import org.jivesoftware.smackx.ox.util.OpenPgpPubSubUtil; import org.jivesoftware.smackx.pubsub.PubSubException; import org.bouncycastle.openpgp.PGPException; import org.bouncycastle.openpgp.PGPPublicKeyRing; import org.bouncycastle.openpgp.PGPSecretKeyRing; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.BeforeClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; import org.pgpainless.key.OpenPgpV4Fingerprint; import org.pgpainless.key.protection.UnprotectedKeysProtector; @@ -112,6 +115,18 @@ public class OXSecretKeyBackupIntegrationTest extends AbstractOpenPgpIntegration org.apache.commons.io.FileUtils.deleteDirectory(beforePath); } + @After + @Before + public void cleanUp() + throws XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException, + SmackException.NoResponseException { + OpenPgpPubSubUtil.deleteSecretKeyNode(alicePepManager); + + if (openPgpManager != null) { + openPgpManager.stopMetadataListener(); + } + } + @SmackIntegrationTest public void test() throws InvalidAlgorithmParameterException, NoSuchAlgorithmException, NoSuchProviderException, IOException, InterruptedException, PubSubException.NotALeafNodeException, diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/ox_im/OXInstantMessagingIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/ox_im/OXInstantMessagingIntegrationTest.java index b6c5325b2..4ca076c2b 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/ox_im/OXInstantMessagingIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/ox_im/OXInstantMessagingIntegrationTest.java @@ -16,8 +16,8 @@ */ package org.jivesoftware.smackx.ox_im; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static junit.framework.TestCase.assertFalse; +import static junit.framework.TestCase.assertTrue; import java.io.File; import java.io.IOException; @@ -34,13 +34,15 @@ import org.jivesoftware.smackx.ox.OpenPgpManager; import org.jivesoftware.smackx.ox.crypto.PainlessOpenPgpProvider; import org.jivesoftware.smackx.ox.element.SigncryptElement; import org.jivesoftware.smackx.ox.store.filebased.FileBasedOpenPgpStore; +import org.jivesoftware.smackx.ox.util.OpenPgpPubSubUtil; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.BeforeClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; +import org.junit.After; +import org.junit.AfterClass; +import org.junit.BeforeClass; import org.pgpainless.decryption_verification.OpenPgpMetadata; import org.pgpainless.key.OpenPgpV4Fingerprint; import org.pgpainless.key.protection.UnprotectedKeysProtector; @@ -96,6 +98,7 @@ public class OXInstantMessagingIntegrationTest extends AbstractOpenPgpIntegratio @BeforeClass @AfterClass public static void deleteStore() throws IOException { + LOGGER.log(Level.INFO, "Deleting storage directories..."); org.apache.commons.io.FileUtils.deleteDirectory(aliceStorePath); org.apache.commons.io.FileUtils.deleteDirectory(bobStorePath); } @@ -162,4 +165,26 @@ public class OXInstantMessagingIntegrationTest extends AbstractOpenPgpIntegratio bobReceivedMessage.waitForResult(timeout); } + @After + public void deleteKeyMetadata() + throws XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException, + SmackException.NoResponseException { + OpenPgpPubSubUtil.deletePubkeysListNode(alicePepManager); + OpenPgpPubSubUtil.deletePubkeysListNode(bobPepManager); + + if (aliceFingerprint != null) { + OpenPgpPubSubUtil.deletePublicKeyNode(alicePepManager, aliceFingerprint); + } + if (bobFingerprint != null) { + OpenPgpPubSubUtil.deletePublicKeyNode(bobPepManager, bobFingerprint); + } + + if (aliceOpenPgp != null) { + aliceOpenPgp.stopMetadataListener(); + } + + if (bobOpenPgp != null) { + bobOpenPgp.stopMetadataListener(); + } + } } diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/ping/PingIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/ping/PingIntegrationTest.java index 65c683093..6bb73b8c1 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/ping/PingIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/ping/PingIntegrationTest.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smackx.ping; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertTrue; import java.util.ArrayList; import java.util.Arrays; @@ -33,8 +33,8 @@ import org.jivesoftware.smack.SmackException.NotConnectedException; import org.jivesoftware.smack.XMPPConnection; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.jxmpp.jid.Jid; public class PingIntegrationTest extends AbstractSmackIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/pubsub/PubSubIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/pubsub/PubSubIntegrationTest.java index 61e66fa96..a0e0bff6c 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/pubsub/PubSubIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/pubsub/PubSubIntegrationTest.java @@ -16,8 +16,8 @@ */ package org.jivesoftware.smackx.pubsub; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; import static org.junit.jupiter.api.Assertions.assertThrows; import org.jivesoftware.smack.SmackConfiguration; @@ -28,9 +28,9 @@ import org.jivesoftware.smack.packet.StandardExtensionElement; import org.jivesoftware.smack.packet.StanzaError; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.TestNotPossibleException; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.jxmpp.jid.DomainBareJid; public class PubSubIntegrationTest extends AbstractSmackIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/usertune/UserTuneIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/usertune/UserTuneIntegrationTest.java index cae6c1d8d..b8492529b 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/usertune/UserTuneIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/usertune/UserTuneIntegrationTest.java @@ -26,11 +26,11 @@ import org.jivesoftware.smack.packet.Message; import org.jivesoftware.smackx.usertune.element.UserTuneElement; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; import org.igniterealtime.smack.inttest.util.IntegrationTestRosterUtil; import org.igniterealtime.smack.inttest.util.SimpleResultSyncPoint; +import org.junit.AfterClass; import org.jxmpp.jid.BareJid; public class UserTuneIntegrationTest extends AbstractSmackIntegrationTest { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/xdata/FormTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/xdata/FormTest.java index f4b2de824..af49c251a 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/xdata/FormTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/xdata/FormTest.java @@ -14,11 +14,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.jivesoftware.smackx.xdata; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.fail; import org.jivesoftware.smack.SmackException.NotConnectedException; import org.jivesoftware.smack.StanzaCollector; @@ -30,8 +31,8 @@ import org.jivesoftware.smackx.xdata.FormField.Type; import org.jivesoftware.smackx.xdata.packet.DataForm; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; /** * Tests the DataForms extensions. @@ -108,17 +109,23 @@ public class FormTest extends AbstractSmackIntegrationTest { // Get the message with the form to fill out Message msg2 = collector2.nextResult(); - assertNotNull(msg2, "Message not found"); + assertNotNull("Message not found", msg2); // Retrieve the form to fill out Form formToRespond = Form.getFormFrom(msg2); assertNotNull(formToRespond); assertNotNull(formToRespond.getField("name")); assertNotNull(formToRespond.getField("description")); // Obtain the form to send with the replies - final Form completedForm = formToRespond.createAnswerForm(); + Form completedForm = formToRespond.createAnswerForm(); assertNotNull(completedForm.getField("hidden_var")); // Check that a field of type String does not accept booleans - assertThrows(IllegalArgumentException.class, () -> completedForm.setAnswer("name", true)); + try { + completedForm.setAnswer("name", true); + fail("A boolean value was set to a field of type String"); + } + catch (IllegalArgumentException e) { + // This exception is expected. + } completedForm.setAnswer("name", "Credit card number invalid"); completedForm.setAnswer( "description", @@ -139,18 +146,18 @@ public class FormTest extends AbstractSmackIntegrationTest { // Get the message with the completed form Message msg3 = collector.nextResult(); - assertNotNull(msg3, "Message not found"); + assertNotNull("Message not found", msg3); // Retrieve the completed form - final Form completedForm2 = Form.getFormFrom(msg3); - assertNotNull(completedForm2); - assertNotNull(completedForm2.getField("name")); - assertNotNull(completedForm2.getField("description")); + completedForm = Form.getFormFrom(msg3); + assertNotNull(completedForm); + assertNotNull(completedForm.getField("name")); + assertNotNull(completedForm.getField("description")); assertEquals( - completedForm2.getField("name").getValues().get(0).toString(), + completedForm.getField("name").getValues().get(0).toString(), "Credit card number invalid"); - assertNotNull(completedForm2.getField("time")); - assertNotNull(completedForm2.getField("age")); - assertEquals("20", completedForm2.getField("age").getValues().get(0).toString(), "The age is bad"); + assertNotNull(completedForm.getField("time")); + assertNotNull(completedForm.getField("age")); + assertEquals("The age is bad", "20", completedForm.getField("age").getValues().get(0).toString()); } finally { diff --git a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFrameWorkTest.java b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFrameWorkTest.java index 94e7ad3c8..71ba75ac3 100644 --- a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFrameWorkTest.java +++ b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFrameWorkTest.java @@ -1,6 +1,6 @@ /** * - * Copyright 2019-2020 Florian Schmaus + * Copyright 2019 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,15 +16,15 @@ */ package org.igniterealtime.smack.inttest; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; import java.lang.reflect.Method; import java.util.List; import org.jivesoftware.smack.AbstractXMPPConnection; -import org.junit.jupiter.api.Test; +import org.junit.Test; public class SmackIntegrationTestFrameWorkTest { diff --git a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestXmppConnectionManagerTest.java b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestXmppConnectionManagerTest.java index 7a2de6097..1709f2a58 100644 --- a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestXmppConnectionManagerTest.java +++ b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestXmppConnectionManagerTest.java @@ -16,7 +16,7 @@ */ package org.igniterealtime.smack.inttest; -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.Assert.assertEquals; import java.lang.reflect.InvocationTargetException; import java.security.KeyManagementException; @@ -26,7 +26,7 @@ import org.jivesoftware.smack.c2s.ModularXmppClientToServerConnection; import org.jivesoftware.smack.c2s.ModularXmppClientToServerConnectionConfiguration; import org.jivesoftware.smack.tcp.XmppTcpTransportModuleDescriptor; -import org.junit.jupiter.api.Test; +import org.junit.Test; import org.jxmpp.stringprep.XmppStringprepException; public class SmackIntegrationTestXmppConnectionManagerTest { diff --git a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/unittest/SmackIntegrationTestFrameworkUnitTest.java b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/unittest/SmackIntegrationTestFrameworkUnitTest.java index e1398e73b..9df166d51 100644 --- a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/unittest/SmackIntegrationTestFrameworkUnitTest.java +++ b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/unittest/SmackIntegrationTestFrameworkUnitTest.java @@ -17,10 +17,10 @@ package org.igniterealtime.smack.inttest.unittest; import static org.igniterealtime.smack.inttest.SmackIntegrationTestUnitTestUtil.getFrameworkForUnitTest; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertThrows; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertThrows; +import static org.junit.Assert.assertTrue; import java.io.IOException; import java.lang.reflect.InvocationTargetException; @@ -38,27 +38,25 @@ import org.jivesoftware.smack.packet.StanzaError; import org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest; import org.igniterealtime.smack.inttest.DummySmackIntegrationTestFramework; import org.igniterealtime.smack.inttest.FailedTest; +import org.igniterealtime.smack.inttest.SmackIntegrationTest; import org.igniterealtime.smack.inttest.SmackIntegrationTestEnvironment; import org.igniterealtime.smack.inttest.SmackIntegrationTestFramework; import org.igniterealtime.smack.inttest.SmackIntegrationTestFramework.TestRunResult; -import org.igniterealtime.smack.inttest.annotations.AfterClass; -import org.igniterealtime.smack.inttest.annotations.BeforeClass; -import org.igniterealtime.smack.inttest.annotations.SmackIntegrationTest; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Test; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; public class SmackIntegrationTestFrameworkUnitTest { private static boolean beforeClassInvoked; private static boolean afterClassInvoked; - @BeforeAll + @BeforeClass public static void prepareSinttestUnitTest() { SmackIntegrationTestFramework.SINTTEST_UNIT_TEST = true; } - @AfterAll + @AfterClass public static void disallowSinntestUnitTest() { SmackIntegrationTestFramework.SINTTEST_UNIT_TEST = false; } @@ -127,8 +125,8 @@ public class SmackIntegrationTestFrameworkUnitTest { DummySmackIntegrationTestFramework sinttest = getFrameworkForUnitTest(BeforeAfterClassTest.class); sinttest.run(); - assertTrue(beforeClassInvoked, "A before class method should have been executed to this time"); - assertTrue(afterClassInvoked, "A after class method should have been executed to this time"); + assertTrue("A before class method should have been executed to this time", beforeClassInvoked); + assertTrue("A after class method should have been executed to this time", afterClassInvoked); } public static class BeforeAfterClassTest extends AbstractSmackIntegrationTest { @@ -149,8 +147,8 @@ public class SmackIntegrationTestFrameworkUnitTest { @SmackIntegrationTest public void test() { - assertTrue(beforeClassInvoked, "A before class method should have been executed to this time"); - assertFalse(afterClassInvoked, "A after class method shouldn't have been executed to this time"); + assertTrue("A before class method should have been executed to this time", beforeClassInvoked); + assertFalse("A after class method shouldn't have been executed to this time", afterClassInvoked); } } } diff --git a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/util/ResultSyncPointTest.java b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/util/ResultSyncPointTest.java index 589880204..414a66fe7 100644 --- a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/util/ResultSyncPointTest.java +++ b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/util/ResultSyncPointTest.java @@ -1,6 +1,6 @@ /** * - * Copyright 2015-2020 Florian Schmaus + * Copyright 2015 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,15 +16,14 @@ */ package org.igniterealtime.smack.inttest.util; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.Assert.assertEquals; import java.util.concurrent.BrokenBarrierException; import java.util.concurrent.CyclicBarrier; import org.jivesoftware.smack.util.Async; -import org.junit.jupiter.api.Test; +import org.junit.Test; public class ResultSyncPointTest { @@ -45,7 +44,7 @@ public class ResultSyncPointTest { assertEquals(result, receivedResult); } - @Test + @Test(expected = TestException.class) public void exceptionTestResultSyncPoint() throws Exception { final CyclicBarrier barrier = new CyclicBarrier(2); final ResultSyncPoint rsp = new ResultSyncPoint<>(); @@ -57,7 +56,7 @@ public class ResultSyncPointTest { } }); barrier.await(); - assertThrows(TestException.class, () -> rsp.waitForResult(60 * 1000)); + rsp.waitForResult(60 * 1000); } private static class TestException extends Exception { diff --git a/smack-java8-full/build.gradle b/smack-java8-full/build.gradle index 5ba426c3b..8bf5dfe6a 100644 --- a/smack-java8-full/build.gradle +++ b/smack-java8-full/build.gradle @@ -15,8 +15,7 @@ dependencies { api project(':smack-resolver-minidns-dox') api project(':smack-tcp') - testImplementation 'com.google.guava:guava:28.2-jre' - testImplementation 'org.jgrapht:jgrapht-io:1.3.1' + testImplementation project(path: ":smack-core", configuration: "testRuntime") } task printModularXmppClientToServerConnectionStateGraph(type: JavaExec) { diff --git a/smack-jingle-old/build.gradle b/smack-jingle-old/build.gradle index 7dff7e80e..f73c62913 100644 --- a/smack-jingle-old/build.gradle +++ b/smack-jingle-old/build.gradle @@ -7,4 +7,5 @@ dependencies { compile project(':smack-extensions') compile 'javax.media:jmf:2.1.1e' compile files('libs/jspeex-0.9.7-jfcom.jar', 'libs/jstun.jar', 'libs/Speex.jar') + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-legacy/build.gradle b/smack-legacy/build.gradle index b89dbdcc8..98c828ea4 100644 --- a/smack-legacy/build.gradle +++ b/smack-legacy/build.gradle @@ -6,6 +6,5 @@ Usually XEPs in the state 'retracted', 'rejected', 'deprecated', dependencies { compile project(':smack-core') compile project(':smack-extensions') - - testFixturesApi(testFixtures(project(":smack-core"))) + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentRoster.java b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentRoster.java index fb970d8fd..ab7187b2e 100644 --- a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentRoster.java +++ b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentRoster.java @@ -317,7 +317,7 @@ public class AgentRoster { // for a particular user a map with the presence packets saved for each resource. if (presence.getType() == Presence.Type.available) { // Ignore the presence packet unless it has an agent status extension. - AgentStatus agentStatus = (AgentStatus) presence.getExtensionElement( + AgentStatus agentStatus = (AgentStatus) presence.getExtension( AgentStatus.ELEMENT_NAME, AgentStatus.NAMESPACE); if (agentStatus == null) { return; diff --git a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentSession.java b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentSession.java index a090c5705..0b8022dfc 100644 --- a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentSession.java +++ b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentSession.java @@ -784,7 +784,7 @@ public class AgentSession { } // QueueOverview packet extensions contain basic information about a queue. - QueueOverview queueOverview = (QueueOverview) presence.getExtensionElement(QueueOverview.ELEMENT_NAME, QueueOverview.NAMESPACE); + QueueOverview queueOverview = (QueueOverview) presence.getExtension(QueueOverview.ELEMENT_NAME, QueueOverview.NAMESPACE); if (queueOverview != null) { if (queueOverview.getStatus() == null) { queue.setStatus(WorkgroupQueue.Status.CLOSED); @@ -803,7 +803,7 @@ public class AgentSession { // QueueDetails packet extensions contain information about the users in // a queue. - QueueDetails queueDetails = (QueueDetails) packet.getExtensionElement(QueueDetails.ELEMENT_NAME, QueueDetails.NAMESPACE); + QueueDetails queueDetails = (QueueDetails) packet.getExtension(QueueDetails.ELEMENT_NAME, QueueDetails.NAMESPACE); if (queueDetails != null) { queue.setUsers(queueDetails.getUsers()); // Fire event. @@ -812,7 +812,7 @@ public class AgentSession { } // Notify agent packets gives an overview of agent activity in a queue. - StandardExtensionElement notifyAgents = (StandardExtensionElement) presence.getExtensionElement("notify-agents", "http://jabber.org/protocol/workgroup"); + StandardExtensionElement notifyAgents = (StandardExtensionElement) presence.getExtension("notify-agents", "http://jabber.org/protocol/workgroup"); if (notifyAgents != null) { int currentChats = Integer.parseInt(notifyAgents.getFirstElement("current-chats", "http://jabber.org/protocol/workgroup").getText()); int maxChats = Integer.parseInt(notifyAgents.getFirstElement("max-chats", "http://jabber.org/protocol/workgroup").getText()); @@ -833,13 +833,13 @@ public class AgentSession { String sessionID = null; Map> metaData = null; - SessionID sessionIDExt = (SessionID) message.getExtensionElement(SessionID.ELEMENT_NAME, + SessionID sessionIDExt = (SessionID) message.getExtension(SessionID.ELEMENT_NAME, SessionID.NAMESPACE); if (sessionIDExt != null) { sessionID = sessionIDExt.getSessionID(); } - MetaData metaDataExt = (MetaData) message.getExtensionElement(MetaData.ELEMENT_NAME, + MetaData metaDataExt = (MetaData) message.getExtension(MetaData.ELEMENT_NAME, MetaData.NAMESPACE); if (metaDataExt != null) { metaData = metaDataExt.getMetaData(); diff --git a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/user/Workgroup.java b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/user/Workgroup.java index c4ad8134c..cf6da6015 100644 --- a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/user/Workgroup.java +++ b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/user/Workgroup.java @@ -515,8 +515,8 @@ public class Workgroup { if (packet instanceof Message) { Message msg = (Message) packet; // Check to see if the user left the queue. - ExtensionElement pe = msg.getExtensionElement("depart-queue", "http://jabber.org/protocol/workgroup"); - ExtensionElement queueStatus = msg.getExtensionElement("queue-status", "http://jabber.org/protocol/workgroup"); + ExtensionElement pe = msg.getExtension("depart-queue", "http://jabber.org/protocol/workgroup"); + ExtensionElement queueStatus = msg.getExtension("queue-status", "http://jabber.org/protocol/workgroup"); if (pe != null) { fireQueueDepartedEvent(); @@ -539,13 +539,13 @@ public class Workgroup { String sessionID = null; Map> metaData = null; - pe = msg.getExtensionElement(SessionID.ELEMENT_NAME, + pe = msg.getExtension(SessionID.ELEMENT_NAME, SessionID.NAMESPACE); if (pe != null) { sessionID = ((SessionID) pe).getSessionID(); } - pe = msg.getExtensionElement(MetaData.ELEMENT_NAME, + pe = msg.getExtension(MetaData.ELEMENT_NAME, MetaData.NAMESPACE); if (pe != null) { metaData = ((MetaData) pe).getMetaData(); diff --git a/smack-legacy/src/main/java/org/jivesoftware/smackx/xevent/MessageEventManager.java b/smack-legacy/src/main/java/org/jivesoftware/smackx/xevent/MessageEventManager.java index 1d74bc69b..267c5e39a 100644 --- a/smack-legacy/src/main/java/org/jivesoftware/smackx/xevent/MessageEventManager.java +++ b/smack-legacy/src/main/java/org/jivesoftware/smackx/xevent/MessageEventManager.java @@ -82,7 +82,7 @@ public final class MessageEventManager extends Manager { @Override public void processStanza(Stanza packet) { Message message = (Message) packet; - MessageEvent messageEvent = (MessageEvent) message.getExtensionElement("x", "jabber:x:event"); + MessageEvent messageEvent = (MessageEvent) message.getExtension("x", "jabber:x:event"); if (messageEvent.isMessageEventRequest()) { // Fire event for requests of message events for (String eventType : messageEvent.getEventTypes()) diff --git a/smack-legacy/src/main/java/org/jivesoftware/smackx/xroster/RosterExchangeManager.java b/smack-legacy/src/main/java/org/jivesoftware/smackx/xroster/RosterExchangeManager.java index baac6db8c..eabcd40ad 100644 --- a/smack-legacy/src/main/java/org/jivesoftware/smackx/xroster/RosterExchangeManager.java +++ b/smack-legacy/src/main/java/org/jivesoftware/smackx/xroster/RosterExchangeManager.java @@ -84,7 +84,7 @@ public class RosterExchangeManager { @Override public void processStanza(Stanza packet) { Message message = (Message) packet; - RosterExchange rosterExchange = (RosterExchange) message.getExtensionElement(ELEMENT, NAMESPACE); + RosterExchange rosterExchange = (RosterExchange) message.getExtension(ELEMENT, NAMESPACE); // Fire event for roster exchange listeners fireRosterExchangeListeners(message.getFrom(), rosterExchange.getRosterEntries()); } diff --git a/smack-omemo-signal/build.gradle b/smack-omemo-signal/build.gradle index 16af5ba86..3c81d2c9d 100644 --- a/smack-omemo-signal/build.gradle +++ b/smack-omemo-signal/build.gradle @@ -8,6 +8,6 @@ dependencies { compile project(":smack-omemo") compile 'org.whispersystems:signal-protocol-java:2.6.2' - testFixturesApi(testFixtures(project(":smack-core"))) + testCompile project(path: ":smack-core", configuration: "testRuntime") testCompile project(path: ":smack-omemo", configuration: "testRuntime") } diff --git a/smack-omemo-signal/src/main/java/org/jivesoftware/smackx/omemo/signal/SignalCachingOmemoStore.java b/smack-omemo-signal/src/main/java/org/jivesoftware/smackx/omemo/signal/SignalCachingOmemoStore.java index 135bd96fb..084d95f2b 100644 --- a/smack-omemo-signal/src/main/java/org/jivesoftware/smackx/omemo/signal/SignalCachingOmemoStore.java +++ b/smack-omemo-signal/src/main/java/org/jivesoftware/smackx/omemo/signal/SignalCachingOmemoStore.java @@ -44,7 +44,6 @@ public class SignalCachingOmemoStore extends CachingOmemoStore deviceIds = new TreeSet<>(); - for (OmemoDevice device : caches.keySet()) { - if (device.getJid().equals(localUser)) { - deviceIds.add(device.getDeviceId()); - } - } - return deviceIds; + return new TreeSet<>(); //TODO: ? } } @@ -443,9 +437,8 @@ public class CachingOmemoStore getCache(OmemoDevice device) { KeyCache cache = caches.get(device); @@ -458,12 +451,11 @@ public class CachingOmemoStore type of the identity key pair - * @param type of the public identity key - * @param type of a public preKey - * @param type of the public signed preKey - * @param type of the OMEMO session + * @param + * @param + * @param + * @param + * @param */ private static class KeyCache { private T_IdKeyPair identityKeyPair; diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/FileBasedOmemoStore.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/FileBasedOmemoStore.java index 62b742db5..d8b1df42c 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/FileBasedOmemoStore.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/FileBasedOmemoStore.java @@ -45,7 +45,6 @@ import org.jxmpp.jid.BareJid; /** * Like a rocket! - * Implementation of the {@link OmemoStore} class that uses plain files for storage. * * @author Paul Schaub */ @@ -515,7 +514,7 @@ public abstract class FileBasedOmemoStoreBlog Post explaining the danger of read-only devices. + * @see Blog Post explaining the danger of read-only devices. TODO: Add URL */ public static void setIgnoreReadOnlyDevices(boolean ignore) { IGNORE_READ_ONLY_DEVICES = ignore; @@ -40,7 +40,7 @@ public final class OmemoConfiguration { * Return true, if the client should stop encrypting messages to a read-only device. * * @return true if read-only devices should get ignored after a certain amount of unanswered messages. - * @see Blog Post explaining the danger of read-only devices. + * @see Blog Post explaining the danger of read-only devices. TODO: Add URL */ public static boolean getIgnoreReadOnlyDevices() { return IGNORE_READ_ONLY_DEVICES; @@ -53,7 +53,7 @@ public final class OmemoConfiguration { * This threshold is used to prevent read-only devices from weakening forward secrecy. * * @param maxReadOnlyMessageCount maximum number of allowed messages to a read-only device. - * @see Blog Post explaining the danger of read-only devices. + * @see Blog Post explaining the danger of read-only devices. TODO: Add URL */ public static void setMaxReadOnlyMessageCount(int maxReadOnlyMessageCount) { if (maxReadOnlyMessageCount <= 0) { @@ -69,7 +69,7 @@ public final class OmemoConfiguration { * This threshold is used to prevent read-only devices from weakening forward secrecy. * * @return maximum number of allowed messages to a read-only device. - * @see Blog Post explaining the danger of read-only devices. + * @see Blog Post explaining the danger of read-only devices. TODO: Add URL */ public static int getMaxReadOnlyMessageCount() { return MAX_READ_ONLY_MESSAGE_COUNT; diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoInitializer.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoInitializer.java index a5d1836ad..5f293490f 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoInitializer.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoInitializer.java @@ -19,7 +19,7 @@ package org.jivesoftware.smackx.omemo; import org.jivesoftware.smack.initializer.UrlInitializer; /** - * Initializer class that registers OMEMO providers. + * Initializer class that registers omemo providers. * * @author Paul Schaub */ diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoManager.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoManager.java index c319df84d..a3d2ff48d 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoManager.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoManager.java @@ -151,7 +151,7 @@ public final class OmemoManager extends Manager { * @param connection XmppConnection. * @param deviceId MUST NOT be null and MUST be greater than 0. * - * @return OmemoManager instance for the given connection and deviceId. + * @return manager TODO javadoc me please */ public static synchronized OmemoManager getInstanceFor(XMPPConnection connection, Integer deviceId) { if (deviceId == null || deviceId < 1) { @@ -182,7 +182,7 @@ public final class OmemoManager extends Manager { * * @param connection XmppConnection. * - * @return OmemoManager instance for the given connection and a determined deviceId. + * @return manager TODO javadoc me please */ public static synchronized OmemoManager getInstanceFor(XMPPConnection connection) { TreeMap managers = INSTANCES.get(connection); @@ -219,8 +219,7 @@ public final class OmemoManager extends Manager { /** * Return the TrustCallback of this manager. - * - * @return callback that is used for trust decisions. + * @return */ OmemoTrustCallback getTrustCallback() { return trustCallback; @@ -277,12 +276,9 @@ public final class OmemoManager extends Manager { /** * Return a set of all OMEMO capable devices of a contact. * Note, that this method does not explicitly refresh the device list of the contact, so it might be outdated. - * * @see #requestDeviceListUpdateFor(BareJid) - * * @param contact contact we want to get a set of device of. * @return set of known devices of that contact. - * * @throws IOException if an I/O error occurred. */ public Set getDevicesOf(BareJid contact) throws IOException { @@ -303,7 +299,6 @@ public final class OmemoManager extends Manager { * @param recipient recipients bareJid * @param message text to encrypt * @return encrypted message - * * @throws CryptoFailedException when something crypto related fails * @throws UndecidedOmemoIdentityException When there are undecided devices * @throws InterruptedException if the calling thread was interrupted. @@ -316,9 +311,9 @@ public final class OmemoManager extends Manager { throws CryptoFailedException, UndecidedOmemoIdentityException, InterruptedException, SmackException.NotConnectedException, SmackException.NoResponseException, SmackException.NotLoggedInException, IOException { - Set recipients = new HashSet<>(); - recipients.add(recipient); - return encrypt(recipients, message); + Set recipients = new HashSet<>(); + recipients.add(recipient); + return encrypt(recipients, message); } /** @@ -327,7 +322,6 @@ public final class OmemoManager extends Manager { * @param recipients recipients barejids * @param message text to encrypt * @return encrypted message. - * * @throws CryptoFailedException When something crypto related fails * @throws UndecidedOmemoIdentityException When there are undecided devices. * @throws InterruptedException if the calling thread was interrupted. @@ -354,7 +348,6 @@ public final class OmemoManager extends Manager { * @param muc multiUserChat * @param message message to send * @return encrypted message - * * @throws UndecidedOmemoIdentityException when there are undecided devices. * @throws CryptoFailedException if the OMEMO cryptography failed. * @throws XMPPException.XMPPErrorException if there was an XMPP error returned. @@ -409,7 +402,6 @@ public final class OmemoManager extends Manager { * * @param mamQuery The MAM query * @return list of decrypted OmemoMessages - * * @throws SmackException.NotLoggedInException if the Manager is not authenticated. * @throws IOException if an I/O error occurred. */ @@ -438,7 +430,6 @@ public final class OmemoManager extends Manager { * Distrust the fingerprint/OmemoDevice tuple. * The fingerprint must be the lowercase, hexadecimal fingerprint of the identityKey of the device and must * be of length 64. - * * @param device device * @param fingerprint fingerprint */ @@ -454,7 +445,6 @@ public final class OmemoManager extends Manager { * Returns true, if the fingerprint/OmemoDevice tuple is trusted, otherwise false. * The fingerprint must be the lowercase, hexadecimal fingerprint of the identityKey of the device and must * be of length 64. - * * @param device device * @param fingerprint fingerprint * @return true if this is a trusted OMEMO identity. @@ -471,7 +461,6 @@ public final class OmemoManager extends Manager { * Returns true, if the fingerprint/OmemoDevice tuple is decided by the user. * The fingerprint must be the lowercase, hexadecimal fingerprint of the identityKey of the device and must * be of length 64. - * * @param device device * @param fingerprint fingerprint * @return true if the trust is decided for the identity. @@ -489,7 +478,6 @@ public final class OmemoManager extends Manager { * secrecy. * * @param recipient recipient - * * @throws CorruptedOmemoKeyException When the used identityKeys are corrupted * @throws CryptoFailedException When something fails with the crypto * @throws CannotEstablishOmemoSessionException When we can't establish a session with the recipient @@ -506,8 +494,8 @@ public final class OmemoManager extends Manager { CryptoFailedException, CannotEstablishOmemoSessionException, IOException { XMPPConnection connection = connection(); MessageBuilder message = connection.getStanzaFactory() - .buildMessageStanza() - .to(recipient.getJid()); + .buildMessageStanza() + .to(recipient.getJid()); OmemoElement element = getOmemoService().createRatchetUpdateElement(new LoggedInOmemoManager(this), recipient); message.addExtension(element); @@ -522,7 +510,6 @@ public final class OmemoManager extends Manager { * * @param contact contact * @return true if contact has at least one OMEMO capable device. - * * @throws SmackException.NotConnectedException if the XMPP connection is not connected. * @throws InterruptedException if the calling thread was interrupted. * @throws SmackException.NoResponseException if there was no response from the remote entity. @@ -543,11 +530,10 @@ public final class OmemoManager extends Manager { * * @param multiUserChat MUC * @return true if chat supports OMEMO - * - * @throws XMPPException.XMPPErrorException if there was an XMPP protocol level error - * @throws SmackException.NotConnectedException if the connection is not connected - * @throws InterruptedException if the thread is interrupted - * @throws SmackException.NoResponseException if the server does not respond + * @throws XMPPException.XMPPErrorException if + * @throws SmackException.NotConnectedException something + * @throws InterruptedException goes + * @throws SmackException.NoResponseException wrong */ public boolean multiUserChatSupportsOmemo(MultiUserChat multiUserChat) throws XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException, @@ -563,7 +549,6 @@ public final class OmemoManager extends Manager { * @param connection XMPPConnection * @param server domainBareJid of the server to test * @return true if server supports pep - * * @throws XMPPException.XMPPErrorException if there was an XMPP error returned. * @throws SmackException.NotConnectedException if the XMPP connection is not connected. * @throws InterruptedException if the calling thread was interrupted. @@ -579,8 +564,7 @@ public final class OmemoManager extends Manager { /** * Return the fingerprint of our identity key. * - * @return our own OMEMO fingerprint - * + * @return fingerprint TODO javadoc me please * @throws SmackException.NotLoggedInException if we don't know our bareJid yet. * @throws CorruptedOmemoKeyException if our identityKey is corrupted. * @throws IOException if an I/O error occurred. @@ -596,10 +580,8 @@ public final class OmemoManager extends Manager { /** * Get the fingerprint of a contacts device. - * * @param device contacts OmemoDevice - * @return fingerprint of the given OMEMO device. - * + * @return fingerprint TODO javadoc me please * @throws CannotEstablishOmemoSessionException if we have no session yet, and are unable to create one. * @throws SmackException.NotLoggedInException if the XMPP connection is not authenticated. * @throws CorruptedOmemoKeyException if the copy of the fingerprint we have is corrupted. @@ -627,7 +609,6 @@ public final class OmemoManager extends Manager { /** * Return all OmemoFingerprints of active devices of a contact. * TODO: Make more fail-safe - * * @param contact contact * @return Map of all active devices of the contact and their fingerprints. * @@ -675,7 +656,6 @@ public final class OmemoManager extends Manager { /** * Remove an OmemoMessageListener. - * * @param listener OmemoMessageListener */ public void removeOmemoMessageListener(OmemoMessageListener listener) { @@ -693,7 +673,6 @@ public final class OmemoManager extends Manager { /** * Remove an OmemoMucMessageListener. - * * @param listener OmemoMucMessageListener */ public void removeOmemoMucMessageListener(OmemoMucMessageListener listener) { @@ -704,7 +683,6 @@ public final class OmemoManager extends Manager { * Request a deviceList update from contact contact. * * @param contact contact we want to obtain the deviceList from. - * * @throws InterruptedException if the calling thread was interrupted. * @throws PubSubException.NotALeafNodeException if a PubSub leaf node operation was attempted on a non-leaf node. * @throws XMPPException.XMPPErrorException if there was an XMPP error returned. @@ -751,8 +729,8 @@ public final class OmemoManager extends Manager { */ public synchronized void rotateSignedPreKey() throws CorruptedOmemoKeyException, SmackException.NotLoggedInException, XMPPException.XMPPErrorException, - SmackException.NotConnectedException, InterruptedException, SmackException.NoResponseException, - IOException, PubSubException.NotALeafNodeException { + SmackException.NotConnectedException, InterruptedException, SmackException.NoResponseException, + IOException, PubSubException.NotALeafNodeException { if (!connection().isAuthenticated()) { throw new SmackException.NotLoggedInException(); } @@ -767,7 +745,6 @@ public final class OmemoManager extends Manager { /** * Return true, if the given Stanza contains an OMEMO element 'encrypted'. - * * @param stanza stanza * @return true if stanza has extension 'encrypted' */ @@ -786,8 +763,7 @@ public final class OmemoManager extends Manager { /** * Returns a pseudo random number from the interval [1, Integer.MAX_VALUE]. - * - * @return a random deviceId. + * @return deviceId TODO javadoc me please */ public static int randomDeviceId() { return new Random().nextInt(Integer.MAX_VALUE - 1) + 1; @@ -796,7 +772,7 @@ public final class OmemoManager extends Manager { /** * Return the BareJid of the user. * - * @return our own bare JID. + * @return bareJid TODO javadoc me please */ public BareJid getOwnJid() { if (ownJid == null && connection().isAuthenticated()) { @@ -809,7 +785,7 @@ public final class OmemoManager extends Manager { /** * Return the deviceId of this OmemoManager. * - * @return this OmemoManagers deviceId. + * @return deviceId TODO javadoc me please */ public synchronized Integer getDeviceId() { return deviceId; @@ -818,7 +794,7 @@ public final class OmemoManager extends Manager { /** * Return the OmemoDevice of the user. * - * @return our own OmemoDevice + * @return omemoDevice TODO javadoc me please */ public synchronized OmemoDevice getOwnDevice() { BareJid jid = getOwnJid(); @@ -830,7 +806,6 @@ public final class OmemoManager extends Manager { /** * Set the deviceId of the manager to nDeviceId. - * * @param nDeviceId new deviceId */ synchronized void setDeviceId(int nDeviceId) { @@ -951,7 +926,7 @@ public final class OmemoManager extends Manager { /** * Return the OMEMO service object. * - * @return the OmemoService object related to this OmemoManager. + * @return omemoService TODO javadoc me please */ OmemoService getOmemoService() { throwIfNoServiceSet(); @@ -1037,7 +1012,7 @@ public final class OmemoManager extends Manager { OmemoDeviceListElement receivedDeviceList = (OmemoDeviceListElement) payloadItem.getPayload(); try { getOmemoService().getOmemoStoreBackend().mergeCachedDeviceList(getOwnDevice(), from, - receivedDeviceList); + receivedDeviceList); if (!from.asBareJid().equals(getOwnJid())) { continue; @@ -1046,8 +1021,8 @@ public final class OmemoManager extends Manager { deviceList = getOmemoService().cleanUpDeviceList(getOwnDevice()); } catch (IOException e) { LOGGER.log(Level.SEVERE, - "IOException while processing OMEMO PEP device updates. Message: " + message, - e); + "IOException while processing OMEMO PEP device updates. Message: " + message, + e); continue; } final OmemoDeviceListElement_VAxolotl newDeviceList = new OmemoDeviceListElement_VAxolotl(deviceList); diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoMessage.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoMessage.java index e2eb8635a..2d5554e7f 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoMessage.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoMessage.java @@ -49,7 +49,7 @@ public class OmemoMessage { /** * Return the original OmemoElement (<encrypted/>). * - * @return omemoElement of the message + * @return omemoElement TODO javadoc me please */ public OmemoElement getElement() { return element; @@ -58,7 +58,7 @@ public class OmemoMessage { /** * Return the messageKey (or transported key in case of a KeyTransportMessage). * - * @return encryption key that protects the message payload + * @return key TODO javadoc me please */ public byte[] getKey() { return messageKey.clone(); @@ -66,7 +66,6 @@ public class OmemoMessage { /** * Return the initialization vector belonging to the key. - * * @return initialization vector */ public byte[] getIv() { @@ -82,7 +81,6 @@ public class OmemoMessage { /** * Create a new outgoing OMEMO message. - * * @param element OmemoElement * @param key messageKey (or transported key) * @param iv initialization vector belonging to key @@ -98,7 +96,6 @@ public class OmemoMessage { /** * Return a list of all devices the sender originally intended to encrypt the message for. - * * @return list of intended recipients. */ public Set getIntendedDevices() { @@ -107,7 +104,6 @@ public class OmemoMessage { /** * Return a map of all skipped recipients and the reasons for skipping. - * * @return map of skipped recipients and reasons for that. */ public HashMap getSkippedDevices() { @@ -116,7 +112,6 @@ public class OmemoMessage { /** * Determine, if some recipients were skipped during encryption. - * * @return true if recipients were skipped. */ public boolean isMissingRecipients() { @@ -160,7 +155,6 @@ public class OmemoMessage { /** * Create a new incoming OMEMO message. - * * @param element original OmemoElement * @param key message key (or transported key) * @param iv respective initialization vector @@ -179,7 +173,6 @@ public class OmemoMessage { /** * Return the decrypted body of the message. - * * @return decrypted body */ public String getBody() { @@ -188,7 +181,6 @@ public class OmemoMessage { /** * Return the fingerprint of the messages sender device. - * * @return fingerprint of sender */ public OmemoFingerprint getSendersFingerprint() { @@ -197,8 +189,7 @@ public class OmemoMessage { /** * Return the OmemoDevice which sent the message. - * - * @return OMEMO device that sent the message. + * @return senderDevice TODO javadoc me please */ public OmemoDevice getSenderDevice() { return senderDevice; @@ -206,7 +197,6 @@ public class OmemoMessage { /** * Return true, if this message was sent as a preKeyMessage. - * * @return preKeyMessage or not */ boolean isPreKeyMessage() { @@ -216,7 +206,6 @@ public class OmemoMessage { /** * Return true, if the message was a KeyTransportMessage. * A KeyTransportMessage is a OmemoMessage without a payload. - * * @return keyTransportMessage? */ public boolean isKeyTransportMessage() { diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoRatchet.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoRatchet.java index 838784806..e00815283 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoRatchet.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoRatchet.java @@ -86,7 +86,6 @@ public abstract class OmemoRatchet Elliptic Curve PublicKey class * @param Bundle class * @param Cipher class - * * @author Paul Schaub */ public abstract class OmemoService @@ -108,18 +107,22 @@ public abstract class OmemoService INSTANCE; private OmemoStore omemoStore; private final HashMap> omemoRatchets = new HashMap<>(); + /** + * Create a new OmemoService object. This should only happen once. + */ protected OmemoService() { - } /** * Return the singleton instance of this class. When no instance is set, throw an IllegalStateException instead. - * * @return instance. */ public static OmemoService getInstance() { @@ -226,10 +229,9 @@ public abstract class OmemoServiceXEP-0384: Sending a key. * * @param managerGuard Initialized OmemoManager. * @param contactsDevices set of recipient devices. * @param key AES-Key to be transported. * @param iv initialization vector to be used with the key. - * - * @return a new key transport element + * @return KeyTransportElement TODO javadoc me please * * @throws InterruptedException if the calling thread was interrupted. * @throws UndecidedOmemoIdentityException if the list of recipients contains an undecided device @@ -579,11 +577,9 @@ public abstract class OmemoService getUndecidedDevices(OmemoDevice userDevice, OmemoTrustCallback callback, Set devices) throws IOException { @@ -866,6 +853,7 @@ public abstract class OmemoService decryptMamQueryResult(OmemoManager.LoggedInOmemoManager managerGuard, @@ -1069,7 +1051,7 @@ public abstract class OmemoService Elliptic Curve PublicKey class * @param Bundle class * @param Cipher class - * * @author Paul Schaub */ public abstract class OmemoStore { @@ -69,7 +68,6 @@ public abstract class OmemoStore preKeyHashMap) throws IOException { @@ -469,7 +444,6 @@ public abstract class OmemoStore loadOmemoPreKeys(OmemoDevice userDevice) throws IOException; @@ -479,8 +453,7 @@ public abstract class OmemoStore loadOmemoSignedPreKeys(OmemoDevice userDevice) throws IOException; @@ -504,8 +476,7 @@ public abstract class OmemoStore loadAllRawSessionsOf(OmemoDevice userDevice, BareJid contact) throws IOException; @@ -560,7 +528,6 @@ public abstract class OmemoStore getPreKeys() { if (preKeys == null) { @@ -209,17 +209,15 @@ public abstract class OmemoBundleElement implements ExtensionElement { @Override public String toString() { - StringBuilder sb = new StringBuilder("OmemoBundleElement[\n"); - sb.append(SIGNED_PRE_KEY_PUB).append(' ').append(SIGNED_PRE_KEY_ID).append('=').append(signedPreKeyId) - .append(':').append(signedPreKeyB64).append('\n') - .append(SIGNED_PRE_KEY_SIG).append(": ").append(signedPreKeySignatureB64).append('\n') - .append(IDENTITY_KEY).append(": ").append(identityKeyB64).append('\n') - .append(PRE_KEYS).append(" (").append(preKeysB64.size()).append(")\n"); + String out = "OmemoBundleElement[\n"; + out += SIGNED_PRE_KEY_PUB + " " + SIGNED_PRE_KEY_ID + "=" + signedPreKeyId + ": " + signedPreKeyB64 + "\n"; + out += SIGNED_PRE_KEY_SIG + ": " + signedPreKeySignatureB64 + "\n"; + out += IDENTITY_KEY + ": " + identityKeyB64 + "\n"; + out += PRE_KEYS + " (" + preKeysB64.size() + ")\n"; for (Map.Entry e : preKeysB64.entrySet()) { - sb.append(PRE_KEY_PUB).append(' ').append(PRE_KEY_ID).append('=').append(e.getKey()).append(": ").append(e.getValue()).append('\n'); + out += PRE_KEY_PUB + " " + PRE_KEY_ID + "=" + e.getKey() + ": " + e.getValue() + "\n"; } - sb.append(']'); - return sb.toString(); + return out; } @Override diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java index bcf616111..945a6611f 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java @@ -21,9 +21,8 @@ import static org.jivesoftware.smackx.omemo.util.OmemoConstants.OMEMO_NAMESPACE_ import java.util.HashMap; /** - * OMEMO device bundle as described by the protocol. - * - * @see XEP-0384: OMEMO Encryption (Example 3) + * OMEMO device bundle as described here: + * https://xmpp.org/extensions/xep-0384.html#usecases-announcing (Example 3). * * @author Paul Schaub */ diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoDeviceListElement.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoDeviceListElement.java index 8644586d0..2b2515cb4 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoDeviceListElement.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoDeviceListElement.java @@ -18,7 +18,6 @@ package org.jivesoftware.smackx.omemo.element; import java.util.Collections; import java.util.HashSet; -import java.util.Iterator; import java.util.Set; import org.jivesoftware.smack.packet.ExtensionElement; @@ -79,14 +78,10 @@ public abstract class OmemoDeviceListElement implements ExtensionElement { @Override public final String toString() { - StringBuilder sb = new StringBuilder("OmemoDeviceListElement["); - Iterator iterator = deviceIds.iterator(); + String out = "OmemoDeviceListElement["; for (int i : deviceIds) { - sb.append(i); - if (iterator.hasNext()) { - sb.append(','); - } + out += i + ","; } - return sb.append(']').toString(); + return out.substring(0, out.length() - 1) + "]"; } } diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoElement.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoElement.java index fea020003..6d28da919 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoElement.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoElement.java @@ -55,7 +55,7 @@ public abstract class OmemoElement implements ExtensionElement { /** * Return the payload of the message. * - * @return encrypted payload of the message. + * @return payload TODO javadoc me please */ public byte[] getPayload() { if (payload == null) { diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/CannotEstablishOmemoSessionException.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/CannotEstablishOmemoSessionException.java index 2d4e65513..e20782632 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/CannotEstablishOmemoSessionException.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/CannotEstablishOmemoSessionException.java @@ -79,8 +79,7 @@ public class CannotEstablishOmemoSessionException extends Exception { /** * Return true, if there is at least one recipient, which would not be able to decipher the message on any of * their devices. - * - * @return true if the exception requires to be thrown + * @return boolean TODO javadoc me please */ public boolean requiresThrowing() { for (Map.Entry> entry : failures.entrySet()) { diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/MultipleCryptoFailedException.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/MultipleCryptoFailedException.java index 8a890cca0..8627823f9 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/MultipleCryptoFailedException.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/MultipleCryptoFailedException.java @@ -22,6 +22,9 @@ import java.util.List; public final class MultipleCryptoFailedException extends CryptoFailedException { + /** + * + */ private static final long serialVersionUID = 1L; private final List cryptoFailedExceptions; diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/ReadOnlyDeviceException.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/ReadOnlyDeviceException.java index cc82bc365..ce69d1a30 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/ReadOnlyDeviceException.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/ReadOnlyDeviceException.java @@ -44,8 +44,7 @@ public class ReadOnlyDeviceException extends Exception { /** * Return the device in question. - * - * @return device that is read-only. + * @return device TODO javadoc me please */ public OmemoDevice getDevice() { return device; diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/StaleDeviceException.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/StaleDeviceException.java index 948eac040..c3453b99e 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/StaleDeviceException.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/StaleDeviceException.java @@ -31,8 +31,8 @@ public class StaleDeviceException extends Exception { * This exception gets thrown if a message cannot be encrypted for a device due to the device being inactive for too long (stale). * * @param device OmemoDevice. - * @param lastMessageDate date of the last received message from the device. - * @param lastDeviceIdPublicationDate date on which the device ID was last published via pubsub. + * @param lastMessageDate TODO javadoc me please + * @param lastDeviceIdPublicationDate TODO javadoc me please */ public StaleDeviceException(OmemoDevice device, Date lastMessageDate, Date lastDeviceIdPublicationDate) { this.device = device; @@ -42,7 +42,6 @@ public class StaleDeviceException extends Exception { /** * Return the date on which the last OMEMO message sent from the device was received. - * * @return last messages date */ public Date getLastMessageDate() { @@ -51,7 +50,6 @@ public class StaleDeviceException extends Exception { /** * Return the date of the last time the deviceId was republished after being inactive/non-existent before. - * * @return date of last deviceId (re)publication. */ public Date getLastDeviceIdPublicationDate() { @@ -60,7 +58,6 @@ public class StaleDeviceException extends Exception { /** * Return the stale OMEMO device. - * * @return stale device */ public OmemoDevice getDevice() { diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/UntrustedOmemoIdentityException.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/UntrustedOmemoIdentityException.java index ab5eac9ce..3e8b0b458 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/UntrustedOmemoIdentityException.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/UntrustedOmemoIdentityException.java @@ -56,7 +56,6 @@ public class UntrustedOmemoIdentityException extends Exception { /** * Return the device which sent the message. - * * @return omemoDevice. */ public OmemoDevice getDevice() { diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/internal/CiphertextTuple.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/internal/CiphertextTuple.java index 32483d17c..60fac8469 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/internal/CiphertextTuple.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/internal/CiphertextTuple.java @@ -41,7 +41,7 @@ public class CiphertextTuple { /** * Return the ciphertext. * - * @return ciphertext part of the tuple + * @return ciphertext TODO javadoc me please */ public byte[] getCiphertext() { return ciphertext; @@ -50,7 +50,7 @@ public class CiphertextTuple { /** * Return the messageType. * - * @return type of the message + * @return messageType TODO javadoc me please */ public int getMessageType() { return this.messageType; diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/internal/OmemoDevice.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/internal/OmemoDevice.java index 11041f0c2..762494281 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/internal/OmemoDevice.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/internal/OmemoDevice.java @@ -43,7 +43,7 @@ public class OmemoDevice { /** * Return the BareJid of the device owner. * - * @return bare JID of the device owner. + * @return bareJid TODO javadoc me please */ public BareJid getJid() { return this.jid; @@ -52,7 +52,7 @@ public class OmemoDevice { /** * Return the OMEMO device Id of the device. * - * @return OMEMO device ID. + * @return deviceId TODO javadoc me please */ public int getDeviceId() { return this.deviceId; diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/listener/OmemoMucMessageListener.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/listener/OmemoMucMessageListener.java index 3bccac5cf..90683e5ee 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/listener/OmemoMucMessageListener.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/listener/OmemoMucMessageListener.java @@ -23,14 +23,12 @@ import org.jivesoftware.smackx.omemo.OmemoMessage; /** * Listener interface that allows implementations to receive decrypted OMEMO MUC messages. - * * @author Paul Schaub */ public interface OmemoMucMessageListener { /** * Gets called whenever an OMEMO message has been received in a MultiUserChat and successfully decrypted. - * * @param muc MultiUserChat the message was sent in * @param stanza Original Stanza * @param decryptedOmemoMessage decrypted Omemo message diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/trust/TrustState.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/trust/TrustState.java index 8ad2d2ae0..605298c26 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/trust/TrustState.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/trust/TrustState.java @@ -17,16 +17,7 @@ package org.jivesoftware.smackx.omemo.trust; public enum TrustState { - /** - * User has yet to decide, whether the identity is trusted or not. - */ - undecided, - /** - * User decided NOT to trust this device. - */ - untrusted, - /** - * User decided to trust this device. - */ - trusted + undecided, // User has yet to decide, whether the identity is trusted or not. + untrusted, // User decided NOT to trust this device. + trusted // User decided to trust this device. } diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoConstants.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoConstants.java index f91dc199f..885260568 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoConstants.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoConstants.java @@ -18,11 +18,11 @@ package org.jivesoftware.smackx.omemo.util; /** * Some constants related to OMEMO. - * * @author Paul Schaub */ public final class OmemoConstants { + // Constants /** * Omemo related namespace. */ diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoKeyUtil.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoKeyUtil.java index 607181552..1954246f1 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoKeyUtil.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoKeyUtil.java @@ -55,8 +55,7 @@ public abstract class OmemoKeyUtil bundles(OmemoBundleElement bundle, OmemoDevice contact) throws CorruptedOmemoKeyException { @@ -140,7 +136,6 @@ public abstract class OmemoKeyUtil ratchet, String message) throws NoSuchPaddingException, BadPaddingException, InvalidKeyException, NoSuchAlgorithmException, IllegalBlockSizeException, - InvalidAlgorithmParameterException { + UnsupportedEncodingException, InvalidAlgorithmParameterException { this(userDevice, callback, ratchet, generateKey(KEYTYPE, KEYLENGTH), generateIv(), message); } @@ -140,20 +144,19 @@ public class OmemoMessageBuilderOMEMO security audit. * * @param message plaintext message - * * @throws NoSuchPaddingException if the requested padding mechanism is not availble. + * @throws NoSuchProviderException * @throws InvalidAlgorithmParameterException if the provided arguments are invalid. * @throws InvalidKeyException if the key is invalid. * @throws BadPaddingException if the input data is not padded properly. * @throws IllegalBlockSizeException if the input data length is incorrect. */ private void setMessage(String message) - throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidAlgorithmParameterException, - InvalidKeyException, BadPaddingException, IllegalBlockSizeException { + throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidAlgorithmParameterException, + InvalidKeyException, BadPaddingException, IllegalBlockSizeException { if (message == null) { return; } @@ -199,7 +202,7 @@ public class OmemoMessageBuilder payload = (PayloadItem) items.getItems().get(0); + PayloadItem payload = (PayloadItem) items.getItems().get(0); PublicKeysListElement listElement = (PublicKeysListElement) payload.getPayload(); processPublicKeysListElement(from, listElement); diff --git a/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/util/OpenPgpPubSubUtil.java b/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/util/OpenPgpPubSubUtil.java index 89be5eb65..cbe0bd4c2 100644 --- a/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/util/OpenPgpPubSubUtil.java +++ b/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/util/OpenPgpPubSubUtil.java @@ -430,7 +430,7 @@ public class OpenPgpPubSubUtil { // Get access to the PubSubManager's nodeMap Field field = pubSubManager.getClass().getDeclaredField("nodeMap"); field.setAccessible(true); - Map nodeMap = (Map) field.get(pubSubManager); + Map nodeMap = (Map) field.get(pubSubManager); // Check, if the node already exists Node existingNode = nodeMap.get(nodeName); diff --git a/smack-repl/build.gradle b/smack-repl/build.gradle index 3176e1985..dc691a89c 100644 --- a/smack-repl/build.gradle +++ b/smack-repl/build.gradle @@ -17,6 +17,8 @@ dependencies { compile "org.scala-lang:scala-library:$scalaVersion" compile "com.lihaoyi:ammonite_$scalaVersion:1.3.2" + + testCompile project(path: ":smack-core", configuration: "testRuntime") } scalaStyle { diff --git a/smack-repl/src/test/java/org/igniterealtime/smack/smackrepl/SmackReplTest.java b/smack-repl/src/test/java/org/igniterealtime/smack/smackrepl/SmackReplTest.java index 54250f100..1e8227014 100644 --- a/smack-repl/src/test/java/org/igniterealtime/smack/smackrepl/SmackReplTest.java +++ b/smack-repl/src/test/java/org/igniterealtime/smack/smackrepl/SmackReplTest.java @@ -1,6 +1,6 @@ /** * - * Copyright 2016-2020 Florian Schmaus + * Copyright 2016 Florian Schmaus * * This file is part of smack-repl. * @@ -20,7 +20,7 @@ */ package org.igniterealtime.smack.smackrepl; -import org.junit.jupiter.api.Test; +import org.junit.Test; public class SmackReplTest { /** diff --git a/smack-resolver-dnsjava/build.gradle b/smack-resolver-dnsjava/build.gradle index c718abba9..3649a2d58 100644 --- a/smack-resolver-dnsjava/build.gradle +++ b/smack-resolver-dnsjava/build.gradle @@ -1,8 +1,9 @@ description = """\ DNS SRV with dnsjava -Use dnsjava for DNS SRV lookups.""" +Use dnsjava for DNS SRV lookups. For platforms that don't provide the +javax.naming API (e.g. Android).""" dependencies { compile project(':smack-core') - compile 'dnsjava:dnsjava:[3.0.0,3.0.9999]' + compile 'dnsjava:dnsjava:[2.1,2.2)' } diff --git a/smack-resolver-minidns-dox/build.gradle b/smack-resolver-minidns-dox/build.gradle index 62c973774..3d070c5bd 100644 --- a/smack-resolver-minidns-dox/build.gradle +++ b/smack-resolver-minidns-dox/build.gradle @@ -4,4 +4,5 @@ DNS over XMPP (DoX) support using MiniDNS.""" dependencies { compile project(path: ':smack-resolver-minidns') compile project(path: ':smack-experimental') + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-sasl-javax/build.gradle b/smack-sasl-javax/build.gradle index f2275f363..d45511565 100644 --- a/smack-sasl-javax/build.gradle +++ b/smack-sasl-javax/build.gradle @@ -4,6 +4,5 @@ Use javax.security.sasl for SASL.""" dependencies { compile project(':smack-core') - - testFixturesApi(testFixtures(project(":smack-core"))) + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-sasl-provided/build.gradle b/smack-sasl-provided/build.gradle index d7391664c..3e3b2d64f 100644 --- a/smack-sasl-provided/build.gradle +++ b/smack-sasl-provided/build.gradle @@ -4,6 +4,5 @@ Use Smack provided code for SASL.""" dependencies { compile project(':smack-core') - - testFixturesApi(testFixtures(project(":smack-core"))) + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-tcp/build.gradle b/smack-tcp/build.gradle index 74ec76eb8..1c174288a 100644 --- a/smack-tcp/build.gradle +++ b/smack-tcp/build.gradle @@ -3,6 +3,5 @@ Smack for standard XMPP connections over TCP.""" dependencies { compile project(':smack-core') - - testFixturesApi(testFixtures(project(":smack-core"))) + testCompile project(path: ":smack-core", configuration: "testRuntime") } diff --git a/smack-xmlparser-stax/build.gradle b/smack-xmlparser-stax/build.gradle index d4e21ba8f..03c727630 100644 --- a/smack-xmlparser-stax/build.gradle +++ b/smack-xmlparser-stax/build.gradle @@ -3,5 +3,5 @@ Smack XML parser using Stax.""" dependencies { compile project(':smack-xmlparser') - //testCompile project(path: ":smack-xmlparser", configuration: "testRuntime") + testCompile project(path: ":smack-xmlparser", configuration: "testRuntime") } diff --git a/smack-xmlparser-xpp3/build.gradle b/smack-xmlparser-xpp3/build.gradle index a0afd7c4a..fb647f0bc 100644 --- a/smack-xmlparser-xpp3/build.gradle +++ b/smack-xmlparser-xpp3/build.gradle @@ -9,5 +9,5 @@ dependencies { api "xpp3:xpp3_min:$xpp3Version" implementation "xpp3:xpp3:$xpp3Version" api project(':smack-xmlparser') - //testCompile project(path: ":smack-xmlparser", configuration: "testRuntime") + testCompile project(path: ":smack-xmlparser", configuration: "testRuntime") }