diff options
Diffstat (limited to 'common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/VersionComparatorTests.java')
-rw-r--r-- | common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/VersionComparatorTests.java | 205 |
1 files changed, 0 insertions, 205 deletions
diff --git a/common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/VersionComparatorTests.java b/common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/VersionComparatorTests.java deleted file mode 100644 index 3a7eff17a3..0000000000 --- a/common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/VersionComparatorTests.java +++ /dev/null @@ -1,205 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2011 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.common.utility.tests.internal; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Comparator; -import junit.framework.TestCase; -import org.eclipse.jpt.common.utility.internal.StringTools; -import org.eclipse.jpt.common.utility.internal.VersionComparator; -import org.eclipse.jpt.common.utility.internal.VersionComparator.SegmentParser; - -@SuppressWarnings("nls") -public class VersionComparatorTests - extends TestCase -{ - public VersionComparatorTests(String name) { - super(name); - } - - public void testVersionIsEqual_integer() { - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.0", "2.0.0") == 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.0", "2.0.0.0") == 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.0.0.0.0.0000", "2.0") == 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.-1", "2.0.-1") == 0); - } - - public void testVersionIsLess_integer() { - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.0", "2.0.1") < 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.5.0", "2.14") < 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.5.0", "2.5.0.0.1.0") < 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.5.0.0.0.-1", "2.5") < 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.-1", "2.0.0") < 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.-1", "2") < 0); - } - - public void testVersionIsGreater_integer() { - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.2", "2.0.1") > 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.2", "2.0.1") > 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.5.0.0.1.0", "2.5.0") > 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.5", "2.5.0.0.0.-1") > 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.0", "2.0.-1") > 0); - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2", "2.0.-1") > 0); - } - - public void testVersionIsEqual_integer_comma() { - Comparator<String> versionComparator = new VersionComparator<BigDecimal>(",", DecimalSegmentParser.instance()); - assertTrue(versionComparator.compare("2,0,0", "2,0,0") == 0); - assertTrue(versionComparator.compare("2,0.0,0", "2,0,0") == 0); - assertTrue(versionComparator.compare("2,0.0,0", "2,0,0.0") == 0); - assertTrue(versionComparator.compare("2.0,0.0,0", "2,0,0.0") == 0); - } - - public void testVersionIsLess_integer_comma() { - Comparator<String> versionComparator = new VersionComparator<BigDecimal>(",", DecimalSegmentParser.instance()); - assertTrue(versionComparator.compare("2,0,0", "2,0,1") < 0); - assertTrue(versionComparator.compare("2,0.0,0", "2,0,1") < 0); - assertTrue(versionComparator.compare("2,0,0", "2,0,1.0") < 0); - assertTrue(versionComparator.compare("2.0,0,0", "2,0,1") < 0); - } - - public void testVersionIsGreater_integer_comma() { - Comparator<String> versionComparator = new VersionComparator<BigDecimal>(",", DecimalSegmentParser.instance()); - assertTrue(versionComparator.compare("2,0,2", "2,0,1") > 0); - assertTrue(versionComparator.compare("2,0,2.1", "2,0,1") > 0); - assertTrue(versionComparator.compare("2,0,2", "2,0,1.9") > 0); - assertTrue(versionComparator.compare("2.000,0,2", "2,0,1") > 0); - } - - public void testVersionIsEqual_subclass() { - Comparator<String> versionComparator = new VersionComparator<Integer>() { - @Override - protected Integer parseSegment(int index, String s) { - return Integer.valueOf(s); - } - @Override - protected Integer getZero() { - return Integer.valueOf(0); - } - }; - assertTrue(versionComparator.compare("2.0.0", "2.0.0") == 0); - assertTrue(versionComparator.compare("2.0.0", "2.0.0.0") == 0); - assertTrue(versionComparator.compare("2.0.0.0", "2.0") == 0); - assertTrue(versionComparator.compare("2.0.-1", "2.0.-1") == 0); - } - - public void testVersionIsLess_subclass() { - Comparator<String> versionComparator = new VersionComparator<Integer>() { - @Override - protected Integer parseSegment(int index, String s) { - return Integer.valueOf(s); - } - @Override - protected Integer getZero() { - return Integer.valueOf(0); - } - }; - assertTrue(versionComparator.compare("2.0.0", "2.0.1") < 0); - assertTrue(versionComparator.compare("2.5.0", "2.14") < 0); - assertTrue(versionComparator.compare("2.5.0", "2.5.0.0.1.0") < 0); - assertTrue(versionComparator.compare("2.0.-1", "2.0.0") < 0); - assertTrue(versionComparator.compare("2.0.-1", "2") < 0); - } - - public void testVersionIsGreater_subclass() { - Comparator<String> versionComparator = new VersionComparator<Integer>() { - @Override - protected Integer parseSegment(int index, String s) { - return Integer.valueOf(s); - } - @Override - protected Integer getZero() { - return Integer.valueOf(0); - } - }; - assertTrue(versionComparator.compare("2.0.2", "2.0.1") > 0); - assertTrue(versionComparator.compare("2.0.2", "2.0.1") > 0); - assertTrue(versionComparator.compare("2.5.0.0.1.0", "2.5.0") > 0); - assertTrue(versionComparator.compare("2.0.0", "2.0.-1") > 0); - assertTrue(versionComparator.compare("2", "2.0.-1") > 0); - } - - public void testBadString() { - boolean exCaught = false; - try { - // note the letter 'O' instead of the numeral '0' - assertTrue(VersionComparator.INTEGER_VERSION_COMPARATOR.compare("2.0.0", "2.O.O") == 0); - } catch (NumberFormatException ex) { - exCaught = true; - } - assertTrue(exCaught); - } - - public void testBogusSubclass1() { - Comparator<String> versionComparator = new VersionComparator<Integer>() { - // bogus - must override parseSegment(...) - @Override - protected Integer getZero() { - return Integer.valueOf(0); - } - }; - boolean exCaught = false; - try { - assertTrue(versionComparator.compare("2.0.0", "2.0.0") == 0); - } catch (UnsupportedOperationException ex) { - exCaught = true; - } - assertTrue(exCaught); - } - - public void testBogusSubclass2() { - Comparator<String> versionComparator = new VersionComparator<Integer>() { - @Override - protected Integer parseSegment(int index, String s) { - return Integer.valueOf(s); - } - // bogus - must getZero() - }; - boolean exCaught = false; - try { - assertTrue(versionComparator.compare("2.0.0", "2.0.0.0.0") == 0); - } catch (UnsupportedOperationException ex) { - exCaught = true; - } - assertTrue(exCaught); - } - - - static final class DecimalSegmentParser - implements SegmentParser<BigDecimal>, Serializable - { - public static final SegmentParser<BigDecimal> INSTANCE = new DecimalSegmentParser(); - public static SegmentParser<BigDecimal> instance() { - return INSTANCE; - } - // ensure single instance - private DecimalSegmentParser() { - super(); - } - // simply parse the segment as an integer - public BigDecimal parse(int segmentIndex, String segment) { - return new BigDecimal(segment); - } - public BigDecimal getZero() { - return ZERO; - } - private static final BigDecimal ZERO = new BigDecimal(0); - @Override - public String toString() { - return StringTools.buildSingletonToString(this); - } - private static final long serialVersionUID = 1L; - private Object readResolve() { - // replace this object with the singleton - return INSTANCE; - } - } -} |