Revision: 7016 Author: rj...@google.com Date: Wed Nov 18 16:31:56 2009 Log: Merges tr...@7013 into releases/2.0 Fixes problem in CssNameConverter svn merge --ignore-ancestry -c 7013 https://google-web-toolkit.googlecode.com/svn/trunk .
http://code.google.com/p/google-web-toolkit/source/detail?r=7016 Modified: /releases/2.0/branch-info.txt /releases/2.0/user/src/com/google/gwt/uibinder/attributeparsers/CssNameConverter.java /releases/2.0/user/test/com/google/gwt/uibinder/attributeparsers/CssNameConverterTest.java ======================================= --- /releases/2.0/branch-info.txt Wed Nov 18 15:11:38 2009 +++ /releases/2.0/branch-info.txt Wed Nov 18 16:31:56 2009 @@ -802,3 +802,7 @@ Adds Window.Navigator API Removes hosted mode reference in DynaTable svn merge --ignore-ancestry -c7007,7008,7010 https://google-web-toolkit.googlecode.com/svn/trunk . + +tr...@7013 was merged into this branch + Fixes problem in CssNameConverter + svn merge --ignore-ancestry -c 7013 https://google-web-toolkit.googlecode.com/svn/trunk . ======================================= --- /releases/2.0/user/src/com/google/gwt/uibinder/attributeparsers/CssNameConverter.java Tue Nov 17 15:22:47 2009 +++ /releases/2.0/user/src/com/google/gwt/uibinder/attributeparsers/CssNameConverter.java Wed Nov 18 16:31:56 2009 @@ -28,7 +28,7 @@ */ public static class Failure extends Exception { Failure(String message, Object... params) { - super(String.format(message, params)); + super(String.format(message, params)); } } @@ -59,20 +59,17 @@ * identifiers, with the order of the input set preserved * @throws Failure on collisions due to conversions */ - public Map<String, String> convertSet(Set<String> classNames) - throws Failure { + public Map<String, String> convertSet(Set<String> classNames) throws Failure { Map<String, String> rawToConverted = new LinkedHashMap<String, String>(); Map<String, String> convertedToRaw = new LinkedHashMap<String, String>(); for (String className : classNames) { String converted = convertName(className); String already = convertedToRaw.get(converted); if (already != null) { - throw new Failure("CSS class name collision: \"%s\" and \"%s\"", already, - className); - } - if (!converted.equals(className)) { - convertedToRaw.put(converted, className); - } + throw new Failure("CSS class name collision: \"%s\" and \"%s\"", + already, className); + } + convertedToRaw.put(converted, className); rawToConverted.put(className, converted); } return rawToConverted; ======================================= --- /releases/2.0/user/test/com/google/gwt/uibinder/attributeparsers/CssNameConverterTest.java Tue Nov 17 15:22:47 2009 +++ /releases/2.0/user/test/com/google/gwt/uibinder/attributeparsers/CssNameConverterTest.java Wed Nov 18 16:31:56 2009 @@ -15,10 +15,9 @@ */ package com.google.gwt.uibinder.attributeparsers; -import com.google.gwt.dev.util.collect.Sets; - import junit.framework.TestCase; +import java.util.LinkedHashSet; import java.util.Map; import java.util.Set; @@ -39,11 +38,12 @@ private final CssNameConverter converter = new CssNameConverter(); public void testCollision() { - Set<String> in = Sets.create("charlie-delta", "baker", "charlieDelta", + Set<String> in = makeOrderedSet("charlie-delta", "baker", "charlieDelta", "echo"); try { converter.convertSet(in); + fail(); } catch (CssNameConverter.Failure e) { assertContains(e.getMessage(), "charlie-delta"); assertContains(e.getMessage(), "charlieDelta"); @@ -62,7 +62,7 @@ } public void testNoOp() throws CssNameConverter.Failure { - Set<String> in = Sets.create("able", "baker", "charlieDelta", "echo"); + Set<String> in = makeOrderedSet("able", "baker", "charlieDelta", "echo"); Map<String, String> out = converter.convertSet(in); for (Map.Entry<String, String> entry : out.entrySet()) { @@ -74,11 +74,12 @@ } public void testReverseCollision() { - Set<String> in = Sets.create("charlieDelta", "baker", "charlie-delta", + Set<String> in = makeOrderedSet("charlieDelta", "baker", "charlie-delta", "echo"); try { converter.convertSet(in); + fail(); } catch (CssNameConverter.Failure e) { assertContains(e.getMessage(), "charlie-delta"); assertContains(e.getMessage(), "charlieDelta"); @@ -86,7 +87,7 @@ } public void testSomeOp() throws CssNameConverter.Failure { - Set<String> in = Sets.create("able", "-baker-", "charlie-delta", "echo", + Set<String> in = makeOrderedSet("able", "-baker-", "charlie-delta", "echo", "foxtrot-Tango"); Pair[] expected = { new Pair("able", "able"), new Pair("-baker-", "baker"), @@ -107,4 +108,12 @@ assertTrue(String.format("%s should contain %s", string, fragment), string.contains(fragment)); } -} + + private Set<String> makeOrderedSet(String... strings) { + LinkedHashSet<String> set = new LinkedHashSet<String>(); + for (String string : strings) { + set.add(string); + } + return set; + } +} -- http://groups.google.com/group/Google-Web-Toolkit-Contributors