diff options
author | Yigit Boyar <yboyar@google.com> | 2016-01-22 18:20:01 -0800 |
---|---|---|
committer | Yigit Boyar <yboyar@google.com> | 2016-01-26 10:53:37 -0800 |
commit | 89e50f43810ee32d8fc8ea359cd8e0ca4e9c8de4 (patch) | |
tree | 71fbce4229e6ed13b588fd2ee88c5f5baf651cac /compilationTests/src/test/java/android/databinding/compilationTest/BaseCompilationTest.java | |
parent | 8b8eb28e6a043b6914f8561147ac1a3e7c0bc59d (diff) | |
download | data-binding-89e50f43810ee32d8fc8ea359cd8e0ca4e9c8de4.tar.gz |
Fix incremental compilation when dependency layout is removed
This CL fixes a bug where if gradle dependency of a module is removed,
we would not delete its layout files properly.
Change-Id: Ifa5529768ed959acd8b6a903ad33d8f1e42159f7
Bug: 25755539
Diffstat (limited to 'compilationTests/src/test/java/android/databinding/compilationTest/BaseCompilationTest.java')
-rw-r--r-- | compilationTests/src/test/java/android/databinding/compilationTest/BaseCompilationTest.java | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/compilationTests/src/test/java/android/databinding/compilationTest/BaseCompilationTest.java b/compilationTests/src/test/java/android/databinding/compilationTest/BaseCompilationTest.java index e008c828..08bfde50 100644 --- a/compilationTests/src/test/java/android/databinding/compilationTest/BaseCompilationTest.java +++ b/compilationTests/src/test/java/android/databinding/compilationTest/BaseCompilationTest.java @@ -25,10 +25,13 @@ import org.junit.rules.TestName; import android.databinding.tool.store.Location; +import java.io.BufferedInputStream; +import java.io.BufferedReader; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; +import java.io.InputStreamReader; import java.net.URISyntaxException; import java.net.URL; import java.util.ArrayList; @@ -258,8 +261,8 @@ public class BaseCompilationTest { } builder.directory(testFolder); Process process = builder.start(); - String output = IOUtils.toString(process.getInputStream()); - String error = IOUtils.toString(process.getErrorStream()); + String output = collect(process.getInputStream()); + String error = collect(process.getErrorStream()); int result = process.waitFor(); return new CompilationResult(result, output, error); } @@ -269,5 +272,16 @@ public class BaseCompilationTest { gw.setExecutable(true); } - + /** + * Use this instead of IO utils so that we can easily log the output when necessary + */ + private static String collect(InputStream stream) throws IOException { + StringBuilder sb = new StringBuilder(); + String line; + final BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); + while ((line = reader.readLine()) != null) { + sb.append(line).append("\n"); + } + return sb.toString(); + } } |