# Copyright (c) 2013-2019 Huawei Technologies Co., Ltd. All rights reserved.
# Copyright (c) 2020-2021 Huawei Device Co., Ltd. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without modification,
# are permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this list of
# conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
# of conditions and the following disclaimer in the documentation and/or other materials
# provided with the distribution.
#
# 3. Neither the name of the copyright holder nor the names of its contributors may be used
# to endorse or promote products derived from this software without specific prior written
# permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


config TEST_LEVEL
    bool "Enable Test Level"
    default y
    depends on TEST

config TEST_SMOKE
    bool "Enable Test smoke"
    default y
    depends on TEST && TEST_LEVEL

config TEST_FULL
    bool "Enable Test full"
    default y
    depends on TEST && TEST_LEVEL

config TEST_PRESSURE
    bool "Enable Test Pressure"
    default n
    depends on TEST && TEST_LEVEL

config TEST_LLT
    bool "Enable Test LLT"
    default n
    depends on TEST && TEST_LEVEL

config TEST_MUTIL
    bool "Enable Multi Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST
config TEST_KERNEL_BASE
    bool "Enable Kernel Testsuit"
    default y
    depends on KERNEL_TEST &&  TEST
config TEST_KERNEL_BASE_IPC
    bool "Enable IPC Testsuit"
    default y
    depends on KERNEL_TEST &&  TEST_KERNEL_BASE && TEST
config TEST_KERNEL_BASE_CORE
    bool "Enable CORE Testsuit"
    default y
    depends on KERNEL_TEST &&  TEST_KERNEL_BASE && TEST
config TEST_KERNEL_BASE_MP
    bool "Enable MP Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_BASE && TEST && KERNEL_SMP
config TEST_KERNEL_BASE_MEM
    bool "Enable MEM Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_BASE && TEST
config TEST_KERNEL_BASE_VM
    bool "Enable VM Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_BASE && TEST
config TEST_KERNEL_BASE_MISC
    bool "Enable MISC Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_BASE && TEST
config TEST_KERNEL_BASE_OM
    bool "Enable OM Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_BASE && TEST
config TEST_KERNEL_BASE_ATOMIC
    bool "Enable ATOMIC Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_BASE && TEST
config TEST_KERNEL_EXTEND
    bool "Enable Extended Kernel Testsuit"
    default y
    depends on KERNEL_TEST &&  TEST
config TEST_KERNEL_EXTEND_CPP
    bool "Enable CPP Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND && TEST
config TEST_KERNEL_EXTEND_CPUP
    bool "Enable CPUP Testsuit"
    default y
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND && TEST
config TEST_KERNEL_EXTEND_EXC
    bool "Enable EXC Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND && TEST
config TEST_KERNEL_EXTEND_UNALIGNACCESS
    bool "Enable UNALIGNACCESS Testsuit"
    default n
    depends on KERNEL_TEST &&  DO_ALIGN && TEST_KERNEL_EXTEND && TEST
config TEST_KERNEL_EXTEND_MMU
    bool "Enable MMU Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND && TEST
config TEST_KERNEL_EXTEND_DYNLOAD
    bool "Enable DYNLOAD Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND && TEST
config TEST_KERNEL_EXTEND_MPU
    bool "Enable MPU Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND && TEST
config TEST_KERNEL_EXTEND_RUNSTOP
    bool "Enable RUNSTOP Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND  && KERNEL_RUNSTOP && TEST
config TEST_KERNEL_EXTEND_SCATTER
    bool "Enable SCATTER Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND  && KERNEL_SCATTER && TEST
config TEST_KERNEL_EXTEND_TICKLESS
    bool "Enable TICKLESS Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND && TEST
config TEST_KERNEL_EXTEND_TRACE
    bool "Enable TRACE Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_KERNEL_EXTEND && TEST
config TEST_POSIX
    bool "Enable Posix Testsuit"
    default y
    depends on KERNEL_TEST &&  TEST
config TEST_POSIX_MEM
    bool "Enable Mem Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_POSIX && TEST
