Project

General

Profile

« Previous | Next » 

Revision 07e37d22

Added by Hamza Bourbouh about 7 years ago

add testing script

View differences:

regression_tests/CMakeLists.txt
10 10
include(./modules/helpfull_functions.cmake)
11 11

  
12 12
if(LUSTRE_COMPILER)
13
  message(STATUS "Found zustre: ${LUSTRE_COMPILER} ")
13
  message(STATUS "Found lustre: ${LUSTRE_COMPILER} ")
14 14
else(LUSTRE_COMPILER)
15
  message(FATAL_ERROR "zustre not found")
15
  message(FATAL_ERROR "lustre not found")
16 16
endif(LUSTRE_COMPILER)
17 17

  
18 18

  
19

  
20

  
19 21
if(JAVA_COMPILE AND EXISTS ${PROJECT_SOURCE_DIR}/modules/XPathParser_lusi.java)
20 22
	file(COPY ${PROJECT_SOURCE_DIR}/modules/XPathParser_lusi.java ${PROJECT_SOURCE_DIR}/modules/javax.xml-1.3.4.jar  DESTINATION  ${CMAKE_BINARY_DIR}/modules)
21
	execute_process(#OUTPUT  ${CMAKE_BINARY_DIR}/modules/XPathParser_lusi.class 
22
						COMMAND ${JAVA_COMPILE} -classpath "'.;javax.xml-1.3.4.jar;'" XPathParser_lusi.java 
23
	execute_process(			COMMAND ${JAVA_COMPILE} -classpath "'.;javax.xml-1.3.4.jar;'" XPathParser_lusi.java 
23 24
						WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/modules 
24 25
						)
25 26
	#add_custom_target (XPathParser_lusi ALL
regression_tests/modules/helpfull_functions.cmake
30 30
  set (${OUTPUT} "${_TMP_STR}" PARENT_SCOPE)
31 31
endfunction()
32 32

  
33

  
34
function(download_zustre)
35
  message("Download latest version of zustre")
36

  
37
  find_package(Git QUIET)
38

  
39
  set(repo_url "https://github.com/coco-team/zustre.git")
40
  set(repo_dir "${CMAKE_CURRENT_SOURCE_DIR}/zustre")
41
  
42
  if(NOT EXISTS "${repo_dir}")
43
    set(ZUSTRE_CHECKOUT_COMMAND "${GIT_EXECUTABLE} clone ${repo_url} ${repo_dir}" PARENT_SCOPE)
44
  endif()
45
  #set(CTEST_UPDATE_COMMAND "${GIT_EXECUTABLE}")
46

  
47
  
48
  set(ZUSTRE_REPO "${repo_dir}" PARENT_SCOPE)
49
endfunction()
regression_tests/project_test.cmake
1
#set( CTEST_BINARY_DIRECTORY "/usr/bin/")
2
#set(  CTEST_COMMAND "ctest")
3
if(NOT CTEST_EXT_INCLUDED)
4
    function(download_ctest_ext)
5
        message("Download latest version of CTest Extension module")
6

  
7
        find_package(Git QUIET)
8

  
9
        set(repo_url "https://github.com/jet47/ctest-ext.git")
10
        set(repo_dir "${CMAKE_CURRENT_LIST_DIR}/ctest-ext")
11
        set(tmp_dir "${CMAKE_CURRENT_LIST_DIR}/ctest-ext-tmp")
12

  
13
        if(NOT EXISTS "${repo_dir}")
14
            set(CTEST_CHECKOUT_COMMAND "${GIT_EXECUTABLE} clone ${repo_url} ${repo_dir}")
15
        endif()
16
        set(CTEST_UPDATE_COMMAND "${GIT_EXECUTABLE}")
17

  
18
        ctest_start("CTestExt" "${repo_dir}" "${tmp_dir}")
19
        ctest_update(SOURCE "${repo_dir}")
20

  
21
        file(REMOVE_RECURSE "${tmp_dir}")
22

  
23
        set(CTEST_EXT_MODULE_PATH "${repo_dir}" PARENT_SCOPE)
24
    endfunction()
25

  
26
    if(NOT DEFINED CTEST_EXT_MODULE_PATH)
27
        if(DEFINED ENV{CTEST_EXT_MODULE_PATH} AND EXISTS "$ENV{CTEST_EXT_MODULE_PATH}/ctest_ext.cmake")
28
            set(CTEST_EXT_MODULE_PATH "$ENV{CTEST_EXT_MODULE_PATH}")
29
        elseif(EXISTS "${CMAKE_CURRENT_LIST_DIR}/ctest-ext/ctest_ext.cmake")
30
            set(CTEST_EXT_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/ctest-ext")
31
        else()
32
            download_ctest_ext()
33
        endif()
34
    endif()
35

  
36
    include("${CTEST_EXT_MODULE_PATH}/ctest_ext.cmake")
37
endif()
38

  
39
set_ifndef(CTEST_PROJECT_NAME "lustrec-tests")
40

  
41
#set_ifndef(CTEST_PROJECT_GIT_URL    "https://cavale.enseeiht.fr/git/lustrec-tests")
42
#set_ifndef(CTEST_WITH_UPDATE        TRUE)
43
set(CTEST_SOURCE_DIRECTORY "${CMAKE_CURRENT_LIST_DIR}")
44

  
45
ctest_ext_init()
46

  
47

  
48

  
49
# Check supported targets and models
50
check_if_matches(CTEST_TARGET_SYSTEM    "^Linux" "^Windows")
51
check_if_matches(CTEST_MODEL            "^Experimental$" "^Nightly$" "^Continuous$" "^Release$" "^Documentation$")
52

  
53
# Checks for Continuous model
54
set(IS_CONTINUOUS FALSE)
55
if(CTEST_MODEL MATCHES "Continuous")
56
    set(IS_CONTINUOUS TRUE)
57
endif()
58

  
59
set(IS_BINARY_EMPTY FALSE)
60
if(NOT EXISTS "${CTEST_BINARY_DIRECTORY}/CMakeCache.txt")
61
    set(IS_BINARY_EMPTY TRUE)
62
endif()
63

  
64
if(IS_CONTINUOUS AND NOT IS_BINARY_EMPTY AND NOT HAVE_UPDATES)
65
    ctest_ext_info("Continuous model : no updates")
66
    return()
67
endif()
68

  
69
# Configure the testing model
70
set_ifndef(CTEST_WITH_SUBMIT            TRUE)
71

  
72
if(CTEST_MODEL MATCHES "Documentation")
73
    set_ifndef(CTEST_WITH_TESTS FALSE)
74
else()
75
    set_ifndef(CTEST_WITH_TESTS TRUE)
76
endif()
77

  
78
if(CTEST_MODEL MATCHES "Nightly")
79
    set_ifndef(CTEST_WITH_COVERAGE          TRUE)
80
    set_ifndef(CTEST_COVERAGE_TOOL          "CDASH")
81
    set_ifndef(CTEST_WITH_DYNAMIC_ANALYSIS  TRUE)
82
    set_ifndef(CTEST_DYNAMIC_ANALYSIS_TOOL  "CDASH")
83
else()
84
    set_ifndef(CTEST_WITH_COVERAGE          FALSE)
85
    set_ifndef(CTEST_WITH_DYNAMIC_ANALYSIS  FALSE)
86
endif()
87

  
88
if(CTEST_MODEL MATCHES "Continuous")
89
    set_ifndef(CTEST_EMPTY_BINARY_DIRECTORY FALSE)
90
else()
91
    set_ifndef(CTEST_EMPTY_BINARY_DIRECTORY TRUE)
92
endif()
93

  
94
# Set CMake options
95
if(CTEST_TARGET_SYSTEM MATCHES "Windows")
96
    if(CTEST_TARGET_SYSTEM MATCHES "64")
97
        set_ifndef(CTEST_CMAKE_GENERATOR "Visual Studio 13 Win64")
98
    else()
99
        set_ifndef(CTEST_CMAKE_GENERATOR "Visual Studio 13")
100
    endif()
101
else()
102
    set_ifndef(CTEST_CMAKE_GENERATOR "Unix Makefiles")
103
endif()
104

  
105
if(CTEST_MODEL MATCHES "(Release|Continuous)")
106
    set_ifndef(CTEST_CONFIGURATION_TYPE "Release")
107
else()
108
    set_ifndef(CTEST_CONFIGURATION_TYPE "Debug")
109
endif()
110

  
111
add_cmake_cache_entry("ENABLE_CTEST" TYPE "BOOL" "ON")
112

  
113
if(CTEST_WITH_COVERAGE)
114
    add_cmake_cache_entry("ENABLE_COVERAGE" TYPE "BOOL" "ON")
115
else()
116
    add_cmake_cache_entry("ENABLE_COVERAGE" TYPE "BOOL" "OFF")
117
endif()
118

  
119
if(CTEST_MODEL MATCHES "Documentation")
120
    add_cmake_cache_entry("BUILD_DOCS" TYPE "BOOL" "ON")
121
endif()
122

  
123
if(CTEST_MODEL MATCHES "Release")
124
    if(CTEST_TARGET_SYSTEM MATCHES "Windows")
125
        add_cmake_cache_entry("CPACK_GENERATOR" TYPE "STRING" "ZIP")
126
    else()
127
        add_cmake_cache_entry("CPACK_GENERATOR" TYPE "STRING" "TGZ")
128
    endif()
129
endif()
130

  
131

  
132
ctest_ext_start()
133

  
134
ctest_ext_configure()
135

  
136
if(CTEST_MODEL MATCHES "Release")
137
    ctest_ext_build(TARGETS "ALL" "package")
138
elseif(CTEST_MODEL MATCHES "Documentation")
139
    ctest_ext_build(TARGET "docs")
140
else()
141
    ctest_ext_build()
142
endif()
143

  
144

  
145
if(CTEST_MODEL MATCHES "Nightly")
146
    ctest_ext_test(INCLUDE_LABEL "Full")
147
else()
148
    ctest_ext_test(EXCLUDE_LABEL "Light")
149
endif()
150

  
151
ctest_ext_coverage(
152
    CDASH
153
        LABELS "Module"
154
)
155

  
156
ctest_ext_dynamic_analysis(
157
    CDASH
158
        INCLUDE_LABEL "Light"
159
)
160

  
161

  
162
if(CTEST_MODEL MATCHES "Release")
163
    if(CTEST_TARGET_SYSTEM MATCHES "Windows")
164
        file(GLOB packages "${CTEST_BINARY_DIRECTORY}/*.zip")
165
    else()
166
        file(GLOB packages "${CTEST_BINARY_DIRECTORY}/*.tar.gz")
167
    endif()
168

  
169
    list(APPEND CTEST_UPLOAD_FILES ${packages})
170
endif()
171

  
172
ctest_ext_submit()	
regression_tests/testing_script.cmake
1
set(CTEST_TARGET_SYSTEM "Linux")
2
set(CTEST_MODEL         "Experimental")
3
include("./project_test.cmake")

Also available in: Unified diff