committed by
Nicolas Pomepuy
2 changed files with 50 additions and 16 deletions
@ -1,29 +1,59 @@ |
|||||
package org.videolan.medialibrary; |
package org.videolan.medialibrary; |
||||
|
|
||||
import org.junit.Test; |
import org.junit.Test; |
||||
import org.junit.runner.RunWith; |
import java.util.ArrayList; |
||||
import org.junit.runners.JUnit4; |
import java.util.List; |
||||
|
import java.util.concurrent.ExecutionException; |
||||
|
import java.util.concurrent.ExecutorService; |
||||
|
import java.util.concurrent.Executors; |
||||
|
import java.util.concurrent.Future; |
||||
|
import java.util.concurrent.TimeUnit; |
||||
import static org.junit.Assert.assertEquals; |
import static org.junit.Assert.assertEquals; |
||||
|
|
||||
@RunWith(JUnit4::class) |
|
||||
public class ToolsTest { |
public class ToolsTest { |
||||
@Test |
|
||||
public void testIsArrayEmpty() { |
|
||||
|
|
||||
|
@Test |
||||
|
public void testMillisToString() { |
||||
|
assertEquals("3min30s", Tools.millisToString(210000, true, true, false)); |
||||
|
assertEquals("3min 30s ", Tools.millisToString(210000, true, true, true)); |
||||
|
assertEquals("3min", Tools.millisToString(180000, true, true, false)); |
||||
|
assertEquals("3min ", Tools.millisToString(180000, true, true, true)); |
||||
|
assertEquals("1h30min30s", Tools.millisToString(5430000, true, true, false)); |
||||
|
assertEquals("1h 30min 30s ", Tools.millisToString(5430000, true, true, true)); |
||||
|
assertEquals("1h30min", Tools.millisToString(5430000, true, false, false)); |
||||
|
assertEquals("1h 30min ", Tools.millisToString(5430000, true, false, true)); |
||||
|
assertEquals("1h30min", Tools.millisToString(5400000, true, true, false)); |
||||
|
assertEquals("17s", Tools.millisToString(17000, true, true, false)); |
||||
|
assertEquals("17s ", Tools.millisToString(17000, true, true, true)); |
||||
|
assertEquals("17s", Tools.millisToString(17000, true, false, false)); |
||||
|
assertEquals("17s ", Tools.millisToString(17000, true, false, true)); |
||||
|
assertEquals("1h30s", Tools.millisToString(3630000, true, true, false)); |
||||
|
assertEquals("1h 30s ", Tools.millisToString(3630000, true, true, true)); |
||||
|
assertEquals("-32:40", Tools.millisToString(-1960000, false, true, false)); |
||||
} |
} |
||||
|
|
||||
|
/** |
||||
|
* Perform multi-threaded testing of the duration formatting routines. |
||||
|
*/ |
||||
@Test |
@Test |
||||
public void testMillisToString() { |
public void testConcurrentMillisToString() throws ExecutionException, InterruptedException { |
||||
assertEquals("3min30s", Tools.millisToString(210000, true, true)); |
List<Future> futureList = new ArrayList<>(); |
||||
assertEquals("3min", Tools.millisToString(180000, true, true)); |
ExecutorService exec = Executors.newFixedThreadPool(2); |
||||
assertEquals("1h30min30s", Tools.millisToString(5430000, true, true)); |
futureList.add(exec.submit(() -> { |
||||
assertEquals("1h30min", Tools.millisToString(5430000, true, false)); |
for (int i = 0; i < 100; i++) { |
||||
assertEquals("1h30min", Tools.millisToString(5400000, true, true)); |
assertEquals("3min30s", Tools.millisToString(210000, true, true, false)); |
||||
assertEquals("17s", Tools.millisToString(17000, true, true)); |
assertEquals("-32:40", Tools.millisToString(-1960000, false, true, false)); |
||||
assertEquals("17s", Tools.millisToString(17000, true, false)); |
} |
||||
assertEquals("1h30s", Tools.millisToString(3630000, true, true)); |
})); |
||||
assertEquals("-32:40", Tools.millisToString(-1960000, false, true)); |
futureList.add(exec.submit(() -> { |
||||
|
for (int i = 0; i < 100; i++) { |
||||
|
assertEquals("3min", Tools.millisToString(180000, true, true, false)); |
||||
|
assertEquals("54:32:10", Tools.millisToString(196330000L, false, true, false)); |
||||
|
} |
||||
|
})); |
||||
|
for (Future f : futureList) f.get(); |
||||
|
exec.shutdown(); |
||||
|
exec.awaitTermination(10, TimeUnit.SECONDS); |
||||
} |
} |
||||
|
|
||||
} |
} |
||||
Loading…
Reference in new issue