config TEST_POSIX_MQUEUE
    bool "Enable Mqueue Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_POSIX && TEST
config TEST_POSIX_MUTEX
    bool "Enable Mutex Testsuit"
    default y
    depends on KERNEL_TEST &&  TEST_POSIX && TEST
config TEST_POSIX_PTHREAD
    bool "Enable Pthread Testsuit"
    default y
    depends on KERNEL_TEST &&  TEST_POSIX && TEST
config TEST_POSIX_SCHED
    bool "Enable Sched Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_POSIX && TEST
config TEST_POSIX_SEM
    bool "Enable Sem Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_POSIX && TEST
config TEST_POSIX_SWTMR
    bool "Enable Swtmr Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_POSIX && TEST
config TEST_LINUX
    bool "Enable Linux Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST
config TEST_LINUX_HRTIMER
    bool "Enable Hrtimer Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_LINUX && TEST
config TEST_FS
    bool "Enable FS Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST

config TEST_FS_VFS
    bool "Enable VFS Test"
    default n
    depends on KERNEL_TEST &&  TEST_FS && TEST
config TEST_FS_JFFS
    bool "Enable JFFS Test"
    default n
    depends on KERNEL_TEST &&  TEST_FS && TEST
config TEST_FS_RAMFS
    bool "Enable RAMFS Test"
    default n
    depends on KERNEL_TEST &&  TEST_FS && TEST

config TEST_FS_FAT
    bool "Enable FAT Test"
    default n
    depends on KERNEL_TEST &&  TEST_FS && TEST
config TEST_FS_FAT_FAT32
    bool "Enable FAT32 Test"
    default n
    depends on KERNEL_TEST &&  TEST_FS_FAT && TEST
config TEST_FAT32_FSCK
    bool "Enable FAT32 Fsck Test"
    default n
    depends on KERNEL_TEST &&  TEST_FS_FAT && TEST

config TEST_FS_VIRPART
    bool "Enable FAT virtual partition test"
    default n
    depends on KERNEL_TEST &&  FS_FAT_VIRTUAL_PARTITION && TEST_FS && TEST
config TEST_FS_PROC
    bool "Enable PROC Test"
    default n
    depends on KERNEL_TEST &&  TEST_FS && TEST
config TEST_FS_NFS
    bool "Enable NFS Test"
    default n
    depends on KERNEL_TEST &&  TEST_FS && TEST
config TEST_MTD
    bool "Enable MTD Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST

config TEST_MTD_JFFS
    bool "Enable JFFS MTD Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_MTD && TEST

config TEST_MTD_FAT
    bool "Enable FAT MTD Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_MTD && !FS_FAT_VIRTUAL_PARTITION && TEST

config TEST_MTD_DISK
    bool "Enable FAT MTD DISK Test"
    default n
    depends on KERNEL_TEST &&   TEST_MTD && !FS_FAT_VIRTUAL_PARTITION && TEST

config TEST_MTD_FAT_VIRPART
    bool "Enable FAT virtual partition MTD test"
    default n
    depends on KERNEL_TEST &&  TEST_MTD && FS_FAT_VIRTUAL_PARTITION && TEST

config TEST_DRIVERBASE
    bool "Enable DriverBase Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST
config TEST_LIBC
    bool "Enable LIBC Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST
config TEST_LIBM
    bool "Enable LIBM Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST

config TEST_SHELL
    bool "Enable Shell Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST
config TEST_USB
    bool "Enable Usb Manual Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST && DRIVERS_USB
    help

config TEST_HOST_MASS_DEVICE
    bool "Enable Host Mass Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_MASS_STORAGE && TEST
config TEST_HOST_UVC
    bool "Enable Host UVC Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_HOST_UVC && TEST

config TEST_DEVICE_MASS_GADGET
    bool "Enable Device Mass Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_MASS_STORAGE_GADGET && TEST
config TEST_UVC_GADGET
    bool "Enable UVC Gadget Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_UVC_GADGET && TEST
config TEST_UAC_GADGET
    bool "Enable UAC Gadget Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_UAC_GADGET && TEST

