def METHOD_NAME(self):
    path = 'a/b/c'
    col_d = 'd'
    col_e = 'd/e'
    abs_path = os.path.join(self.admin.session_collection, path)
    abs_path_to_col_d = os.path.join(self.admin.session_collection, path, col_d)
    self.admin.assert_icommand(['imkdir', '-p', os.path.join(path, col_e)])
    self.admin.assert_icommand(['icd', path])
    self.admin.assert_icommand(['ils'], 'STDOUT_MULTILINE', [abs_path, 'C- {0}'.format(abs_path_to_col_d)])
    self.admin.assert_icommand(['irmdir', '-p', col_e])
    self.admin.assert_icommand(['ils', col_e], 'STDERR', '/{0} does not exist '.format(col_e))
    self.admin.assert_icommand(['icd', self.admin.session_collection])
    self.admin.assert_icommand(['irmdir', '-p', path])
    self.admin.assert_icommand(['ils', path], 'STDERR', '/{0} does not exist '.format(path))
    # Trying to remove a collection that does not exist produces an error.
    self.admin.assert_icommand(['irmdir', '-p', 'x/y/z'], 'STDERR', 'Collection does not exist')
    # Trying to remove a collection that is not empty produces an error.
    self.admin.assert_icommand(['imkdir', '-p', 'a/b/c'])
    self.admin.assert_icommand(['imkdir', '-p', 'a/b/d'])
    self.admin.assert_icommand(['irmdir', '-p', 'a/b'], 'STDERR', 'Collection is not empty')
    self.admin.assert_icommand(['irmdir', 'a/b/c'])
    self.admin.assert_icommand(['irmdir', 'a/b/d'])
    self.admin.assert_icommand(['irmdir', '-p', 'a/b'])
    # Trying to remove a data object produces an error.
    filename = 'test_irmdir_of_dataobj'
    lib.make_file(filename, 1024, 'arbitrary')
    rods_filename = os.path.join(self.admin.session_collection, filename)
    self.admin.assert_icommand(['iput', filename, rods_filename])
    self.admin.assert_icommand(['irmdir', '-p', rods_filename], 'STDERR', 'Path does not point to a collection')
    self.admin.assert_icommand(['irm', '-f', rods_filename])
    os.unlink(filename)