- Revision
- 1278
- Author
- mauro
- Date
- 2009-09-26 06:47:26 -0500 (Sat, 26 Sep 2009)
Log Message
Configured UTF-8 encoding of resources, for Eclipse and Maven.
Modified Paths
- trunk/core/jbehave-core/src/behaviour/org/jbehave/scenario/i18n/I18nKeywordsBehaviour.java
- trunk/core/pom.xml
Added Paths
- trunk/core/.settings/
- trunk/core/.settings/org.eclipse.core.resources.prefs
Diff
Property changes: trunk/core/.settings
Name: svn:ignore
+ org.eclipse.jdt.core.prefs
org.maven.ide.eclipse.prefs
Added: trunk/core/.settings/org.eclipse.core.resources.prefs (0 => 1278)
--- trunk/core/.settings/org.eclipse.core.resources.prefs (rev 0) +++ trunk/core/.settings/org.eclipse.core.resources.prefs 2009-09-26 11:47:26 UTC (rev 1278) @@ -0,0 +1,3 @@ +#Sat Sep 26 10:11:15 BST 2009 +eclipse.preferences.version=1 +encoding/<project>=UTF-8
Modified: trunk/core/jbehave-core/src/behaviour/org/jbehave/scenario/i18n/I18nKeywordsBehaviour.java (1277 => 1278)
--- trunk/core/jbehave-core/src/behaviour/org/jbehave/scenario/i18n/I18nKeywordsBehaviour.java 2009-09-25 23:16:35 UTC (rev 1277) +++ trunk/core/jbehave-core/src/behaviour/org/jbehave/scenario/i18n/I18nKeywordsBehaviour.java 2009-09-26 11:47:26 UTC (rev 1278) @@ -1,11 +1,11 @@ package org.jbehave.scenario.i18n; -import static java.util.Arrays.asList; import static org.junit.Assert.assertEquals; +import java.io.IOException; import java.io.UnsupportedEncodingException; -import java.util.List; import java.util.Locale; +import java.util.Properties; import org.jbehave.scenario.definition.KeyWords; import org.junit.Test; @@ -13,65 +13,65 @@ public class I18nKeywordsBehaviour { @Test - public void keywordsInEnglishAsDefault() { - ensureKeywordsAre(null, asList("Scenario:", "GivenScenarios:", - "Examples:", "Example:", "Given", "When", "Then", "And", - "PENDING", "NOT PERFORMED", "FAILED")); + public void keywordsInEnglishAsDefault() throws IOException { + ensureKeywordsAre(null); } @Test - public void keywordsInSpanish() { - ensureKeywordsAre(new Locale("es"), asList("Escenario:", - "Dados los escenarios:", "Ejemplos:", "Ejemplo:", "Dado que", - "Cuando", "Entonces", "Y", "PENDIENTE", "NO REALIZADO", - "FRACASADO")); + public void keywordsInSpanish() throws IOException { + ensureKeywordsAre(new Locale("es")); } @Test - public void keywordsInFrench() { - ensureKeywordsAre(new Locale("fr"), asList("Scnario:", - "Donn les scenarios:", "Exemples:", "Exemple:", "tant donn", - "Quand", "Alors", "Et", "EN ATTENDANT", "NON EXCUT", "CHOU")); + public void keywordsInFrench() throws IOException { + ensureKeywordsAre(new Locale("fr")); } @Test - public void keywordsInItalian() { - ensureKeywordsAre(new Locale("it"), asList("Scenario:", - "Dati gli scenari:", "Esempi:", "Esempio:", "Dato che", - "Quando", "Allora", "E", "PENDENTE", "NON ESEGUITO", "FALLITO")); + public void keywordsInItalian() throws IOException { + ensureKeywordsAre(new Locale("it")); } - @Test - public void keywordsInPortuguese() { - ensureKeywordsAre(new Locale("pt"), asList("Cenrio:", - "Dados os cenrios:", "Exemplos:", "Exemplo:", "Dado que", - "Quando", "Ento", "E", "PENDENTE", "NÌO EXECUTADO", "FALHADO")); + public void keywordsInPortuguese() throws IOException { + ensureKeywordsAre(new Locale("pt")); } - private void ensureKeywordsAre(Locale locale, List<String> expected) { - KeyWords keywords = (locale == null ? new I18nKeyWords() + private void ensureKeywordsAre(Locale locale) throws IOException { + Properties expected = bundleFor(locale); + KeyWords keywords = keyWordsFor(locale); + assertUtf8Equals(expected.getProperty("Scenario"), keywords.scenario()); + assertUtf8Equals(expected.getProperty("GivenScenarios"), keywords.givenScenarios()); + assertUtf8Equals(expected.getProperty("ExamplesTable"), keywords.examplesTable()); + assertUtf8Equals(expected.getProperty("ExamplesTableRow"), keywords.examplesTableRow()); + assertUtf8Equals(expected.getProperty("Given"), keywords.given()); + assertUtf8Equals(expected.getProperty("When"), keywords.when()); + assertUtf8Equals(expected.getProperty("Then"), keywords.then()); + assertUtf8Equals(expected.getProperty("And"), keywords.and()); + assertUtf8Equals(expected.getProperty("Pending"), keywords.pending()); + assertUtf8Equals(expected.getProperty("NotPerformed"), keywords.notPerformed()); + assertUtf8Equals(expected.getProperty("Failed"), keywords.failed()); + } + + private I18nKeyWords keyWordsFor(Locale locale) { + return (locale == null ? new I18nKeyWords() : new I18nKeyWords(locale)); - assertUtf8Equals(expected.get(0), keywords.scenario()); - assertUtf8Equals(expected.get(1), keywords.givenScenarios()); - assertUtf8Equals(expected.get(2), keywords.examplesTable()); - assertUtf8Equals(expected.get(3), keywords.examplesTableRow()); - assertUtf8Equals(expected.get(4), keywords.given()); - assertUtf8Equals(expected.get(5), keywords.when()); - assertUtf8Equals(expected.get(6), keywords.then()); - assertUtf8Equals(expected.get(7), keywords.and()); - assertUtf8Equals(expected.get(8), keywords.pending()); - assertUtf8Equals(expected.get(9), keywords.notPerformed()); - assertUtf8Equals(expected.get(10), keywords.failed()); } + private Properties bundleFor(Locale locale) throws IOException { + Properties expected = new Properties(); + String bundle = "org/jbehave/scenario/i18n/keywords_"+( locale == null ? "en" : locale.getLanguage()) +".properties"; + expected.load(Thread.currentThread().getContextClassLoader().getResourceAsStream(bundle)); + return expected; + } + private void assertUtf8Equals(String expected, String actual) { assertEquals(utf8(expected), actual); } private String utf8(String value) { try { - return new String(value.getBytes("UTF-8"), "UTF-8"); + return new String(value.getBytes("ISO-8859-1"), "UTF-8"); } catch (UnsupportedEncodingException e) { throw new RuntimeException(e); }
Modified: trunk/core/pom.xml (1277 => 1278)
--- trunk/core/pom.xml 2009-09-25 23:16:35 UTC (rev 1277) +++ trunk/core/pom.xml 2009-09-26 11:47:26 UTC (rev 1278) @@ -1,4 +1,5 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.jbehave</groupId> <artifactId>jbehave</artifactId> @@ -34,7 +35,10 @@ <version>1.1</version> </dependency> <dependency> - <!-- Optional as only required scenario class name finder, used by Ant and Maven Plugin modules --> + <!-- + Optional as only required scenario class name finder, used by + Ant and Maven Plugin modules + --> <groupId>org.apache.ant</groupId> <artifactId>ant</artifactId> <version>1.7.0</version> @@ -165,7 +169,10 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> - <version>2.2</version> + <version>2.4</version> + <configuration> + <encoding>UTF-8</encoding> + </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId>
To unsubscribe from this list please visit: