    def test_evaluate_dict_key_as_underscore(self):
        # Traversing to the name `_` will raise a DeprecationWarning
        # because it will go away in Zope 6.
        ec = self._makeContext()
        with warnings.catch_warnings():
            warnings.simplefilter('ignore')
            self.assertEqual(ec.evaluate('d/_'), 'under')
The software uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the software does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.