This is an automated email from the git hooks/post-receive script. sylvestre pushed a commit to branch master in repository jscover.
commit c63924f4d14c50dde54a8f614a73ab66546d11fb Author: tntim96 <[email protected]> Date: Thu Jul 3 22:58:56 2014 +1000 Remove checked exception from public API --- History.md | 4 +++ src/main/java/jscover/report/Main.java | 12 ++++----- src/main/java/jscover/util/IoUtils.java | 17 ++++++++++++ src/test/java/jscover/report/MainTest.java | 8 +++--- src/test/java/jscover/util/IoUtilsTest.java | 40 +++++++++++++++++++++++++++++ 5 files changed, 71 insertions(+), 10 deletions(-) diff --git a/History.md b/History.md index 4aa6ba5..016056b 100644 --- a/History.md +++ b/History.md @@ -1,3 +1,7 @@ +1.0.13 / 2014-??-?? +================== + * Internal: Remove checked exception from public API + 1.0.12 / 2014-07-02 ================== * Add `--save-json-only` to only save coverage data (https://github.com/tntim96/JSCover/issues/142) diff --git a/src/main/java/jscover/report/Main.java b/src/main/java/jscover/report/Main.java index 34d08ab..af5e45c 100644 --- a/src/main/java/jscover/report/Main.java +++ b/src/main/java/jscover/report/Main.java @@ -364,8 +364,8 @@ public class Main { public static final Properties properties = new Properties(); - public void initialize() throws IOException { - properties.load(jscover.Main.class.getResourceAsStream("/jscover/configuration.properties")); + public void initialize() { + ioUtils.loadProperties(properties, jscover.Main.class.getResourceAsStream("/jscover/configuration.properties")); } private ExitHelper exitHelper = new ExitHelper(); @@ -437,10 +437,10 @@ public class Main { ioUtils.copy(jsonDataMerger.toJSON(mergedMap), mergedJson); } - public void generateLCovDataFile() throws IOException { + public void generateLCovDataFile() { String json = ioUtils.loadFromFileSystem(new File(config.getJsonDirectory(), "jscoverage.json")); File lcovFile = new File(config.getJsonDirectory(), "jscover.lcov"); - lCovGenerator.saveData(jsonDataMerger.jsonToMap(json).values(), config.getSourceDirectory().getCanonicalPath(), lcovFile); + lCovGenerator.saveData(jsonDataMerger.jsonToMap(json).values(), ioUtils.getCanonicalPath(config.getSourceDirectory()), lcovFile); } public void saveXmlSummary() { @@ -449,9 +449,9 @@ public class Main { xmlSummary.saveSummary(summaryData, config.getJsonDirectory(), config.getVersion()); } - public void saveCoberturaXml() throws IOException { + public void saveCoberturaXml() { String json = ioUtils.loadFromFileSystem(new File(config.getJsonDirectory(), "jscoverage.json")); - String xml = coberturaXmlGenerator.generateXml(new CoberturaData(jsonDataMerger.jsonToMap(json).values()), config.getSourceDirectory().getCanonicalPath(), config.getVersion()); + String xml = coberturaXmlGenerator.generateXml(new CoberturaData(jsonDataMerger.jsonToMap(json).values()), ioUtils.getCanonicalPath(config.getSourceDirectory()), config.getVersion()); File dest = new File(config.getJsonDirectory(), "cobertura-coverage.xml"); ioUtils.copy(xml, dest); } diff --git a/src/main/java/jscover/util/IoUtils.java b/src/main/java/jscover/util/IoUtils.java index d2f4797..9bf856a 100644 --- a/src/main/java/jscover/util/IoUtils.java +++ b/src/main/java/jscover/util/IoUtils.java @@ -345,6 +345,7 @@ package jscover.util; import java.io.*; import java.net.Socket; import java.nio.charset.Charset; +import java.util.Properties; import java.util.logging.Level; import java.util.logging.Logger; @@ -624,6 +625,22 @@ public class IoUtils { ioUtils.copy(src, dest); } + public String getCanonicalPath(File file) { + try { + return file.getCanonicalPath(); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + public void loadProperties(Properties properties, InputStream is) { + try { + properties.load(is); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + public int getDataIndex(byte[] bytes, Charset charset) { String firstBytes = new String(bytes, charset); String separator = CRLFx2; diff --git a/src/test/java/jscover/report/MainTest.java b/src/test/java/jscover/report/MainTest.java index 1fcf6ae..8fe997a 100644 --- a/src/test/java/jscover/report/MainTest.java +++ b/src/test/java/jscover/report/MainTest.java @@ -362,10 +362,8 @@ import org.mockito.runners.MockitoJUnitRunner; import java.io.File; import java.io.IOException; -import java.util.ArrayList; -import java.util.List; -import java.util.SortedMap; -import java.util.TreeMap; +import java.io.InputStream; +import java.util.*; import static jscover.Main.reportSrcSubDir; import static org.hamcrest.CoreMatchers.is; @@ -436,6 +434,7 @@ public class MainTest { given(config.getSourceDirectory()).willReturn(srcDir); String json = "json"; given(ioUtils.loadFromFileSystem(new File(jsonDirectory, "jscoverage.json"))).willReturn(json); + doReturn(srcDir.getCanonicalPath()).when(ioUtils).getCanonicalPath(srcDir); SortedMap<String, FileData> list = new TreeMap<String, FileData>(); given(jsonDataMerger.jsonToMap(json)).willReturn(list); @@ -456,6 +455,7 @@ public class MainTest { given(config.getSourceDirectory()).willReturn(srcDir); String json = "json"; given(ioUtils.loadFromFileSystem(new File(jsonDirectory, "jscoverage.json"))).willReturn(json); + doReturn(srcDir.getCanonicalPath()).when(ioUtils).getCanonicalPath(srcDir); SortedMap<String, FileData> list = new TreeMap<String, FileData>(); given(jsonDataMerger.jsonToMap(json)).willReturn(list); given(coberturaXmlGenerator.generateXml(Matchers.<CoberturaData>any(), anyString(), anyString())).willReturn("<xml/>"); diff --git a/src/test/java/jscover/util/IoUtilsTest.java b/src/test/java/jscover/util/IoUtilsTest.java index 0ad7f63..6992c2b 100644 --- a/src/test/java/jscover/util/IoUtilsTest.java +++ b/src/test/java/jscover/util/IoUtilsTest.java @@ -352,6 +352,7 @@ import org.mockito.runners.MockitoJUnitRunner; import java.io.*; import java.net.Socket; import java.nio.charset.Charset; +import java.util.Properties; import static org.hamcrest.CoreMatchers.equalTo; import static org.junit.Assert.*; @@ -624,6 +625,45 @@ public class IoUtilsTest { } @Test + public void shouldGetCanonicalPath() throws IOException { + File file = new File("target/test.txt"); + assertThat(ioUtils.getCanonicalPath(file), equalTo(file.getCanonicalPath())); + } + + @Test + public void shouldWrapCanonicalPathException() throws IOException { + File file = mock(File.class); + given(file.getCanonicalPath()).willThrow(new IOException("Ouch!")); + try { + ioUtils.getCanonicalPath(file); + fail("Expected exception"); + } catch (RuntimeException e) { + assertThat(e.getMessage(), equalTo("java.io.IOException: Ouch!")); + } + } + + @Test + public void shouldLoadProperties() throws IOException { + Properties properties = mock(Properties.class); + InputStream is = mock(InputStream.class); + ioUtils.loadProperties(properties, is); + verify(properties).load(is); + } + + @Test + public void shouldWrapLoadPropertiesException() throws IOException { + Properties properties = mock(Properties.class); + InputStream is = mock(InputStream.class); + doThrow(new IOException("Ouch!")).when(properties).load(is); + try { + ioUtils.loadProperties(properties, is); + fail("Expected exception"); + } catch (RuntimeException e) { + assertThat(e.getMessage(), equalTo("java.io.IOException: Ouch!")); + } + } + + @Test public void should() { new Dummy(); } -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jscover.git _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

