@Test
public void testJoinParsePathExpression() {

    @SuppressWarnings("unchecked")
    List<String> l1 = (List<String>) ObjectPathExpressionParser.parsePathExpression(null, "foo.bar", new JoinIt());
    assertEquals(2, l1.size());
    assertEquals("foo", l1.get(0));
    assertEquals("bar", l1.get(1));
    
    @SuppressWarnings("unchecked")
    List<String> l2 = (List<String>) ObjectPathExpressionParser.parsePathExpression(null, "foo[bar]", new JoinIt());
    assertEquals(2, l2.size());
    assertEquals("foo", l2.get(0));
    assertEquals("bar", l2.get(1));
    
    @SuppressWarnings("unchecked")
    List<String> l3 = (List<String>) ObjectPathExpressionParser.parsePathExpression(null, "foo[bar-bar.baz].fez", new JoinIt());
    assertEquals(3, l3.size());
    assertEquals("foo", l3.get(0));
    assertEquals("bar-bar.baz", l3.get(1));
    assertEquals("fez", l3.get(2));
}