config TEST_CAMERA_GADGET
    bool "Enable Camera Gadget Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_CAMERA_GADGET && TEST
config TEST_HUB_GADGET
    bool "Enable HUB Gadget Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && TEST
config TEST_SERIAL_GADGET
    bool "Enable Serial Gadget Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_SERIAL_GADGET && TEST
config TEST_HID_GADGET
    bool "Enable HID Gadget Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_HID_GADGET && TEST
config TEST_ETHERNET_GADGET
    bool "Enable Ethernet Gadget Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_ETHERNET_GADGET && TEST
config TEST_MULTI_GADGET
    bool "Enable Ethernet & Serial Gadget Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_ETH_SER_GADGET && TEST
config TEST_DFU_GADGET
    bool "Enable Drivers DFU Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && DRIVERS_USB_DFU_GADGET && TEST
config TEST_MUTILDEVICE_GADGET
    bool "Enable Drivers Multidevices Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && TEST
config TEST_SMP_USB
    bool "Enable Usb SMP Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && TEST && KERNEL_SMP
config TEST_HOST_ETH
    bool "Enable Host Eth Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_USB && TEST

config TEST_AUTO_USB
    bool "Enable Usb Auto Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST && DRIVERS_USB

config TEST_MMC
    bool "Enable MMC Testsuit"
    default n
    depends on KERNEL_TEST &&  DRIVERS_MMC && TEST

config TEST_SD
    bool "Enable SD Testsuit"
    default n
    depends on KERNEL_TEST &&  DRIVERS_MMC && TEST_MMC && TEST

config TEST_SDIO
    bool "Enable SDIO Testsuit"
    default n
    depends on KERNEL_TEST &&  DRIVERS_MMC && TEST_MMC && TEST

comment "Only one platform can be selected"
    depends on KERNEL_TEST &&  DRIVERS_MMC && TEST_MMC && TEST && TEST_SDIO
config TEST_SDIO_1131S
    depends on KERNEL_TEST &&  DRIVERS_MMC && TEST_MMC && TEST && TEST_SDIO
    bool "1131s"
config TEST_SDIO_RTL8189
    depends on KERNEL_TEST &&  DRIVERS_MMC && TEST_MMC && TEST && TEST_SDIO
    bool "RTL8189"

config TEST_PERFORMANCE
    bool "Enable Performance Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST
config TEST_PERFORMANCE_CORE
    bool "Enable Performance CORE Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_PERFORMANCE && TEST
config TEST_PERFORMANCE_MEM
    bool "Enable Performance MEM Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_PERFORMANCE && TEST
config TEST_PERFORMANCE_FS
    bool "Enable Performance FS Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_PERFORMANCE && TEST
config TEST_PERFORMANCE_USB
    bool "Enable Performance USB Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_PERFORMANCE && TEST
config TEST_PERFORMANCE_NET
    bool "Enable Performance NET Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_PERFORMANCE && TEST

config TEST_NET
    bool "Enable NET Test"
    default n
    depends on KERNEL_TEST &&  TEST
    help
    Attention: if this option turns on, other test suits will be ignored.
config TEST_LWIP
    bool "Enable LWIP Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST_NET && TEST
config AR6K3_WIFI_TEST
    bool "Enable AR6K3_WIFI Test"
    default n
    depends on KERNEL_TEST &&  TEST && DRIVERS_WIFI_QRD
    help
    Attention: if this option turns on, other test suits will be ignored.
config BCM_WIFI_TEST
    bool "Enable BCM_WIFI Test"
    default n
    depends on KERNEL_TEST &&  TEST && DRIVERS_WIFI_BCM
    help
    Attention: if this option turns on, other test suits will be ignored.

config TEST_PLATFORM
    bool "Enable Platform Testsuit"
    default n
    depends on KERNEL_TEST &&  TEST
config 3RDPARTY_TEST
    bool "Enable 3rdParty Test"
    default n
    depends on KERNEL_TEST &&  TEST && 3RDPARTY
    help
    Attention: 3rdParty tools and libs test


