public static boolean firstPathIsShortest(String left, String right) {
        if (left.contains("dctemp") && !right.contains("dctemp")) {
            return false;
        }
        final String leftPath = left.replace('\\', '/');
        final String rightPath = right.replace('\\', '/');

        final int leftCount = countChar(leftPath, '/');
        final int rightCount = countChar(rightPath, '/');
        if (leftCount == rightCount) {
            return leftPath.compareTo(rightPath) <= 0;
        } else {
            return leftCount < rightCount;
        }
    }
@Test
    public void testFirstPathIsShortest() {
        String left = "./a/c.jar";
        String right = "./d/e/f.jar";
        boolean expResult = true;
        boolean result = DependencyBundlingAnalyzer.firstPathIsShortest(left, right);
        assertEquals(expResult, result);

        left = "./a/b/c.jar";
        right = "./d/e/f.jar";
        expResult = true;
        result = DependencyBundlingAnalyzer.firstPathIsShortest(left, right);
        assertEquals(expResult, result);

        left = "./d/b/c.jar";
        right = "./a/e/f.jar";
        expResult = false;
        result = DependencyBundlingAnalyzer.firstPathIsShortest(left, right);
        assertEquals(expResult, result);

        left = "./a/b/c.jar";
        right = "./d/f.jar";
        expResult = false;
        result = DependencyBundlingAnalyzer.firstPathIsShortest(left, right);
        assertEquals(expResult, result);

        left = "./a/b/c.jar";
        right = "./a/b/c.jar";
        expResult = true;
        result = DependencyBundlingAnalyzer.firstPathIsShortest(left, right);
        assertEquals(expResult, result);
    }