From bafe6699cc3c815d883b844ff35bc1752eae4535 Mon Sep 17 00:00:00 2001 From: mkuppe Date: Sat, 25 Oct 2008 16:41:54 +0000 Subject: NEW - bug 252092: [Discovery][Composite] Add composite tests https://bugs.eclipse.org/bugs/show_bug.cgi?id=252092 --- .../.classpath | 7 ++++ .../.project | 28 +++++++++++++++ .../.settings/org.eclipse.jdt.core.prefs | 20 +++++++++++ .../.settings/org.eclipse.pde.core.prefs | 4 +++ .../META-INF/MANIFEST.MF | 16 +++++++++ .../about.html | 28 +++++++++++++++ .../build.properties | 4 +++ .../config.ini | 27 ++++++++++++++ .../plugin.properties | 10 ++++++ .../discovery/CompositeDiscoveryContainerTest.java | 21 +++++++++++ .../discovery/CompositeServiceInfoComporator.java | 42 ++++++++++++++++++++++ 11 files changed, 207 insertions(+) create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/.classpath create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/.project create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/.settings/org.eclipse.jdt.core.prefs create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/.settings/org.eclipse.pde.core.prefs create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/META-INF/MANIFEST.MF create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/about.html create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/build.properties create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/config.ini create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/plugin.properties create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryContainerTest.java create mode 100644 tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeServiceInfoComporator.java diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.classpath b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.classpath new file mode 100644 index 000000000..7cdeb7319 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.classpath @@ -0,0 +1,7 @@ + + + + + + + diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.project b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.project new file mode 100644 index 000000000..0c7a2059d --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.project @@ -0,0 +1,28 @@ + + + org.eclipse.ecf.tests.provider.discovery + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + + org.eclipse.pde.PluginNature + org.eclipse.jdt.core.javanature + + diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.settings/org.eclipse.jdt.core.prefs b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 000000000..5b28f8bfb --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,20 @@ +#Fri May 02 09:35:43 CEST 2008 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2 +org.eclipse.jdt.core.compiler.compliance=1.4 +org.eclipse.jdt.core.compiler.doc.comment.support=enabled +org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning +org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning +org.eclipse.jdt.core.compiler.problem.invalidJavadoc=error +org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=disabled +org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=disabled +org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=disabled +org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private +org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore +org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled +org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public +org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag +org.eclipse.jdt.core.compiler.problem.missingJavadocTags=error +org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled +org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private +org.eclipse.jdt.core.compiler.source=1.3 diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.settings/org.eclipse.pde.core.prefs b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.settings/org.eclipse.pde.core.prefs new file mode 100644 index 000000000..38a01704a --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,4 @@ +#Sun Oct 07 16:26:19 PDT 2007 +eclipse.preferences.version=1 +pluginProject.extensions=false +resolve.requirebundle=false diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/META-INF/MANIFEST.MF b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/META-INF/MANIFEST.MF new file mode 100644 index 000000000..8c2a2cd81 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/META-INF/MANIFEST.MF @@ -0,0 +1,16 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %plugin.name +Bundle-SymbolicName: org.eclipse.ecf.tests.provider.discovery +Bundle-Version: 2.1.0.qualifier +Import-Package: org.osgi.framework;version="1.4.0", + org.osgi.util.tracker;version="1.3.3" +Require-Bundle: org.junit, + org.eclipse.ecf, + org.eclipse.ecf.discovery, + org.eclipse.equinox.common, + org.eclipse.ecf.tests.discovery, + org.eclipse.ecf.provider.discovery +Bundle-Vendor: %plugin.provider +Bundle-RequiredExecutionEnvironment: CDC-1.1/Foundation-1.1, + J2SE-1.4 diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/about.html b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/about.html new file mode 100644 index 000000000..2535c6aaa --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/about.html @@ -0,0 +1,28 @@ + + + + +About + + +

About This Content

+ +

October 14, 2007

+

License

+ +

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at http://www.eclipse.org/legal/epl-v10.html. +For purposes of the EPL, "Program" will mean the Content.

+ +

If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at http://www.eclipse.org.

