This library performs checks on the installed system to verify which
optional components are available and whether all libraries that load
shared objects/DLLs can be loaded.
component(?Component, -Features) is nondet[private]- This predicate describes the test components. Features is a dict
with the following components:
- test:Goal
- (Additional) test that must succeed for the component to be
functional.
- url:URL
- URL with additional information, relative to
http://www.swi-prolog.org/build/issues/
. If not provided,
the library file with extension .html
is used.
- optional:true
- If the library does not exist, do not complain.
- os:OS
- One of
windows
, unix
or linux
. If present, the component
is only checked for if we are running on a version of the
specified operating system.
- features:Goal
- After successful evaluation that loading and basic operation
of the component succeeds, run this to check additional
features.
check_installation- Check features of the installed system. Performs the following
tests:
- Test whether features that depend on optional libraries
are present (e.g., unbounded arithmetic support)
- Test that all standard libraries that depend on foreign
code are present.
- provides a test_installation predicate to run the tests
at runtime if the system was built with -DINSTALL_TESTS
If issues are found it prints a diagnostic message with a link
to a wiki page with additional information about the issue.
check_installation(-Issues:list(pair)) is det- As check_installation/0, but additionally returns a list of
Component-Problem pairs. Problem is one of
optional_not_found
(optional component is not present), not_found
(component is
not present) or failed
(component is present but cannot be
loaded).
test_component(+Properties) is semidet[private]- Run additional tests to see whether the component really works.
check_features(+Properties) is semidet[private]- Check for additional features of the components.
- See also
- - check_component/1 should be used for checking that the
component works.
run_silent(:Goal, +Properties) is semidet[private]- Succeed if Goal succeeds and does not print any errors or
warnings.
run_collect_messages(Goal, Result, Messages) is det[private]- Run Goal, unify Result with
true
, false
or exception(Error)
and messages with a list of generated error and warning
messages. Each message is a term:
message(Term,Kind,Lines)
- See also
- - message_hook/3.
test_tcmalloc[private]
archive_features[private]- Report features supported by library(archive).
pcre_features[private]
jquery_file[private]- Test whether jquery.js can be found
check_on_path[private]- Validate that Prolog is installed in $PATH. Only performed if the
running executable is a normal executable file, assuming some
special installation such as the WASM version otherwise.
test_installation is semidet
test_installation(+Options) is semidet- Run regression tests in the installed system. Requires the system to
be built using
cmake -DINSTALL_TESTS=ON
Options processed:
- packages(+Boolean)
- When
false
, do not test the packages
- package(+Package)
- Only test package package.
check_config_files- Examines the locations of config files. The config files have moved
in version 8.1.15
update_config_files- Move config files from their old location to the new if the file or
directory exists in the old location but not in the new.
Undocumented predicates
The following predicates are exported, but not or incorrectly documented.
test_installation(Arg1)