]> source.dussan.org Git - sonarqube.git/commitdiff
Try to fix MyNewIssuesEmailTemplateTest on Windows
authorSimon Brandhof <simon.brandhof@sonarsource.com>
Wed, 30 Sep 2015 20:22:10 +0000 (22:22 +0200)
committerSimon Brandhof <simon.brandhof@sonarsource.com>
Wed, 30 Sep 2015 20:22:10 +0000 (22:22 +0200)
server/sonar-server/src/test/java/org/sonar/server/issue/notification/MyNewIssuesEmailTemplateTest.java

index 234903787465c03492eb117f28bae28cf7727ee1..c936d1c883fdf3ddb394ab90fe274536a8e14f3d 100644 (file)
@@ -21,6 +21,7 @@
 package org.sonar.server.issue.notification;
 
 import java.io.IOException;
+import java.net.URL;
 import java.nio.charset.StandardCharsets;
 import java.util.Date;
 import java.util.Locale;
@@ -95,8 +96,7 @@ public class MyNewIssuesEmailTemplateTest {
     EmailMessage message = underTest.format(notification);
 
     // TODO datetime to be completed when test is isolated from JVM timezone
-    String file = loadTestFile("MyNewIssuesEmailTemplateTest/email_with_all_details.txt");
-    assertThat(message.getMessage()).startsWith(file);
+    assertStartsWithFile(message.getMessage(), getClass().getResource("MyNewIssuesEmailTemplateTest/email_with_all_details.txt"));
   }
 
   @Test
@@ -124,8 +124,7 @@ public class MyNewIssuesEmailTemplateTest {
     EmailMessage message = underTest.format(notification);
 
     // TODO datetime to be completed when test is isolated from JVM timezone
-    String file = loadTestFile("MyNewIssuesEmailTemplateTest/email_with_no_assignee_tags_components.txt");
-    assertThat(message.getMessage()).startsWith(file);
+    assertStartsWithFile(message.getMessage(), getClass().getResource("MyNewIssuesEmailTemplateTest/email_with_no_assignee_tags_components.txt"));
   }
 
   @Test
@@ -178,9 +177,15 @@ public class MyNewIssuesEmailTemplateTest {
       .setFieldValue(RULE + ".2.count", "5");
   }
 
-  private static String loadTestFile(String path) throws IOException {
-    String file = IOUtils.toString(MyNewIssuesEmailTemplateTest.class.getResource(path), StandardCharsets.UTF_8);
-    // sanitize EOL characters if git clone is badly configured
-    return file.replaceAll("\\r\\n|\\r", "");
+  private static void assertStartsWithFile(String message, URL file) throws IOException {
+    String fileContent = IOUtils.toString(file, StandardCharsets.UTF_8);
+    assertThat(sanitizeString(message)).startsWith(sanitizeString(fileContent));
+  }
+
+  /**
+   * sanitize EOL and tabs if git clone is badly configured
+   */
+  private static String sanitizeString(String s) {
+    return s.replaceAll("\\r\\n|\\r|\\s+", "");
   }
 }