X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Futils%2Ftest%2FStringUtilsTest.java;h=e3be298f9b897863da57bd20f94f5884c827317a;hb=79961c53a472a86ee151a35149c27cc1617eb779;hp=4be75040b9966106beb932b825f60d2e53a8adeb;hpb=771c4ba4a1c17a95acbfdcbdb489094b04947713;p=nikiroo-utils.git diff --git a/src/be/nikiroo/utils/test/StringUtilsTest.java b/src/be/nikiroo/utils/test/StringUtilsTest.java index 4be7504..e3be298 100644 --- a/src/be/nikiroo/utils/test/StringUtilsTest.java +++ b/src/be/nikiroo/utils/test/StringUtilsTest.java @@ -144,6 +144,10 @@ class StringUtilsTest extends TestLauncher { @Override public void test() throws Exception { Map>>> source = new HashMap>>>(); + addValue(source, Alignment.LEFT, "testy", -1, "testy"); + addValue(source, Alignment.RIGHT, "testy", -1, "testy"); + addValue(source, Alignment.CENTER, "testy", -1, "testy"); + addValue(source, Alignment.JUSTIFY, "testy", -1, "testy"); addValue(source, Alignment.LEFT, "testy", 5, "testy"); addValue(source, Alignment.LEFT, "testy", 3, "te-", "sty"); addValue(source, Alignment.LEFT, @@ -164,14 +168,15 @@ class StringUtilsTest extends TestLauncher { " sur ", "plusie-", " urs ", "lignes "); addValue(source, Alignment.JUSTIFY, "Un petit texte qui se mettra sur plusieurs lignes", 7, - "Un", "petit", "texte", "qui se", "mettra", "sur", - "plusie-", "urs", "lignes"); + "Un pet-", "it tex-", "te qui", "se met-", "tra sur", + "plusie-", "urs li-", "gnes"); addValue(source, Alignment.JUSTIFY, "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"); - System.out.println(); for (String data : source.keySet()) { for (int size : source.get(data).keySet()) { Alignment align = source.get(data).get(size).getKey(); @@ -181,21 +186,17 @@ class StringUtilsTest extends TestLauncher { List result = StringUtils.justifyText(data, size, align); - System.out.println("[" + data + " (" + size + ")" - + "] -> ["); - for (int i = 0; i < result.size(); i++) { - String resultLine = result.get(i); - System.out.println(i + ": " + resultLine); - } - System.out.println("]"); + // System.out.println("[" + data + " (" + size + ")" + + // "] -> ["); + // for (int i = 0; i < result.size(); i++) { + // String resultLine = result.get(i); + // System.out.println(i + ": " + resultLine); + // } + // System.out.println("]"); - for (int i = 0; i < result.size() && i < values.size(); i++) { - assertEquals("The line " + i + " is not correct", - values.get(i), result.get(i)); - } + assertEquals(values, result); } } - System.out.println(); } }); @@ -222,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(