diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/nls/NlsRefactoringCreateChangeTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/nls/NlsRefactoringCreateChangeTest.java
index fe1cab5..9f580f1 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/nls/NlsRefactoringCreateChangeTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/nls/NlsRefactoringCreateChangeTest.java
@@ -101,14 +101,14 @@
     }
 
     private void checkContentOfCu(String message, ICompilationUnit cu, String content) throws Exception {
-        assertEquals(message, content, cu.getBuffer().getContents());
+        RefactoringTest.assertEqualLines(message, content, cu.getBuffer().getContents());
     }
     
     private void checkContentOfFile(String message, IFile file, String content) throws Exception {
         InputStream in = file.getContents();
         String realContent = copyToString(in);
         in.close();
-        assertEquals(message, content, realContent);
+        RefactoringTest.assertEqualLines(message, content, realContent);
     }
     
     private String copyToString(InputStream in) throws Exception {
