From 480f4d49f62a9bc6db774efcb1bc5c639d8414d1 Mon Sep 17 00:00:00 2001 From: penmetsaa Date: Sun, 27 Dec 2020 11:04:39 +0530 Subject: [PATCH] Fix the unit test case issues in DOS/Windows platform by picking the new line char dynamically. (#2558) * Fix the unit test case issues in DOS/Windows platform by picking th new line char dynamically. * Fix new code comments, and to test in windows machine. * Missed to load static * Comment fixes * Removing unused imports --- .../metadata/model/AltFormatsSchemaTest.java | 9 ++++++--- .../metadata/model/CommentsSchemaTest.java | 10 +++++++--- .../i18n/phonenumbers/metadata/table/CsvTableTest.java | 7 +++++-- 3 files changed, 18 insertions(+), 8 deletions(-) diff --git a/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/model/AltFormatsSchemaTest.java b/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/model/AltFormatsSchemaTest.java index ae4855203..7aa2ec8a9 100644 --- a/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/model/AltFormatsSchemaTest.java +++ b/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/model/AltFormatsSchemaTest.java @@ -15,9 +15,9 @@ */ package com.google.i18n.phonenumbers.metadata.model; +import static com.google.common.base.StandardSystemProperty.LINE_SEPARATOR; import static com.google.common.truth.Truth.assertThat; -import com.google.common.base.CharMatcher; import com.google.common.base.Joiner; import com.google.common.base.Splitter; import com.google.common.collect.ImmutableList; @@ -33,6 +33,8 @@ import org.junit.runners.JUnit4; @RunWith(JUnit4.class) public class AltFormatsSchemaTest { + private static final String NEW_LINE = LINE_SEPARATOR.value(); + @Test public void testSimple_export() throws IOException { assertThat( @@ -98,14 +100,15 @@ public class AltFormatsSchemaTest { try (StringWriter out = new StringWriter()) { AltFormatsSchema.exportCsv(out, Arrays.asList(altFormats)); // Ignore trailing empty lines. - return Splitter.on('\n').splitToList(CharMatcher.is('\n').trimTrailingFrom(out.toString())); + return Splitter.on(NEW_LINE).omitEmptyStrings().splitToList(out.toString()); } } private static ImmutableList importCsv(String... lines) throws IOException { // Add a trailing newline, since that's what we expect in the real CSV files. - StringReader file = new StringReader(Joiner.on('\n').join(lines) + "\n"); + StringReader file = new StringReader(Joiner.on(NEW_LINE).join(lines) + NEW_LINE); return AltFormatsSchema.importAltFormats(file); } } + diff --git a/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/model/CommentsSchemaTest.java b/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/model/CommentsSchemaTest.java index bf9735854..c6087a663 100644 --- a/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/model/CommentsSchemaTest.java +++ b/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/model/CommentsSchemaTest.java @@ -15,12 +15,12 @@ */ package com.google.i18n.phonenumbers.metadata.model; +import static com.google.common.base.StandardSystemProperty.LINE_SEPARATOR; import static com.google.common.truth.Truth.assertThat; import static com.google.i18n.phonenumbers.metadata.model.NumberingScheme.Comment.anchor; import static com.google.i18n.phonenumbers.metadata.proto.Types.XmlNumberType.XML_FIXED_LINE; import static com.google.i18n.phonenumbers.metadata.proto.Types.XmlNumberType.XML_MOBILE; -import com.google.common.base.CharMatcher; import com.google.common.base.Joiner; import com.google.common.base.Splitter; import com.google.common.collect.ImmutableList; @@ -38,6 +38,9 @@ import org.junit.runners.JUnit4; @RunWith(JUnit4.class) public class CommentsSchemaTest { + + private static final String NEW_LINE = LINE_SEPARATOR.value(); + private static final PhoneRegion REGION_US = PhoneRegion.of("US"); private static final PhoneRegion REGION_CA = PhoneRegion.of("CA"); @@ -143,14 +146,15 @@ public class CommentsSchemaTest { try (StringWriter out = new StringWriter()) { CommentsSchema.exportCsv(out, Arrays.asList(comments)); // Ignore trailing empty lines. - return Splitter.on('\n').splitToList(CharMatcher.is('\n').trimTrailingFrom(out.toString())); + return Splitter.on(NEW_LINE).omitEmptyStrings().splitToList(out.toString()); } } private static ImmutableList importCsv(String... lines) throws IOException { // Add a trailing newline, since that's what we expect in the real CSV files. - StringReader file = new StringReader(Joiner.on('\n').join(lines) + "\n"); + StringReader file = new StringReader(Joiner.on(NEW_LINE).join(lines) + NEW_LINE); return CommentsSchema.importComments(file); } } + diff --git a/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/table/CsvTableTest.java b/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/table/CsvTableTest.java index df11cbd7f..3cf471feb 100644 --- a/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/table/CsvTableTest.java +++ b/metadata/src/test/java/com/google/i18n/phonenumbers/metadata/table/CsvTableTest.java @@ -16,6 +16,7 @@ package com.google.i18n.phonenumbers.metadata.table; import static com.google.common.base.Preconditions.checkArgument; +import static com.google.common.base.StandardSystemProperty.LINE_SEPARATOR; import static com.google.common.truth.Truth.assertThat; import static com.google.i18n.phonenumbers.metadata.model.RangesTableSchema.AREA_CODE_LENGTH; import static com.google.i18n.phonenumbers.metadata.model.RangesTableSchema.COMMENT; @@ -64,6 +65,8 @@ public class CsvTableTest { private static final Column REGION_CA = REGIONS.getColumn(PhoneRegion.of("CA")); private static final Column REGION_US = REGIONS.getColumn(PhoneRegion.of("US")); + private static final String NEW_LINE = LINE_SEPARATOR.value(); + @Test public void testRangeTableExport() throws IOException { ImmutableList> columns = @@ -91,7 +94,6 @@ public class CsvTableTest { table.put(PhoneRegion.of("US"), ValidNumberType.PREMIUM_RATE, DigitSequence.of("945123456")); table.put(PhoneRegion.of("CA"), ValidNumberType.MOBILE, DigitSequence.of("555123456")); // Ordering is well defined in the CSV output. - // TODO: Consider making columns able to identify if their values need CSV escaping. CsvTable csv = ExamplesTableSchema.toCsv(table); assertCsv(csv, "Region ; Type ; Number", @@ -264,7 +266,7 @@ public class CsvTableTest { } private static String join(String... lines) { - return String.join("\n", lines) + "\n"; + return String.join(NEW_LINE, lines) + NEW_LINE; } private static RangeKey key(String spec, Integer... lengths) { @@ -273,3 +275,4 @@ public class CsvTableTest { return RangeKey.create(prefix, ImmutableSet.copyOf(lengths)); } } +