]> source.dussan.org Git - sonarqube.git/commitdiff
Add org.sonar.api.utils.System2#getResource(name)
authorSimon Brandhof <simon.brandhof@sonarsource.com>
Tue, 15 Mar 2016 09:13:02 +0000 (10:13 +0100)
committerSimon Brandhof <simon.brandhof@sonarsource.com>
Wed, 16 Mar 2016 18:42:59 +0000 (19:42 +0100)
sonar-plugin-api/src/main/java/org/sonar/api/utils/System2.java
sonar-plugin-api/src/test/java/org/sonar/api/utils/System2Test.java

index aa15e0ba1396b829bb4253e6fdfe2591db9938e3..8dd268f4c7c26a25d3655d9df9098f182d1df39a 100644 (file)
  */
 package org.sonar.api.utils;
 
-import org.apache.commons.lang.SystemUtils;
-import org.sonar.api.batch.BatchSide;
-import org.sonar.api.server.ServerSide;
-
-import javax.annotation.CheckForNull;
-
+import java.net.URL;
 import java.util.Date;
 import java.util.Map;
 import java.util.Properties;
 import java.util.TimeZone;
+import javax.annotation.CheckForNull;
+import org.apache.commons.lang.SystemUtils;
+import org.sonar.api.batch.BatchSide;
+import org.sonar.api.server.ServerSide;
 
 /**
  * Proxy over {@link java.lang.System}. It aims to improve testability of classes
@@ -141,6 +140,14 @@ public class System2 {
     return TimeZone.getDefault();
   }
 
+  /**
+   * @since 5.5
+   * @see Class#getResource(String)
+   */
+  public URL getResource(String name) {
+    return getClass().getResource(name);
+  }
+
   /**
    * Closes the object and throws an {@link java.lang.IllegalStateException} on error.
    * @since 5.1
index a50c67788cb36e115cfe88dc56d8871e032f4057..3e410424f2981a2f51a43425b9cb7220055159ee 100644 (file)
@@ -90,6 +90,12 @@ public class System2Test {
     System2.INSTANCE.println("foo");
   }
 
+  @Test
+  public void testGetResource() throws Exception {
+    String name = "META-INF/MANIFEST.MF";
+    assertThat(System2.INSTANCE.getResource(name)).isEqualTo(getClass().getResource(name));
+  }
+
   @Test
   public void close() {
     class MyCloseable implements Closeable {