1#!/usr/bin/env bash 2# 3# Copyright (C) 2019-2021 Red Hat, Inc. 4# This file is part of elfutils. 5# 6# This file is free software; you can redistribute it and/or modify 7# it under the terms of the GNU General Public License as published by 8# the Free Software Foundation; either version 3 of the License, or 9# (at your option) any later version. 10# 11# elfutils is distributed in the hope that it will be useful, but 12# WITHOUT ANY WARRANTY; without even the implied warranty of 13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14# GNU General Public License for more details. 15# 16# You should have received a copy of the GNU General Public License 17# along with this program. If not, see <http://www.gnu.org/licenses/>. 18 19. $srcdir/debuginfod-subr.sh 20 21# for test case debugging, uncomment: 22set -x 23unset VALGRIND_CMD 24 25export DEBUGINFOD_CACHE_PATH=${PWD}/.client_cache 26 27# Test fetching a file using file:// . No debuginfod server needs to be run for 28# this test. 29local_dir=${PWD}/mocktree/buildid/aaaaaaaaaabbbbbbbbbbccccccccccdddddddddd/source/my/path 30mkdir -p ${local_dir} 31echo "int main() { return 0; }" > ${local_dir}/main.c 32# first test that is doesn't work, when no DEBUGINFOD_URLS is set 33export DEBUGINFOD_URLS="" 34testrun ${abs_top_builddir}/debuginfod/debuginfod-find source aaaaaaaaaabbbbbbbbbbccccccccccdddddddddd /my/path/main.c && false || true 35 36# Now test is with proper DEBUGINFOD_URLS 37export DEBUGINFOD_URLS="file://${PWD}/mocktree/" 38filename=`testrun ${abs_top_builddir}/debuginfod/debuginfod-find source aaaaaaaaaabbbbbbbbbbccccccccccdddddddddd /my/path/main.c` 39cmp $filename ${local_dir}/main.c 40 41exit 0 42