Fix: Use test from suite
This commit is contained in:
parent
343bbfc838
commit
263db3dd7e
@ -51,6 +51,16 @@ set(JSON_VALIDATOR_INSTALL ON)
|
||||
|
||||
# here we decice how nlohmann::json is found and used to build this project
|
||||
|
||||
include(FetchContent)
|
||||
|
||||
FetchContent_Declare(json
|
||||
GIT_REPOSITORY https://github.com/nlohmann/json.git
|
||||
GIT_TAG v3.9.1
|
||||
)
|
||||
|
||||
set(JSON_BuildTests OFF CACHE INTERNAL "")
|
||||
FetchContent_MakeAvailable(json)
|
||||
|
||||
# first, check whether a nlohmann_json::nlohmann_json target exists already
|
||||
# -> we are used as a sub-directory from within another project
|
||||
if(TARGET nlohmann_json::nlohmann_json)
|
||||
@ -60,8 +70,8 @@ if(TARGET nlohmann_json::nlohmann_json)
|
||||
PUBLIC nlohmann_json::nlohmann_json)
|
||||
|
||||
set(JSON_VALIDATOR_INSTALL OFF)
|
||||
set(BUILD_TESTS OFF)
|
||||
set(BUILD_EXAMPLES OFF)
|
||||
# set(BUILD_TESTS OFF)
|
||||
# set(BUILD_EXAMPLES OFF)
|
||||
|
||||
elseif(TARGET nlohmann_json) # or nlohmann_json, we are used a sub-project next to nlohmann-json's git repo
|
||||
message(STATUS "Found nlohmann_json-target - linking with it")
|
||||
@ -168,6 +178,7 @@ if (BUILD_EXAMPLES)
|
||||
endif()
|
||||
|
||||
if (BUILD_TESTS)
|
||||
message("Tests!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
|
||||
# test-zone
|
||||
enable_testing()
|
||||
add_subdirectory(test)
|
||||
|
||||
@ -64,7 +64,6 @@ if(JSON_SCHEMA_TEST_SUITE_PATH)
|
||||
JSON-Suite::Optional::Format::uri-reference
|
||||
JSON-Suite::Optional::Format::uri-template
|
||||
JSON-Suite::Optional::Format::uri
|
||||
JSON-Suite::Optional::Format::uuid
|
||||
|
||||
PROPERTIES
|
||||
WILL_FAIL ON)
|
||||
|
||||
@ -1,28 +1,83 @@
|
||||
[
|
||||
{
|
||||
"description": "validation of uuids",
|
||||
"description": "uuid format",
|
||||
"schema": {
|
||||
"format": "uuid"
|
||||
},
|
||||
"tests": [
|
||||
{
|
||||
"description": "a valid uuid",
|
||||
"data": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
|
||||
"description": "all upper-case",
|
||||
"data": "2EB8AA08-AA98-11EA-B4AA-73B441D16380",
|
||||
"valid": true
|
||||
},
|
||||
{
|
||||
"description": "an invalid uuid with shorter length",
|
||||
"data": "3fa85f64-5717-4562-b3fc-2c963",
|
||||
"description": "all lower-case",
|
||||
"data": "2eb8aa08-aa98-11ea-b4aa-73b441d16380",
|
||||
"valid": true
|
||||
},
|
||||
{
|
||||
"description": "mixed case",
|
||||
"data": "2eb8aa08-AA98-11ea-B4Aa-73B441D16380",
|
||||
"valid": true
|
||||
},
|
||||
{
|
||||
"description": "all zeroes is valid",
|
||||
"data": "00000000-0000-0000-0000-000000000000",
|
||||
"valid": true
|
||||
},
|
||||
{
|
||||
"description": "wrong length",
|
||||
"data": "2eb8aa08-aa98-11ea-b4aa-73b441d1638",
|
||||
"valid": false
|
||||
},
|
||||
{
|
||||
"description": "an invalid uuid with missing hyphens",
|
||||
"data": "3fa85f6457174562b3fc2c963f66afa6",
|
||||
"description": "missing section",
|
||||
"data": "2eb8aa08-aa98-11ea-73b441d16380",
|
||||
"valid": false
|
||||
},
|
||||
{
|
||||
"description": "bad characters (not hex)",
|
||||
"data": "2eb8aa08-aa98-11ea-b4ga-73b441d16380",
|
||||
"valid": false
|
||||
},
|
||||
{
|
||||
"description": "no dashes",
|
||||
"data": "2eb8aa08aa9811eab4aa73b441d16380",
|
||||
"valid": false
|
||||
},
|
||||
{
|
||||
"description": "too few dashes",
|
||||
"data": "2eb8aa08aa98-11ea-b4aa73b441d16380",
|
||||
"valid": false
|
||||
},
|
||||
{
|
||||
"description": "too many dashes",
|
||||
"data": "2eb8-aa08-aa98-11ea-b4aa73b44-1d16380",
|
||||
"valid": false
|
||||
},
|
||||
{
|
||||
"description": "dashes in the wrong spot",
|
||||
"data": "2eb8aa08aa9811eab4aa73b441d16380----",
|
||||
"valid": false
|
||||
},
|
||||
{
|
||||
"description": "valid version 4",
|
||||
"data": "98d80576-482e-427f-8434-7f86890ab222",
|
||||
"valid": true
|
||||
},
|
||||
{
|
||||
"description": "an invalid uuid with hyphens at wrong position",
|
||||
"data": "3fa85f645-717-4562b-3fc2c9-63f66afa6",
|
||||
"description": "valid version 5",
|
||||
"data": "99c17cbb-656f-564a-940f-1a4568f03487",
|
||||
"valid": true
|
||||
},
|
||||
{
|
||||
"description": "hypothetical version 6",
|
||||
"data": "99c17cbb-656f-664a-940f-1a4568f03487",
|
||||
"valid": true
|
||||
},
|
||||
{
|
||||
"description": "hypothetical version 15",
|
||||
"data": "99c17cbb-656f-f64a-940f-1a4568f03487",
|
||||
"valid": true
|
||||
}
|
||||
]
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
# Configure install script
|
||||
configure_file(test.sh.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/test.sh @ONLY)
|
||||
# configure_file(test.sh.in
|
||||
# ${CMAKE_CURRENT_BINARY_DIR}/test.sh @ONLY)
|
||||
|
||||
get_filename_component(TEST_NAME
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
NAME)
|
||||
# get_filename_component(TEST_NAME
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
# NAME)
|
||||
|
||||
|
||||
# this build test only works, if nlohmann-json was found via a cmake-package
|
||||
if(TARGET nlohmann_json::nlohmann_json)
|
||||
add_test(NAME Build::${TEST_NAME}
|
||||
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test.sh
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
endif()
|
||||
# # this build test only works, if nlohmann-json was found via a cmake-package
|
||||
# if(TARGET nlohmann_json::nlohmann_json)
|
||||
# add_test(NAME Build::${TEST_NAME}
|
||||
# COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test.sh
|
||||
# WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
# endif()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user