]> source.dussan.org Git - sonar-scanner-cli.git/commitdiff
Add unit tests
authorSimon Brandhof <simon.brandhof@gmail.com>
Sat, 6 Apr 2013 14:06:48 +0000 (16:06 +0200)
committerSimon Brandhof <simon.brandhof@gmail.com>
Sat, 6 Apr 2013 14:06:48 +0000 (16:06 +0200)
sonar-runner-impl/src/main/java/org/sonar/runner/impl/Jars30.java
sonar-runner-impl/src/main/java/org/sonar/runner/impl/Jars35.java

index 3ea1c7ec73397c097a54e67062c4c4df7a53149d..274bbd7976e5843a32bb37fc7e70b6704c331fc7 100644 (file)
@@ -17,7 +17,6 @@
  * License along with this program; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02
  */
-
 package org.sonar.runner.impl;
 
 import java.io.File;
@@ -27,10 +26,10 @@ import java.util.List;
 
 class Jars30 {
   private static final String BATCH_PATH = "/batch/";
-  private final ServerConnection downloader;
+  private final ServerConnection connection;
 
-  Jars30(ServerConnection downloader) {
-    this.downloader = downloader;
+  Jars30(ServerConnection conn) {
+    this.connection = conn;
   }
 
   List<File> download(File workDir, JarExtractor jarExtractor) {
@@ -43,17 +42,17 @@ class Jars30 {
   private List<File> downloadFiles(File workDir) {
     try {
       List<File> files = new ArrayList<File>();
-      String libs = downloader.downloadString(BATCH_PATH);
+      String libs = connection.downloadString(BATCH_PATH);
       File dir = new File(workDir, "batch");
       dir.mkdirs();
       for (String lib : libs.split(",")) {
         File file = new File(dir, lib);
-        downloader.download(BATCH_PATH + lib, file);
+        connection.download(BATCH_PATH + lib, file);
         files.add(file);
       }
       return files;
-    } catch (IOException e) {
-      throw new IllegalStateException("Fail to download libraries", e);
+    } catch (Exception e) {
+      throw new IllegalStateException("Fail to download libraries from server", e);
     }
   }
 
index b36bd385a01327f4d231c9cd11e4a47cc01d8dc5..ff3bbdcf6b8027327c52ed72e74b5f9d1502dab8 100644 (file)
@@ -34,12 +34,21 @@ class Jars35 {
   static final String BATCH_PATH = "/batch/";
 
   private final FileCache fileCache;
-  private final ServerConnection downloader;
+  private final ServerConnection connection;
   private final JarExtractor jarExtractor;
 
-  Jars35(ServerConnection downloader, JarExtractor jarExtractor) {
+  Jars35(ServerConnection conn, JarExtractor jarExtractor) {
     this.fileCache = new FileCacheBuilder().setLog(new StandardLog()).build();
-    this.downloader = downloader;
+    this.connection = conn;
+    this.jarExtractor = jarExtractor;
+  }
+
+  /**
+   * For unit tests
+   */
+  Jars35(FileCache fileCache, ServerConnection conn, JarExtractor jarExtractor) {
+    this.fileCache = fileCache;
+    this.connection = conn;
     this.jarExtractor = jarExtractor;
   }
 
@@ -53,33 +62,33 @@ class Jars35 {
   private List<File> dowloadFiles() {
     try {
       List<File> files = new ArrayList<File>();
-      String libs = downloader.downloadString(BOOTSTRAP_INDEX_PATH);
+      String libs = connection.downloadString(BOOTSTRAP_INDEX_PATH);
       String[] lines = libs.split("[\r\n]+");
-      JarDownloader jarDownloader = new JarDownloader(downloader);
+      BatchFileDownloader batchFileDownloader = new BatchFileDownloader(connection);
       for (String line : lines) {
         line = line.trim();
         if (!"".equals(line)) {
           String[] libAndHash = line.split("\\|");
           String filename = libAndHash[0];
           String hash = libAndHash.length > 0 ? libAndHash[1] : null;
-          files.add(fileCache.get(filename, hash, jarDownloader));
+          files.add(fileCache.get(filename, hash, batchFileDownloader));
         }
       }
       return files;
-    } catch (IOException e) {
-      throw new IllegalStateException("Fail to download libraries", e);
+    } catch (Exception e) {
+      throw new IllegalStateException("Fail to download libraries from server", e);
     }
   }
 
-  private static class JarDownloader implements FileCache.Downloader {
-    private final ServerConnection downloader;
+  static class BatchFileDownloader implements FileCache.Downloader {
+    private final ServerConnection connection;
 
-    private JarDownloader(ServerConnection downloader) {
-      this.downloader = downloader;
+    BatchFileDownloader(ServerConnection conn) {
+      this.connection = conn;
     }
 
     public void download(String filename, File toFile) throws IOException {
-      downloader.download(BATCH_PATH + filename, toFile);
+      connection.download(BATCH_PATH + filename, toFile);
     }
   }
 }