Merge branch 'master' of github.com:nikiroo/nikiroo-utils
[fanfix.git] / src / be / nikiroo / utils / test / StringUtilsTest.java
index 6ebf43ef019a0d2d2760892cd0ea2465888e7c2c..e3be298f9b897863da57bd20f94f5884c827317a 100644 (file)
@@ -174,6 +174,8 @@ class StringUtilsTest extends TestLauncher {
                                                "Un petit texte qui se mettra sur plusieurs lignes",
                                                14, "Un       petit", "texte  qui  se",
                                                "mettra     sur", "plusieurs lig-", "nes");
+                               addValue(source, Alignment.JUSTIFY, "le dash-test", 9,
+                                               "le  dash-", "test");
 
                                for (String data : source.keySet()) {
                                        for (int size : source.get(data).keySet()) {
@@ -221,11 +223,54 @@ class StringUtilsTest extends TestLauncher {
                        @Override
                        public void test() throws Exception {
                                String orig = "test";
-                               String zipped = StringUtils.zip64(orig);
-                               String unzipped = StringUtils.unzip64(zipped);
+                               String zipped = StringUtils.base64(orig, true);
+                               String unzipped = StringUtils.unbase64s(zipped, true);
                                assertEquals(orig, unzipped);
                        }
                });
+
+               addTest(new TestCase("format/toNumber simple") {
+                       @Override
+                       public void test() throws Exception {
+                               assertEquals(263l, StringUtils.toNumber("263"));
+                               assertEquals(21200l, StringUtils.toNumber("21200"));
+                               assertEquals(0l, StringUtils.toNumber("0"));
+                               assertEquals("263", StringUtils.formatNumber(263l));
+                               assertEquals("21k", StringUtils.formatNumber(21000l));
+                               assertEquals("0", StringUtils.formatNumber(0l));
+                       }
+               });
+
+               addTest(new TestCase("format/toNumber not 000") {
+                       @Override
+                       public void test() throws Exception {
+                               assertEquals(263200l, StringUtils.toNumber("263.2k"));
+                               assertEquals(42000l, StringUtils.toNumber("42.0k"));
+                               assertEquals(12000000l, StringUtils.toNumber("12M"));
+                               assertEquals(2000000000l, StringUtils.toNumber("2G"));
+                               assertEquals("263k", StringUtils.formatNumber(263012l));
+                               assertEquals("42k", StringUtils.formatNumber(42012l));
+                               assertEquals("12M", StringUtils.formatNumber(12012121l));
+                               assertEquals("7G", StringUtils.formatNumber(7364635928l));
+                       }
+               });
+
+               addTest(new TestCase("format/toNumber decimals") {
+                       @Override
+                       public void test() throws Exception {
+                               assertEquals(263200l, StringUtils.toNumber("263.2k"));
+                               assertEquals(1200l, StringUtils.toNumber("1.2k"));
+                               assertEquals(42700000l, StringUtils.toNumber("42.7M"));
+                               assertEquals(1220l, StringUtils.toNumber("1.22k"));
+                               assertEquals(1432l, StringUtils.toNumber("1.432k"));
+                               assertEquals(6938l, StringUtils.toNumber("6.938k"));
+                               assertEquals("1.3k", StringUtils.formatNumber(1300l, 1));
+                               assertEquals("263.2020k", StringUtils.formatNumber(263202l, 4));
+                               assertEquals("1.26k", StringUtils.formatNumber(1267l, 2));
+                               assertEquals("42.7M", StringUtils.formatNumber(42712121l, 1));
+                               assertEquals("5.09G", StringUtils.formatNumber(5094837485l, 2));
+                       }
+               });
        }
 
        static private void addValue(