@Test
  public void testLookup_absolute_withDotDotsInPath() throws IOException {
    assertExists(lookup("/.."), "/", "/");
    assertExists(lookup("/../../.."), "/", "/");
    assertExists(lookup("/work/.."), "/", "/");
    assertExists(lookup("/work/../work/one/two/../two/three"), "two", "three");
    assertExists(lookup("/work/one/two/../../four/../one/two/three/../three"), "two", "three");
    assertExists(lookup("/work/one/two/three/../../two/three/.."), "one", "two");
    assertExists(lookup("/work/one/two/three/../../two/three/../.."), "work", "one");
  }
This path service is for unix-like paths, with the exception that it recognizes $ and ! as
roots in addition to /, allowing for up to three roots. When creating a {@linkplain
PathType#toUriPath URI path}, we prefix the path with / to differentiate between a path like
"$foo/bar" and one like "/$foo/bar". They would become "/$foo/bar" and "//$foo/bar"
respectively.
jimfs/src/test/java/com/google/common/jimfs/FileTreeTest.java