+ + + \ No newline at end of file diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/build.properties b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/build.properties new file mode 100644 index 000000000..34d2e4d2d --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/build.properties @@ -0,0 +1,4 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + . diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/config.ini b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/config.ini new file mode 100644 index 000000000..4ad8683a1 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/config.ini @@ -0,0 +1,27 @@ +# Eclipse runtime configuration file +# This file contains a number of key/value pairs that are merged into the +# System properties on system startup. The values control the way the +# runtime is structured and runs. + +# The comma-separated list of bundles which are automatically installed and optionally started +# once the system is up and running. Each entry if of the form +# [@ [] [":start"]] +# If the startlevel is omitted then the framework will use the default start level for the bundle. +# If the "start" tag is added then the bundle will be marked as started after being installed. +# Simple bundle locations are interepreted as relative to the framework's parent directory. +# The startlevel indicates the OSGi start level at which the bundle should run. +# If this value is not set, the system computes an appropriate default. +osgi.bundles=org.eclipse.equinox.common@2:start, org.eclipse.update.configurator@3:start, org.eclipse.core.runtime@start, org.eclipse.equinox.log@4:start, org.eclipse.ecf.provider.jslp@4:start, org.eclipse.ecf.provider.jmdns@4:start + +# The product to run. A given Eclipse configuration may contain many products. +# The product identified will supply the branding (window icons, title bar text) etc +# as well as define the default application to run. +eclipse.product=org.eclipse.sdk.ide +# The default workspace location +osgi.instance.area.default=@user.home/workspace + +# entry required for gtk configurations of eclipse to enable stand-alone help +osgi.ws=gtk + +# End of file marker - must be here +eof=eof diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/plugin.properties b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/plugin.properties new file mode 100644 index 000000000..72f1aa314 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/plugin.properties @@ -0,0 +1,10 @@ +/**************************************************************************** +* Copyright (c) 2007 Versant Corp., IBM Corp. 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 Discovery Provider Tests +plugin.provider = Eclipse.org diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryContainerTest.java b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryContainerTest.java new file mode 100644 index 000000000..5c815eeb7 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryContainerTest.java @@ -0,0 +1,21 @@ +/******************************************************************************* + * Copyright (c) 2008 Versant Corp. + * 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: + * Markus Kuppe (mkuppe versant com) - initial API and implementation + ******************************************************************************/ +package org.eclipse.ecf.tests.provider.discovery; + +import org.eclipse.ecf.tests.discovery.DiscoveryTest; + +public class CompositeDiscoveryContainerTest extends DiscoveryTest { + + public CompositeDiscoveryContainerTest() { + super("ecf.discovery.*"); + setComparator(new CompositeServiceInfoComporator()); + } +} diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeServiceInfoComporator.java b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeServiceInfoComporator.java new file mode 100644 index 000000000..7bd5d86b3 --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeServiceInfoComporator.java @@ -0,0 +1,42 @@ +/******************************************************************************* + * Copyright (c) 2008 Versant Corp. + * 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: + * Markus Kuppe (mkuppe versant com) - initial API and implementation + ******************************************************************************/ +package org.eclipse.ecf.tests.provider.discovery; + +import java.net.URI; + +import org.eclipse.ecf.discovery.IServiceInfo; +import org.eclipse.ecf.discovery.identity.IServiceID; +import org.eclipse.ecf.tests.discovery.ServiceInfoComparator; + +public class CompositeServiceInfoComporator extends ServiceInfoComparator { + + /* (non-Javadoc) + * @see org.eclipse.ecf.tests.discovery.ServiceInfoComparator#compare(java.lang.Object, java.lang.Object) + */ + public int compare(Object arg0, Object arg1) { + if (arg0 instanceof IServiceInfo && arg1 instanceof IServiceInfo) { + final IServiceInfo first = (IServiceInfo) arg0; + final IServiceInfo second = (IServiceInfo) arg1; + final URI uri1 = first.getLocation(); + final URI uri2 = second.getLocation(); + IServiceID firstID = first.getServiceID(); + IServiceID secondID = second.getServiceID(); + //TODO-mkuppe No prio, weight and protocol atm in the JSLP testcase + boolean serviceIDs = firstID.getName().equals(secondID.getName()) && firstID.getServiceName().equals(secondID.getServiceName()) && firstID.getServiceTypeID().equals(secondID.getServiceTypeID()); + final boolean result = (serviceIDs && uri1.getHost().equals(uri2.getHost()) && uri1.getPort() == uri2.getPort()/* && first.getPriority() == second.getPriority() && first.getWeight() == second.getWeight() */&& compareServiceProperties(first.getServiceProperties(), second.getServiceProperties())); + if (result == true) { + return 0; + } + } + return -1; + } + +} -- cgit v1.2.3