diff options
30 files changed, 460 insertions, 34 deletions
@@ -207,6 +207,8 @@ <module>tests/bundles/org.eclipse.ecf.tests.apache.httpclient.server</module> <module>tests/bundles/org.eclipse.ecf.tests.datashare</module> <module>tests/bundles/org.eclipse.ecf.tests.filetransfer</module> + <module>tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4</module> + <module>tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45</module> <module>tests/bundles/org.eclipse.ecf.tests.filetransfer.httpserver</module> <module>tests/bundles/org.eclipse.ecf.tests.presence</module> <module>tests/bundles/org.eclipse.ecf.tests.protocol.msn</module> diff --git a/releng/features/org.eclipse.ecf.tests.filetransfer.feature/feature.xml b/releng/features/org.eclipse.ecf.tests.filetransfer.feature/feature.xml index 0e30df075..5e6f24bd6 100644 --- a/releng/features/org.eclipse.ecf.tests.filetransfer.feature/feature.xml +++ b/releng/features/org.eclipse.ecf.tests.filetransfer.feature/feature.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <feature id="org.eclipse.ecf.tests.filetransfer.feature" - label="ECF Platform " + label="%featureName" version="1.0.200.qualifier" provider-name="%providerName" license-feature="org.eclipse.license" @@ -67,4 +67,20 @@ fragment="true" unpack="false"/> + <plugin + id="org.eclipse.ecf.tests.filetransfer.httpclient4" + download-size="0" + install-size="0" + version="0.0.0" + fragment="true" + unpack="false"/> + + <plugin + id="org.eclipse.ecf.tests.filetransfer.httpclient45" + download-size="0" + install-size="0" + version="0.0.0" + fragment="true" + unpack="false"/> + </feature> diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.classpath b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.classpath index 64c5e31b7..c34bb53d4 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.classpath +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.classpath @@ -1,6 +1,10 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"> + <attributes> + <attribute name="module" value="true"/> + </attributes> + </classpathentry> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> <classpathentry kind="src" path="src"/> <classpathentry kind="output" path="bin"/> diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.gitignore b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.gitignore deleted file mode 100644 index 5e56e040e..000000000 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/bin diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.settings/org.eclipse.jdt.core.prefs b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.settings/org.eclipse.jdt.core.prefs index af0f20f97..0fee6a9c4 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.settings/org.eclipse.jdt.core.prefs +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.settings/org.eclipse.jdt.core.prefs @@ -1,7 +1,15 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 -org.eclipse.jdt.core.compiler.compliance=1.5 +org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.5 +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.settings/org.eclipse.pde.core.prefs b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.settings/org.eclipse.pde.core.prefs index f29e940a0..4b0893777 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.settings/org.eclipse.pde.core.prefs +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/.settings/org.eclipse.pde.core.prefs @@ -1,3 +1,2 @@ eclipse.preferences.version=1 pluginProject.extensions=false -resolve.requirebundle=false diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/META-INF/MANIFEST.MF b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/META-INF/MANIFEST.MF index 87cbc7bdf..e01a9c067 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/META-INF/MANIFEST.MF +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/META-INF/MANIFEST.MF @@ -1,15 +1,12 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 -Bundle-Name: ECF Httpclient4 Provider Tests +Bundle-Name: %plugin.name +Bundle-Vendor: %plugin.provider Bundle-SymbolicName: org.eclipse.ecf.tests.filetransfer.httpclient4 Automatic-Module-Name: org.eclipse.ecf.tests.filetransfer.httpclient4 Bundle-Version: 1.0.100.qualifier -Bundle-RequiredExecutionEnvironment: J2SE-1.5 -Require-Bundle: org.eclipse.equinox.common;bundle-version="3.6.100", - org.eclipse.ecf;bundle-version="3.1.300", - org.eclipse.ecf.filetransfer;bundle-version="5.0.0", - org.eclipse.ecf.provider.filetransfer;bundle-version="3.2.0", - org.junit;bundle-version="4.10.0", - org.eclipse.ecf.provider.filetransfer.httpclient4;bundle-version="1.0.100", +Fragment-Host: org.eclipse.ecf.tests.filetransfer;bundle-version="2.0.400" +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Bundle-Localization: fragment +Require-Bundle: org.eclipse.ecf.provider.filetransfer.httpclient4;bundle-version="1.0.100", org.apache.httpcomponents.httpclient;bundle-version="4.1.2" -Import-Package: org.apache.commons.httpclient diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/build.properties b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/build.properties index 34d2e4d2d..a835c40fd 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/build.properties +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/build.properties @@ -1,4 +1,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ - . + .,\ + fragment.properties diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/fragment.properties b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/fragment.properties new file mode 100755 index 000000000..039a2de3a --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/fragment.properties @@ -0,0 +1,11 @@ +############################################################################ +# Copyright (c) 2020 Red Hat Inc., and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +############################################################################ +plugin.name=ECF HttpClient4 Provider Specific Tests +plugin.provider=Eclipse.org - ECF + diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/pom.xml b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/pom.xml new file mode 100644 index 000000000..72ef42695 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/pom.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.eclipse.ecf</groupId> + <artifactId>ecf-parent</artifactId> + <version>1.0.0-SNAPSHOT</version> + <relativePath>../../../</relativePath> + </parent> + <groupId>org.eclipse.ecf</groupId> + <artifactId>org.eclipse.ecf.tests.filetransfer.httpclient4</artifactId> + <version>1.0.100-SNAPSHOT</version> + <packaging>eclipse-test-plugin</packaging> + + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-surefire-plugin</artifactId> + <version>${tycho-version}</version> + <configuration> + <testClass>org.eclipse.ecf.tests.filetransfer.httpclient4.HttpClient4TestSuite</testClass> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/src/org/eclipse/ecf/tests/filetransfer/httpclient4/HttpClient4TestSuite.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/src/org/eclipse/ecf/tests/filetransfer/httpclient4/HttpClient4TestSuite.java new file mode 100644 index 000000000..284714d79 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/src/org/eclipse/ecf/tests/filetransfer/httpclient4/HttpClient4TestSuite.java @@ -0,0 +1,40 @@ +/**************************************************************************** + * Copyright (c) 2020 Red Hat, Inc. and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Red Hat, Inc. - initial API and implementation + *****************************************************************************/ + +package org.eclipse.ecf.tests.filetransfer.httpclient4; + +import org.eclipse.ecf.tests.filetransfer.FileBrowseTest; +import org.eclipse.ecf.tests.filetransfer.FileIDFactoryTest; +import org.eclipse.ecf.tests.filetransfer.FileSendTest; +import org.eclipse.ecf.tests.filetransfer.GetRemoteFileNameTest; +import org.eclipse.ecf.tests.filetransfer.NamespaceTest; +import org.eclipse.ecf.tests.filetransfer.URIProtocolFactoryRetrieveTest; +import org.eclipse.ecf.tests.filetransfer.URLBrowseTest; +import org.eclipse.ecf.tests.filetransfer.URLCancelTest; +import org.eclipse.ecf.tests.filetransfer.URLConnectionTestSuite; +import org.eclipse.ecf.tests.filetransfer.URLPartialRetrieveTest; +import org.eclipse.ecf.tests.filetransfer.URLRetrievePauseResumeTest; +import org.eclipse.ecf.tests.filetransfer.URLRetrieveTest; +import org.junit.runner.RunWith; +import org.junit.runners.Suite; + +/** + * A test suite that includes tests specific to httpclient filetransfer + * providers and is run against the httpclient4 provider. + */ +@RunWith(Suite.class) +@Suite.SuiteClasses({ FileBrowseTest.class, FileIDFactoryTest.class, FileSendTest.class, GetRemoteFileNameTest.class, + NamespaceTest.class, URIProtocolFactoryRetrieveTest.class, URLBrowseTest.class, URLCancelTest.class, + URLPartialRetrieveTest.class, URLRetrievePauseResumeTest.class, URLRetrieveTest.class, + HttpClientGetPortFromURLTest.class }) +public class HttpClient4TestSuite extends URLConnectionTestSuite { + +} diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/src/org/eclipse/ecf/tests/filetransfer/httpclient4/HttpClientGetPortFromURLTest.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/src/org/eclipse/ecf/tests/filetransfer/httpclient4/HttpClientGetPortFromURLTest.java index e7d3827c0..d162ce3cd 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/src/org/eclipse/ecf/tests/filetransfer/httpclient4/HttpClientGetPortFromURLTest.java +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient4/src/org/eclipse/ecf/tests/filetransfer/httpclient4/HttpClientGetPortFromURLTest.java @@ -1,6 +1,16 @@ +/**************************************************************************** + * Copyright (c) 2012, 2020 Composent, Inc. and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Composent, Inc. - initial API and implementation + *****************************************************************************/ + package org.eclipse.ecf.tests.filetransfer.httpclient4; -import org.apache.http.impl.client.DefaultHttpClient; import org.eclipse.ecf.provider.filetransfer.httpclient4.HttpClientRetrieveFileTransfer; import junit.framework.TestCase; @@ -9,8 +19,8 @@ public class HttpClientGetPortFromURLTest extends TestCase { public static class HttpClientRetrieveTest extends HttpClientRetrieveFileTransfer { - public HttpClientRetrieveTest(DefaultHttpClient httpClient) { - super(httpClient); + public HttpClientRetrieveTest() { + super(null); } public static int getPortFromURLTest(String url) { diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.classpath b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.classpath new file mode 100644 index 000000000..c34bb53d4 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.classpath @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"> + <attributes> + <attribute name="module" value="true"/> + </attributes> + </classpathentry> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.project b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.project new file mode 100644 index 000000000..6cd8e7cf5 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.ecf.tests.filetransfer.httpclient45</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.settings/org.eclipse.jdt.core.prefs b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 000000000..0fee6a9c4 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.settings/org.eclipse.pde.core.prefs b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.settings/org.eclipse.pde.core.prefs new file mode 100644 index 000000000..4b0893777 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +pluginProject.extensions=false diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/META-INF/MANIFEST.MF b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/META-INF/MANIFEST.MF new file mode 100644 index 000000000..1eea52862 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/META-INF/MANIFEST.MF @@ -0,0 +1,12 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %plugin.name +Bundle-Vendor: %plugin.provider +Bundle-SymbolicName: org.eclipse.ecf.tests.filetransfer.httpclient45 +Automatic-Module-Name: org.eclipse.ecf.tests.filetransfer.httpclient45 +Bundle-Version: 1.0.0.qualifier +Fragment-Host: org.eclipse.ecf.tests.filetransfer;bundle-version="2.0.400" +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Bundle-Localization: fragment +Require-Bundle: org.eclipse.ecf.provider.filetransfer.httpclient45;bundle-version="1.0.200", + org.apache.httpcomponents.httpclient;bundle-version="4.5.10" diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/build.properties b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/build.properties new file mode 100644 index 000000000..a835c40fd --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/build.properties @@ -0,0 +1,5 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + fragment.properties diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/fragment.properties b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/fragment.properties new file mode 100755 index 000000000..e817994da --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/fragment.properties @@ -0,0 +1,11 @@ +############################################################################ +# Copyright (c) 2020 Red Hat Inc., and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +############################################################################ +plugin.name=ECF HttpClient45 Provider Specific Tests +plugin.provider=Eclipse.org - ECF + diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/pom.xml b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/pom.xml new file mode 100644 index 000000000..f82953964 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/pom.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.eclipse.ecf</groupId> + <artifactId>ecf-parent</artifactId> + <version>1.0.0-SNAPSHOT</version> + <relativePath>../../../</relativePath> + </parent> + <groupId>org.eclipse.ecf</groupId> + <artifactId>org.eclipse.ecf.tests.filetransfer.httpclient45</artifactId> + <version>1.0.0-SNAPSHOT</version> + <packaging>eclipse-test-plugin</packaging> + + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-surefire-plugin</artifactId> + <version>${tycho-version}</version> + <configuration> + <testClass>org.eclipse.ecf.tests.filetransfer.httpclient45.HttpClient45TestSuite</testClass> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/src/org/eclipse/ecf/tests/filetransfer/httpclient45/HttpClient45TestSuite.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/src/org/eclipse/ecf/tests/filetransfer/httpclient45/HttpClient45TestSuite.java new file mode 100644 index 000000000..461bc76c3 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/src/org/eclipse/ecf/tests/filetransfer/httpclient45/HttpClient45TestSuite.java @@ -0,0 +1,40 @@ +/**************************************************************************** + * Copyright (c) 2020 Red Hat, Inc. and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Red Hat, Inc. - initial API and implementation + *****************************************************************************/ + +package org.eclipse.ecf.tests.filetransfer.httpclient45; + +import org.eclipse.ecf.tests.filetransfer.FileBrowseTest; +import org.eclipse.ecf.tests.filetransfer.FileIDFactoryTest; +import org.eclipse.ecf.tests.filetransfer.FileSendTest; +import org.eclipse.ecf.tests.filetransfer.GetRemoteFileNameTest; +import org.eclipse.ecf.tests.filetransfer.NamespaceTest; +import org.eclipse.ecf.tests.filetransfer.URIProtocolFactoryRetrieveTest; +import org.eclipse.ecf.tests.filetransfer.URLBrowseTest; +import org.eclipse.ecf.tests.filetransfer.URLCancelTest; +import org.eclipse.ecf.tests.filetransfer.URLConnectionTestSuite; +import org.eclipse.ecf.tests.filetransfer.URLPartialRetrieveTest; +import org.eclipse.ecf.tests.filetransfer.URLRetrievePauseResumeTest; +import org.eclipse.ecf.tests.filetransfer.URLRetrieveTest; +import org.junit.runner.RunWith; +import org.junit.runners.Suite; + +/** + * A test suite that includes tests specific to httpclient filetransfer + * providers and is run against the httpclient45 provider. + */ +@RunWith(Suite.class) +@Suite.SuiteClasses({ FileBrowseTest.class, FileIDFactoryTest.class, FileSendTest.class, GetRemoteFileNameTest.class, + NamespaceTest.class, URIProtocolFactoryRetrieveTest.class, URLBrowseTest.class, URLCancelTest.class, + URLPartialRetrieveTest.class, URLRetrievePauseResumeTest.class, URLRetrieveTest.class, + HttpClientGetPortFromURLTest.class }) +public class HttpClient45TestSuite extends URLConnectionTestSuite { + +} diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/src/org/eclipse/ecf/tests/filetransfer/httpclient45/HttpClientGetPortFromURLTest.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/src/org/eclipse/ecf/tests/filetransfer/httpclient45/HttpClientGetPortFromURLTest.java new file mode 100644 index 000000000..e4fe84f2c --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer.httpclient45/src/org/eclipse/ecf/tests/filetransfer/httpclient45/HttpClientGetPortFromURLTest.java @@ -0,0 +1,87 @@ +/**************************************************************************** + * Copyright (c) 2012, 2020 Composent, Inc. and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Composent, Inc. - initial API and implementation + *****************************************************************************/ + +package org.eclipse.ecf.tests.filetransfer.httpclient45; + +import org.eclipse.ecf.provider.filetransfer.httpclient45.HttpClientRetrieveFileTransfer; + +import junit.framework.TestCase; + +public class HttpClientGetPortFromURLTest extends TestCase { + + public static class HttpClientRetrieveTest extends HttpClientRetrieveFileTransfer { + + public HttpClientRetrieveTest() { + super(null); + } + + public static int getPortFromURLTest(String url) { + return getPortFromURL(url); + } + } + + public void testHttp() { + int port; + String url = "http://www.test.com"; + port = HttpClientRetrieveTest.getPortFromURLTest(url); + assertEquals(80, port); + } + + public void testHttpWithPort() { + int port; + String url = "http://www.test.com:80/"; + port = HttpClientRetrieveTest.getPortFromURLTest(url); + assertEquals(80, port); + } + + public void testHttps() { + int port; + String url = "https://www.test.com/"; + port = HttpClientRetrieveTest.getPortFromURLTest(url); + assertEquals(443, port); + } + + public void testHttpsPortNOK() { + int port; + String url = "https://www.test.com:440/"; + port = HttpClientRetrieveTest.getPortFromURLTest(url); + assertFalse(443 == port); + } + + public void testHttpWithSearchpart() { + int port; + String url = "https://www.test.com/test?value=yes"; + port = HttpClientRetrieveTest.getPortFromURLTest(url); + assertEquals(443, port); + } + + public void testHttpWithCredentialsAndSearchpart() { + int port; + String url = "https://testuser:testpasswd@www.test.com/test?value=yes"; + port = HttpClientRetrieveTest.getPortFromURLTest(url); + assertEquals(443, port); + } + + public void testHttpWithCredentialsPortSearchpart() { + int port; + String url = "http://testuser:testpasswd@www.test.com:8080/test?value=yes"; + port = HttpClientRetrieveTest.getPortFromURLTest(url); + assertEquals(8080, port); + } + + public void testHttpWithCredentialsPortLongPath() { + int port; + String url = "https://testuser:testpasswd@host.domain.eu:443/pu/fisgui/svn/repository/fisgui/source-internal/trunk/target-platform/fisgui-5.8.1/content.xml"; + port = HttpClientRetrieveTest.getPortFromURLTest(url); + assertEquals(443, port); + } + +} diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer/META-INF/MANIFEST.MF b/tests/bundles/org.eclipse.ecf.tests.filetransfer/META-INF/MANIFEST.MF index a3ad62f8a..05485fd1a 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer/META-INF/MANIFEST.MF +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %plugin.name Bundle-SymbolicName: org.eclipse.ecf.tests.filetransfer;singleton:=true Automatic-Module-Name: org.eclipse.ecf.tests.filetransfer -Bundle-Version: 2.0.301.qualifier +Bundle-Version: 2.0.400.qualifier Bundle-Activator: org.eclipse.ecf.tests.filetransfer.Activator Bundle-Vendor: %plugin.provider Bundle-Localization: plugin @@ -14,7 +14,8 @@ Require-Bundle: org.junit, org.eclipse.equinox.common, org.eclipse.ecf.provider.filetransfer, org.eclipse.ecf.tests.apache.httpclient.server;bundle-version="3.0.1", - org.eclipse.ecf.tests.filetransfer.httpserver;bundle-version="1.0.0" + org.eclipse.ecf.tests.filetransfer.httpserver;bundle-version="1.0.0", + org.eclipse.core.runtime Eclipse-LazyStart: true Import-Package: org.eclipse.core.net.proxy;resolution:=optional, org.eclipse.core.runtime.jobs, diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer/pom.xml b/tests/bundles/org.eclipse.ecf.tests.filetransfer/pom.xml index 2a2d58087..941884a9d 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer/pom.xml +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer/pom.xml @@ -10,6 +10,19 @@ </parent> <groupId>org.eclipse.ecf</groupId> <artifactId>org.eclipse.ecf.tests.filetransfer</artifactId> - <version>2.0.301-SNAPSHOT</version> + <version>2.0.400-SNAPSHOT</version> <packaging>eclipse-test-plugin</packaging> + + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-surefire-plugin</artifactId> + <version>${tycho-version}</version> + <configuration> + <testClass>org.eclipse.ecf.tests.filetransfer.URLConnectionTestSuite</testClass> + </configuration> + </plugin> + </plugins> + </build> </project> diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/Activator.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/Activator.java index 0404abb30..2ce496430 100755 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/Activator.java +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/Activator.java @@ -17,9 +17,7 @@ import org.osgi.framework.Bundle; import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; import org.osgi.framework.BundleException; -import org.osgi.framework.ServiceReference; import org.osgi.util.tracker.ServiceTracker; -import org.osgi.util.tracker.ServiceTrackerCustomizer; /** * The activator class controls the plug-in life cycle diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/FileBrowseTest.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/FileBrowseTest.java index 382238d72..7816cbfda 100755 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/FileBrowseTest.java +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/FileBrowseTest.java @@ -54,14 +54,14 @@ public class FileBrowseTest extends AbstractBrowseTestCase { public void testBrowseRoots() throws Exception { for (int i = 0; i < roots.length; i++) { if (roots[i].exists()) - testBrowse(roots[i].toURL()); + testBrowse(roots[i].toURI().toURL()); Thread.sleep(100); } } public void testFileBrowse() throws Exception { for (int i = 0; i < files.length; i++) { - testBrowse(files[i].toURL()); + testBrowse(files[i].toURI().toURL()); Thread.sleep(100); } } diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/FileSendTest.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/FileSendTest.java index 7f473ab07..8440a62c9 100755 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/FileSendTest.java +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/FileSendTest.java @@ -51,7 +51,7 @@ public class FileSendTest extends AbstractSendTestCase { } public void testSend() throws Exception { - testSendForFile(outputFile.toURL(), inputFile); + testSendForFile(outputFile.toURI().toURL(), inputFile); waitForDone(10000); assertEquals(outputFile.length(), inputFile.length()); } diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLConnectionTestSuite.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLConnectionTestSuite.java new file mode 100644 index 000000000..b82265d9d --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLConnectionTestSuite.java @@ -0,0 +1,64 @@ +/**************************************************************************** + * Copyright (c) 2020 Red Hat, Inc. and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Red Hat, Inc. - initial API and implementation + *****************************************************************************/ + +package org.eclipse.ecf.tests.filetransfer; + +import java.util.HashSet; +import java.util.Set; + +import org.eclipse.core.runtime.IExtension; +import org.eclipse.core.runtime.IExtensionPoint; +import org.eclipse.core.runtime.Platform; +import org.junit.BeforeClass; +import org.junit.runner.RunWith; +import org.junit.runners.Suite; +import org.osgi.framework.Bundle; +import org.osgi.framework.FrameworkUtil; + +/** + * A test suite that prints out all the available filetransfer providers before + * executing the tests. + */ +@RunWith(Suite.class) +@Suite.SuiteClasses({ FileBrowseTest.class, FileIDFactoryTest.class, FileSendTest.class, GetRemoteFileNameTest.class, + NamespaceTest.class, URIProtocolFactoryRetrieveTest.class, URLBrowseTest.class, URLCancelTest.class, + URLPartialRetrieveTest.class, URLRetrievePauseResumeTest.class, URLRetrieveTest.class }) +public class URLConnectionTestSuite { + + private static void displayAllProviders() { + Bundle[] allBundles = FrameworkUtil.getBundle(AbstractFileTransferTestCase.class).getBundleContext() + .getBundles(); + + Set<String> bundles = new HashSet<String>(); + + IExtensionPoint[] extPoints = Platform.getExtensionRegistry() + .getExtensionPoints("org.eclipse.ecf.provider.filetransfer"); + for (IExtensionPoint extPoint : extPoints) { + for (IExtension ext : extPoint.getExtensions()) { + for (Bundle bundle : allBundles) { + if (ext.getContributor().getName().equals(bundle.getSymbolicName())) { + bundles.add(bundle.getSymbolicName() + "/" + bundle.getVersion()); + } + } + } + } + + System.out.println("Installed Filetransfer Provider Bundles:"); + for (String bundle : bundles) { + System.out.println(" " + bundle); + } + } + + @BeforeClass + public static void setUp() throws Exception { + displayAllProviders(); + } +} diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrievePauseResumeTest.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrievePauseResumeTest.java index 256841d2c..9126553ea 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrievePauseResumeTest.java +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrievePauseResumeTest.java @@ -15,9 +15,6 @@ import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; -import java.io.InputStream; -import java.nio.file.Files; -import java.nio.file.Paths; import java.security.DigestInputStream; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; @@ -36,7 +33,6 @@ import org.eclipse.ecf.filetransfer.events.IIncomingFileTransferReceiveStartEven import org.eclipse.ecf.filetransfer.identity.FileIDFactory; import org.eclipse.ecf.filetransfer.service.IRetrieveFileTransfer; import org.eclipse.ecf.tests.ContainerAbstractTestCase; -import org.osgi.framework.Bundle; public class URLRetrievePauseResumeTest extends ContainerAbstractTestCase { diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrieveTestUnknownHost.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrieveTestUnknownHost.java index 7e35d543f..0fd955592 100644 --- a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrieveTestUnknownHost.java +++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrieveTestUnknownHost.java @@ -25,10 +25,10 @@ public class URLRetrieveTestUnknownHost extends AbstractRetrieveTestCase { public static final String HTTP_UNKNOWN_HOST_URL = "http://unknown-abcdefghi.eclipse.org/foo"; - private boolean CANCEL_SUPPORTED_ON_CONNECT = new Boolean( + private boolean CANCEL_SUPPORTED_ON_CONNECT = Boolean.parseBoolean( System.getProperty( "org.eclipse.ecf.tests.filetransfer.cancelSupportedOnConnect", - "true")).booleanValue(); + "true")); /* * (non-Javadoc) |