# 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 LOSCFG_TEST_LEVEL
    int "Test Level"
    default 2
    depends on LOSCFG_TESTSUIT_SHELL
    help
    Attention:
    0:smoke test
    1:llt test
    2:full test
    3:presssure test
config LOSCFG_TEST_KERNEL_BASE
    bool "Enable Kernel Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_BASE_IPC
    bool "Enable IPC Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_BASE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_BASE_CORE
    bool "Enable CORE Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_BASE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_BASE_MEM
    bool "Enable MEM Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_BASE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_BASE_VM
    bool "Enable VM Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_BASE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_BASE_MISC
    bool "Enable MISC Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_BASE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_BASE_OM
    bool "Enable OM Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_BASE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_BASE_ATOMIC
    bool "Enable ATOMIC Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_BASE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_EXTEND
    bool "Enable Extended Kernel Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_EXTEND_CPP
    bool "Enable CPP Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_EXTEND && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_EXTEND_CPUP
    bool "Enable CPUP Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_EXTEND && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_EXTEND_EXC
    bool "Enable EXC Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_EXTEND && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_EXTEND_UNALIGNACCESS
    bool "Enable UNALIGNACCESS Testsuit"
    default n
    depends on LOSCFG_DO_ALIGN && LOSCFG_TEST_KERNEL_EXTEND && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_EXTEND_MMU
    bool "Enable MMU Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_EXTEND && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_EXTEND_DYNLOAD
    bool "Enable DYNLOAD Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_EXTEND && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_KERNEL_EXTEND_MPU
    bool "Enable MPU Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_EXTEND && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_KERNEL_EXTEND_TICKLESS
    bool "Enable TICKLESS Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_EXTEND && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_KERNEL_EXTEND_TRACE
    bool "Enable TRACE Testsuit"
    default n
    depends on LOSCFG_TEST_KERNEL_EXTEND && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_POSIX
    bool "Enable Posix Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_POSIX_MEM
    bool "Enable Mem Testsuit"
    default n
    depends on LOSCFG_TEST_POSIX && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_POSIX_MQUEUE
    bool "Enable Mqueue Testsuit"
    default n
    depends on LOSCFG_TEST_POSIX && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_POSIX_MUTEX
    bool "Enable Mutex Testsuit"
    default n
    depends on LOSCFG_TEST_POSIX && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_POSIX_PTHREAD
    bool "Enable Pthread Testsuit"
    default n
    depends on LOSCFG_TEST_POSIX && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_POSIX_SCHED
    bool "Enable Sched Testsuit"
    default n
    depends on LOSCFG_TEST_POSIX && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_POSIX_SEM
    bool "Enable Sem Testsuit"
    default n
    depends on LOSCFG_TEST_POSIX && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_POSIX_SWTMR
    bool "Enable Swtmr Testsuit"
    default n
    depends on LOSCFG_TEST_POSIX && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_LINUX
    bool "Enable Linux Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_LINUX_HRTIMER
    bool "Enable Hrtimer Testsuit"
    default n
    depends on LOSCFG_TEST_LINUX && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_FS
    bool "Enable FS Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_FS_VFS
    bool "Enable VFS Test"
    default n
    depends on LOSCFG_TEST_FS && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_FS_JFFS
    bool "Enable JFFS Test"
    default n
    depends on LOSCFG_TEST_FS && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_FS_RAMFS
    bool "Enable RAMFS Test"
    default n
    depends on LOSCFG_TEST_FS && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_FS_FAT
    bool "Enable FAT Test"
    default n
    depends on LOSCFG_TEST_FS && !LOSCFG_FS_FAT_VIRTUAL_PARTITION && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_FS_FAT_FAT32
    bool "Enable FAT32 Test"
    default n
    depends on LOSCFG_TEST_FS_FAT && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_FS_FAT_EXFAT
    bool "Enable exFAT Test"
    default n
    depends on LOSCFG_TEST_FS_FAT && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_FAT32_FSCK
    bool "Enable FAT32 Fsck Test"
    default n
    depends on LOSCFG_TEST_FS_FAT && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_FS_VIRPART
    bool "Enable FAT virtual partition test"
    default n
    depends on LOSCFG_FS_FAT_VIRTUAL_PARTITION && LOSCFG_TEST_FS && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_FS_PROC
    bool "Enable PROC Test"
    default n
    depends on LOSCFG_TEST_FS && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_FS_NFS
    bool "Enable NFS Test"
    default n
    depends on LOSCFG_TEST_FS && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_MTD
    bool "Enable MTD Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_MTD_JFFS
    bool "Enable JFFS MTD Testsuit"
    default n
    depends on LOSCFG_TEST_MTD && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_MTD_FAT
    bool "Enable FAT MTD Testsuit"
    default n
    depends on LOSCFG_TEST_MTD && !LOSCFG_FS_FAT_VIRTUAL_PARTITION && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_MTD_FAT_VIRPART
    bool "Enable FAT virtual partition MTD test"
    default n
    depends on LOSCFG_TEST_MTD && LOSCFG_FS_FAT_VIRTUAL_PARTITION && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_DRIVERBASE
    bool "Enable DriverBase Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_LIBC
    bool "Enable LIBC Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_LIBM
    bool "Enable LIBM Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_SHELL
    bool "Enable Shell Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_USB
    bool "Enable Usb Testsuit"
    default n
    depends on LOSCFG_TESTSUIT_SHELL && LOSCFG_DRIVERS_USB
    help

