Use a diff that ignores trailing whitespaces to get by some layout test failures.
This commit is contained in:
@@ -26,6 +26,7 @@ import java.io.File;
|
|||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
import java.io.FileReader;
|
import java.io.FileReader;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
public class FsUtils {
|
public class FsUtils {
|
||||||
|
|
||||||
@@ -121,4 +122,38 @@ public class FsUtils {
|
|||||||
return url;
|
return url;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean diffIgnoreSpaces(String file1, String file2) throws IOException {
|
||||||
|
BufferedReader br1 = new BufferedReader(new FileReader(file1));
|
||||||
|
BufferedReader br2 = new BufferedReader(new FileReader(file2));
|
||||||
|
boolean same = true;
|
||||||
|
Pattern trailingSpace = Pattern.compile("\\s+$");
|
||||||
|
|
||||||
|
while(true) {
|
||||||
|
String line1 = br1.readLine();
|
||||||
|
String line2 = br2.readLine();
|
||||||
|
|
||||||
|
if (line1 == null && line2 == null)
|
||||||
|
break;
|
||||||
|
if (line1 != null) {
|
||||||
|
line1 = trailingSpace.matcher(line1).replaceAll("");
|
||||||
|
} else {
|
||||||
|
line1 = "";
|
||||||
|
}
|
||||||
|
if (line2 != null) {
|
||||||
|
line2 = trailingSpace.matcher(line2).replaceAll("");
|
||||||
|
} else {
|
||||||
|
line2 = "";
|
||||||
|
}
|
||||||
|
if(!line1.equals(line2)) {
|
||||||
|
same = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
br1.close();
|
||||||
|
br2.close();
|
||||||
|
|
||||||
|
return same;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -249,28 +249,11 @@ public class LayoutTestsAutoTest extends ActivityInstrumentationTestCase2<TestSh
|
|||||||
File expected = new File(expectedResultFile);
|
File expected = new File(expectedResultFile);
|
||||||
if (actual.exists() && expected.exists()) {
|
if (actual.exists() && expected.exists()) {
|
||||||
try {
|
try {
|
||||||
boolean passing = true;
|
if (FsUtils.diffIgnoreSpaces(actualResultFile, expectedResultFile)) {
|
||||||
BufferedReader fr = new BufferedReader(new FileReader(actual));
|
|
||||||
BufferedReader fe = new BufferedReader(new FileReader(expected));
|
|
||||||
while (true) {
|
|
||||||
String s1 = fr.readLine();
|
|
||||||
String s2 = fe.readLine();
|
|
||||||
if (s1 == null && s2 == null)
|
|
||||||
break; // both files are the same
|
|
||||||
if (s1 == null || s2 == null || !s1.equals(s2)) {
|
|
||||||
passing = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (passing) {
|
|
||||||
passedCase(testFile);
|
passedCase(testFile);
|
||||||
} else {
|
} else {
|
||||||
failedCase(testFile);
|
failedCase(testFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
fe.close();
|
|
||||||
fr.close();
|
|
||||||
} catch (FileNotFoundException ex) {
|
} catch (FileNotFoundException ex) {
|
||||||
Log.e(LOGTAG, "File not found : " + ex.getMessage());
|
Log.e(LOGTAG, "File not found : " + ex.getMessage());
|
||||||
} catch (IOException ex) {
|
} catch (IOException ex) {
|
||||||
|
|||||||
Reference in New Issue
Block a user