]> source.dussan.org Git - jgit.git/commitdiff
Add support for nanoseconds and microseconds for Config#getTimeUnit 71/144671/11
authorMatthias Sohn <matthias.sohn@sap.com>
Fri, 21 Jun 2019 15:58:56 +0000 (17:58 +0200)
committerMatthias Sohn <matthias.sohn@sap.com>
Thu, 11 Jul 2019 08:12:04 +0000 (10:12 +0200)
Change-Id: I0a5828438810dd23790cba52d7ae2e055c6a3fc9
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ConfigTest.java
org.eclipse.jgit/src/org/eclipse/jgit/lib/DefaultTypedConfigGetter.java

index c4c4da816585b665619cdf3091c719fbcb189ee6..2d0fe86f9339b3efe098b95ec8e55fa5027b0983 100644 (file)
@@ -52,6 +52,8 @@ import static java.util.concurrent.TimeUnit.DAYS;
 import static java.util.concurrent.TimeUnit.HOURS;
 import static java.util.concurrent.TimeUnit.MILLISECONDS;
 import static java.util.concurrent.TimeUnit.MINUTES;
+import static java.util.concurrent.TimeUnit.NANOSECONDS;
+import static java.util.concurrent.TimeUnit.MICROSECONDS;
 import static java.util.concurrent.TimeUnit.SECONDS;
 import static org.eclipse.jgit.util.FileUtils.pathToString;
 import static org.junit.Assert.assertArrayEquals;
@@ -928,8 +930,18 @@ public class ConfigTest {
 
        @Test
        public void testTimeUnit() throws ConfigInvalidException {
+               assertEquals(0, parseTime("0", NANOSECONDS));
+               assertEquals(2, parseTime("2ns", NANOSECONDS));
+               assertEquals(200, parseTime("200 nanoseconds", NANOSECONDS));
+
+               assertEquals(0, parseTime("0", MICROSECONDS));
+               assertEquals(2, parseTime("2us", MICROSECONDS));
+               assertEquals(2, parseTime("2000 nanoseconds", MICROSECONDS));
+               assertEquals(200, parseTime("200 microseconds", MICROSECONDS));
+
                assertEquals(0, parseTime("0", MILLISECONDS));
                assertEquals(2, parseTime("2ms", MILLISECONDS));
+               assertEquals(2, parseTime("2000microseconds", MILLISECONDS));
                assertEquals(200, parseTime("200 milliseconds", MILLISECONDS));
 
                assertEquals(0, parseTime("0s", SECONDS));
index 891c7f23b41c57861fba3d1675c91e6fd320fb9e..001ae93a0c38489757b6b1f62e63db72c99fd7e7 100644 (file)
@@ -226,6 +226,14 @@ public class DefaultTypedConfigGetter implements TypedConfigGetter {
                        inputUnit = wantUnit;
                        inputMul = 1;
 
+               } else if (match(unitName, "ns", "nanoseconds")) { //$NON-NLS-1$ //$NON-NLS-2$
+                       inputUnit = TimeUnit.NANOSECONDS;
+                       inputMul = 1;
+
+               } else if (match(unitName, "us", "microseconds")) { //$NON-NLS-1$ //$NON-NLS-2$
+                       inputUnit = TimeUnit.MICROSECONDS;
+                       inputMul = 1;
+
                } else if (match(unitName, "ms", "milliseconds")) { //$NON-NLS-1$ //$NON-NLS-2$
                        inputUnit = TimeUnit.MILLISECONDS;
                        inputMul = 1;