Server IP : 85.214.239.14 / Your IP : 18.221.160.29 Web Server : Apache/2.4.62 (Debian) System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.18 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : OFF | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /proc/2/root/proc/3/cwd/proc/self/root/proc/self/root/usr/share/autoconf/autotest/ |
Upload File : |
# This file is part of Autoconf. -*- Autoconf -*- # M4 macros used in running tests using third-party testing tools. m4_define([_AT_COPYRIGHT_YEARS], [Copyright (C) 2009-2017, 2020-2021 Free Software Foundation, Inc.]) # This file is part of Autoconf. This program is free # software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the # Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # Under Section 7 of GPL version 3, you are granted additional # permissions described in the Autoconf Configure Script Exception, # version 3.0, as published by the Free Software Foundation. # # You should have received a copy of the GNU General Public License # and a copy of the Autoconf Configure Script Exception along with # this program; see the files COPYINGv3 and COPYING.EXCEPTION # respectively. If not, see <https://www.gnu.org/licenses/>. ## ------------------------ ## ## Erlang EUnit unit tests. ## ## ------------------------ ## # AT_CHECK_EUNIT(MODULE, SPEC, [ERLFLAGS], [RUN-IF-FAIL], [RUN-IF-PASS]) # ---------------------------------------------------------------------- # Check that the EUnit test specification SPEC passes. The ERLFLAGS # optional flags are passed to the Erlang interpreter command line to # execute the test. The test is executed from an automatically # generated Erlang module named MODULE. Each call to this macro should # have a distinct MODULE name within each test group, to ease # debugging. # An Erlang/OTP version which contains the eunit library must be # installed, in order to execute this macro in a test suite. The ERL, # ERLC, and ERLCFLAGS variables must be defined in atconfig, # typically by using the AC_ERLANG_PATH_ERL and AC_ERLANG_PATH_ERLC # Autoconf macros. _AT_DEFINE_SETUP([AT_CHECK_EUNIT], [AT_SKIP_IF([test ! -f "$ERL" || test ! -f "$ERLC"]) ## A wrapper to EUnit, to exit the Erlang VM with the right exit code: AT_DATA([$1.erl], [[-module($1). -export([test/0, test/1]). test() -> test([]). test(Options) -> TestSpec = $2, ReturnValue = case code:load_file(eunit) of {module, _} -> case eunit:test(TestSpec, Options) of ok -> "0\n"; %% test passes _ -> "1\n" %% test fails end; _ -> "77\n" %% EUnit not found, test skipped end, file:write_file("$1.result", ReturnValue), init:stop(). ]]) AT_CHECK(["$ERLC" $ERLCFLAGS -b beam $1.erl]) ## Make EUnit verbose when testsuite is verbose: if test -z "$at_verbose"; then at_eunit_options="verbose" else at_eunit_options="" fi AT_CHECK(["$ERL" $3 -s $1 test $at_eunit_options -noshell], [0], [ignore], [], [$4], [$5]) AT_CAPTURE_FILE([$1.result]) AT_CHECK([test -f "$1.result" && (exit `cat "$1.result"`)]) ])