config LOSCFG_TEST_HOST_MASS_DEVICE
    bool "Enable Host Mass Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_DRIVERS_USB_MASS_STORAGE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_DEVICE_MASS_GADGET
    bool "Enable Device Mass Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_DRIVERS_USB_MASS_STORAGE_GADGET && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_UVC_GADGET
    bool "Enable UVC Gadget Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_DRIVERS_USB_UVC_GADGET && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_UAC_GADGET
    bool "Enable UAC Gadget Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_DRIVERS_USB_UAC_GADGET && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_CAMERA_GADGET
    bool "Enable Camera Gadget Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_DRIVERS_USB_CAMERA_GADGET && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_HUB_GADGET
    bool "Enable HUB Gadget Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_DRIVERS_USB_MASS_STORAGE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_SERIAL_GADGET
    bool "Enable Serial Gadget Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_DRIVERS_USB_SERIAL_GADGET && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_ETHERNET_GADGET
    bool "Enable Ethernet Gadget Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_DRIVERS_USB_ETHERNET_GADGET && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_MULTI_GADGET
    bool "Enable Ethernet & Serial Gadget Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_DRIVERS_USB_ETH_SER_GADGET && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_DFU_GADGET
    bool "Enable Drivers DFU Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_MUTILDEVICE_GADGET
    bool "Enable Drivers Multidevices Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_HOST_ETH
    bool "Enable Host Eth Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_AUTO_USB
    bool "Enable Usb auto Testsuit"
    default n
    depends on LOSCFG_TEST_USB && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_MMC
    bool "Enable MMC Testsuit"
    default n
    depends on LOSCFG_TESTSUIT_SHELL && LOSCFG_DRIVERS_MMC

config LOSCFG_TEST_SD
    bool "Enable SD Testsuit"
    default n
    depends on LOSCFG_TEST_MMC && LOSCFG_DRIVERS_MMC && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_SDIO
    bool "Enable SDIO Testsuit"
    default n
    depends on LOSCFG_TEST_MMC  && LOSCFG_DRIVERS_MMC && LOSCFG_TESTSUIT_SHELL

comment "Only one platform can be selected"
    depends on LOSCFG_TEST_SDIO && LOSCFG_TEST_MMC  && LOSCFG_DRIVERS_MMC && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_SDIO_1131S
    depends on LOSCFG_TEST_SDIO && LOSCFG_TEST_MMC  && LOSCFG_DRIVERS_MMC && LOSCFG_TESTSUIT_SHELL
    bool "1131s"
config LOSCFG_TEST_SDIO_RTL8189
    depends on LOSCFG_TEST_SDIO && LOSCFG_TEST_MMC  && LOSCFG_DRIVERS_MMC && LOSCFG_TESTSUIT_SHELL
    bool "RTL8189"

config LOSCFG_TEST_PERFORMANCE
    bool "Enable Performance Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_PERFORMANCE_CORE
    bool "Enable Performance CORE Testsuit"
    default n
    depends on LOSCFG_TEST_PERFORMANCE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_PERFORMANCE_MEM
    bool "Enable Performance MEM Testsuit"
    default n
    depends on LOSCFG_TEST_PERFORMANCE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_PERFORMANCE_FS
    bool "Enable Performance FS Testsuit"
    default n
    depends on LOSCFG_TEST_PERFORMANCE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_PERFORMANCE_USB
    bool "Enable Performance USB Testsuit"
    default n
    depends on LOSCFG_TEST_PERFORMANCE && LOSCFG_TESTSUIT_SHELL
config LOSCFG_TEST_PERFORMANCE_NET
    bool "Enable Performance NET Testsuit"
    default n
    depends on LOSCFG_TEST_PERFORMANCE && LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_PLATFORM
    bool "Enable Platform Testsuit"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL

config LOSCFG_TEST_NET
    bool "Enable NET Test"
    default n
    depends on  LOSCFG_TESTSUIT_SHELL
    help
    Attention: if this option turns on, other test suits will be ignored.

config LOSCFG_TEST_LWIP
    bool "Enable LWIP Testsuit"
    default n
    depends on LOSCFG_TEST_NET && LOSCFG_TESTSUIT_SHELL
config AR6K3_WIFI_TEST
    bool "Enable AR6K3_WIFI Test"
    default n
    depends on LOSCFG_TESTSUIT_SHELL && LOSCFG_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 LOSCFG_TESTSUIT_SHELL && LOSCFG_DRIVERS_WIFI_BCM
    help
    Attention: if this option turns on, other test suits will be ignored.

config LOSCFG_3RDPARTY_TEST
    bool "Enable 3rdParty Test"
    default n
    depends on LOSCFG_TESTSUIT_SHELL && LOSCFG_3RDPARTY
    help
    Attention: 3rdParty tools and libs test
config LOSCFG_TEST_MANUAL_SHELL
    bool "Enable Manual Test"
    default n
    depends on LOSCFG_TESTSUIT_SHELL

