#
# Copyright 2017, Data61
# Commonwealth Scientific and Industrial Research Organisation (CSIRO)
# ABN 41 687 119 230.
#
# This software may be distributed and modified according to the terms of
# the BSD 2-Clause license. Note that NO WARRANTY is provided.
# See "LICENSE_BSD2.txt" for details.
#
# @TAG(DATA61_BSD)
#

menuconfig LIB_SEL4_TEST
    bool "libsel4test"
    depends on HAVE_LIBC && HAVE_LIB_UTILS
    select HAVE_LIB_SEL4_TEST
    default y
    help
        A test framework and output formatting library

config TESTPRINTER_REGEX
    string "Tests to perform"
    default ".*"
    depends on LIB_SEL4_TEST
    help
        A POSIX regex pattern that is used to filter the tests to run

config TESTPRINTER_HALT_ON_TEST_FAILURE
    bool "Halt on the first test failure"
    default n
    depends on LIB_SEL4_TEST
    help
        Default behaviour is to try and run the test suite, regardless of any failures.
        Turning this on will stop the test suite on the first error

config PRINT_XML
    bool "Print XML output"
    default n
    depends on LIB_SEL4_TEST
    help
        Print XML output. Stdout will be buffered.

config HAVE_LIB_SEL4_TEST
    bool
