public DirectoryEntry lookUp(
      File workingDirectory, JimfsPath path, Set<? super LinkOption> options) throws IOException {
    checkNotNull(path);
    checkNotNull(options);

    DirectoryEntry result = lookUp(workingDirectory, path, options, 0);
    if (result == null) {
      // an intermediate file in the path did not exist or was not a directory
      throw new NoSuchFileException(path.toString());
    }
    return result;
  }
@Test
  public void testLookup_relative_withDotDotsInPath() throws IOException {
    assertExists(lookup(".."), "/", "/");
    assertExists(lookup("../../.."), "/", "/");
    assertExists(lookup("../work"), "/", "work");
    assertExists(lookup("../../work"), "/", "work");
    assertExists(lookup("../foo"), "/", "foo");
    assertExists(lookup("../work/one/two/../two/three"), "two", "three");
    assertExists(lookup("one/two/../../four/../one/two/three/../three"), "two", "three");
    assertExists(lookup("one/two/three/../../two/three/.."), "one", "two");
    assertExists(lookup("one/two/three/../../two/three/../.."), "work", "one");
  }