Changeset 8028176 in flex_extract.git
- Timestamp:
- Aug 5, 2020, 8:40:33 AM (4 years ago)
- Branches:
- master, ctbto, dev
- Children:
- b4ae1d6
- Parents:
- 0a75335
- Files:
-
- 4 deleted
- 7 edited
- 2 moved
Legend:
- Unmodified
- Added
- Removed
-
Source/Python/install.py
rbbbe1e1 r8028176 376 376 'CONTROL*').files] 377 377 testfiles = [os.path.relpath(x, ecd) 378 for x in UioFiles(_config.PATH_REL_TEST , '*').files]378 for x in UioFiles(_config.PATH_REL_TEST+"/Installation", '*').files] 379 379 tempfiles = [os.path.relpath(x, ecd) 380 380 for x in UioFiles(_config.PATH_REL_TEMPLATES, '*.template').files] … … 387 387 makefiles = [os.path.relpath(x, ecd) 388 388 for x in UioFiles(_config.PATH_REL_FORTRAN_SRC, 'makefile*').files] 389 jobdir = [_config.PATH_REL_JOBSCRIPTS] 389 jobdir = [os.path.relpath(x, ecd) 390 for x in UioFiles(_config.PATH_REL_JOBSCRIPTS, '*.md').files] 390 391 391 392 # concatenate single lists to one for a better looping -
Source/Pythontest/TestInstall.py
r76c37a9 r8028176 19 19 import pytest 20 20 from mock import patch 21 import mock 21 22 22 23 sys.path.append('../Python') … … 53 54 54 55 55 @patch('tarfile.open', side_effect=[subprocess.CalledProcessError(1,'test'), 56 OSError(errno.EEXIST)]) 56 @patch('tarfile.open', side_effect=[tarfile.TarError, OSError]) 57 57 def test_fail_mk_tarball_local(self, mock_open): 58 import tarfile 59 # mock_open.side_effekt = tarfile.TarError 58 60 ecd = _config.PATH_FLEXEXTRACT_DIR + os.path.sep 59 61 # create test tarball and list its content files … … 62 64 with pytest.raises(SystemExit): 63 65 mk_tarball(ecd + tarballname, 'local') 66 64 67 65 68 def test_success_mk_tarball_local(self): … … 119 122 # list comparison files for tarball content 120 123 tar_test_dir = os.path.join(self.testdir, 'InstallTar') 121 cmp_dir = _config.FLEXEXTRACT_DIRNAME + '_ecgate' 122 tar_test_fedir = os.path.join(tar_test_dir, cmp_dir) 123 comparison_list = [] 124 for path, subdirs, files in os.walk(tar_test_fedir): 125 for name in files: 126 if 'tar' not in name: 127 comparison_list.append(os.path.relpath( 128 os.path.join(path, name), tar_test_fedir)) 124 tarballname = _config.FLEXEXTRACT_DIRNAME + '_ecgate.tar' 125 with tarfile.open(os.path.join(tar_test_dir, tarballname), 'r') as tar_handle: 126 comparison_list = tar_handle.getnames() 129 127 130 128 # untar in test directory … … 132 130 make_dir(test_dir) 133 131 os.chdir(test_dir) 134 tarballname = _config.FLEXEXTRACT_DIRNAME + '_ecgate.tar'135 132 un_tarball(os.path.join(tar_test_dir, tarballname)) 136 133 tarfiles_list = [] … … 148 145 # list comparison files for tarball content 149 146 tar_test_dir = os.path.join(self.testdir, 'InstallTar') 150 cmp_dir = _config.FLEXEXTRACT_DIRNAME + '_local' 151 tar_test_fedir = os.path.join(tar_test_dir, cmp_dir) 152 comparison_list = [] 153 for path, subdirs, files in os.walk(tar_test_fedir): 154 for name in files: 155 if 'tar' not in name: 156 comparison_list.append(os.path.relpath( 157 os.path.join(path, name), tar_test_fedir)) 147 tarballname = _config.FLEXEXTRACT_DIRNAME + '_local.tar' 148 with tarfile.open(os.path.join(tar_test_dir, tarballname), 'r') as tar_handle: 149 comparison_list = tar_handle.getnames() 158 150 159 151 # untar in test directory … … 161 153 make_dir(test_dir) 162 154 os.chdir(test_dir) 163 tarballname = _config.FLEXEXTRACT_DIRNAME + '_local.tar'164 155 un_tarball(os.path.join(tar_test_dir, tarballname)) 165 156 tarfiles_list = [] … … 168 159 tarfiles_list.append(os.path.relpath( 169 160 os.path.join(path, name), test_dir)) 170 161 171 162 # test for equality 172 163 assert sorted(tarfiles_list) == sorted(comparison_list) … … 205 196 'user@destination') 206 197 207 @patch('__builtin__.open', side_effect=[OSError(errno.EPERM)])208 def test_fail_open_mk_env_vars(self, mock_open):209 with pytest.raises(SystemExit):210 mk_env_vars('testuser',211 'testgroup',212 'gateway.test.ac.at',213 'user@destination')214 215 198 @patch('_config.FILE_INSTALL_COMPILEJOB', _config_test.PATH_TESTFILES_DIR+'/compilejob_test.ksh') 216 199 def test_success_mk_compilejob(self): … … 221 204 222 205 mk_compilejob('Makefile.TEST', 223 '',224 206 'testuser', 225 207 'testgroup', … … 236 218 with pytest.raises(SystemExit): 237 219 mk_compilejob('Makefile.TEST', 238 '',239 220 'testuser', 240 221 'testgroup', … … 246 227 with pytest.raises(SystemExit): 247 228 mk_compilejob('Makefile.TEST', 248 '',249 229 'testuser', 250 230 'testgroup', 251 231 'fp_root_test_path') 252 232 253 @patch('__builtin__.open', side_effect=[OSError(errno.EPERM)]) 254 def test_fail_open_mk_compilejob(self, mock_open): 255 with pytest.raises(SystemExit): 256 mk_compilejob('Makefile.TEST', 257 '', 258 'testuser', 259 'testgroup', 260 'fp_root_test_path') 261 262 @patch('_config.TEMPFILE_JOB', _config_test.PATH_TESTFILES_DIR+'/job_temp.test_test') 233 # @patch('builtins.open', side_effect=[OSError(errno.EPERM)]) 234 # def test_fail_open_mk_compilejob(self, mock_open): 235 # with pytest.raises(SystemExit): 236 # mk_compilejob('Makefile.TEST', 237 # 'testuser', 238 # 'testgroup', 239 # 'fp_root_test_path') 240 241 @patch('_config.TEMPFILE_JOB', _config_test.PATH_TESTFILES_DIR+'/submitscript.template.test.comp') 263 242 def test_success_mk_job_template(self): 264 243 import filecmp 265 244 266 245 testfile = os.path.join(self.testfilesdir, 267 ' job.temp.test')246 'submitscript.template.test') 268 247 269 248 mk_job_template('testuser', 270 249 'testgroup', 271 'gateway.test.ac.at',272 'dest@generic',250 # 'gateway.test.ac.at', 251 # 'dest@generic', 273 252 'fp_root_test_path') 274 253 … … 284 263 mk_job_template('testuser', 285 264 'testgroup', 286 'gateway.test.ac.at',287 'dest@generic',265 # 'gateway.test.ac.at', 266 # 'dest@generic', 288 267 'fp_root_test_path') 289 268 … … 294 273 mk_job_template('testuser', 295 274 'testgroup', 296 'gateway.test.ac.at',297 'dest@generic',275 # 'gateway.test.ac.at', 276 # 'dest@generic', 298 277 'fp_root_test_path') 299 278 300 @patch('__builtin__.open', side_effect=[OSError(errno.EPERM)])301 def test_fail_open_mk_job_template(self, mock_open):302 with pytest.raises(SystemExit):303 mk_job_template('testuser',304 'testgroup',305 'gateway.test.ac.at',306 'dest@generic',307 'fp_root_test_path')279 # @patch('builtins.open', side_effect=[OSError(errno.EPERM)]) 280 # def test_fail_open_mk_job_template(self, mock_open): 281 # with pytest.raises(SystemExit): 282 # mk_job_template('testuser', 283 # 'testgroup', 284 # 'gateway.test.ac.at', 285 # 'dest@generic', 286 # 'fp_root_test_path') 308 287 309 288 @classmethod -
Source/Pythontest/TestUIOFiles.py
r76c37a9 r8028176 1 #!/usr/bin/env python 1 #!/usr/bin/env python3 2 2 # -*- coding: utf-8 -*- 3 3 … … 51 51 def test_str_(self): 52 52 """Test if list of file is correctly converted to string.""" 53 self.expected = "FCSH__SL.20160410.40429.16424.grb, "\ 53 self.expected = "FCOG__ML.20160410.40429.16424.grb, "\ 54 "FCOG__SL.20160410.40429.16424.grb, "\ 54 55 "FCSH__ML.20160410.40429.16424.grb, "\ 55 "FCOG__SL.20160410.40429.16424.grb, "\ 56 "FCOG__ML.20160410.40429.16424.grb, "\ 56 "FCSH__SL.20160410.40429.16424.grb, "\ 57 57 "OG_OROLSM__SL.20160410.40429.16424.grb, "\ 58 58 "FCGG__SL.20160410.40429.16424.grb, "\ -
Source/Pythontest/_config_test.py
r76c37a9 r8028176 10 10 11 11 @License: 12 (C) Copyright 2014-20 18.12 (C) Copyright 2014-2020. 13 13 14 14 This software is licensed under the terms of the Apache Licence Version 2.0 -
Testing/Regression/Unit/Controls/CONTROL.test
rbe6c0a2 r8028176 1 DTIME 3 2 TYPE AN FC FC FC FC FC AN FC FC FC FC FC AN FC FC FC FC FC AN FC FC FC FC FC 3 TIME 00 00 00 00 00 00 06 00 00 00 00 00 12 12 12 12 12 12 18 12 12 12 12 12 4 STEP 00 01 02 03 04 05 00 07 08 09 10 11 00 01 02 03 04 05 00 07 08 09 10 11 5 CLASS EI 1 START_DATE 20180809 2 DTIME 1 3 TYPE AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN AN 4 TIME 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 5 STEP 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6 ACCTYPE FC 7 ACCTIME 06/18 8 ACCMAXSTEP 12 9 CLASS EA 6 10 STREAM OPER 7 EXPVER 1 8 GRID 5000 9 LEFT -10000 10 LOWER 30000 11 UPPER 40000 12 RIGHT 10000 13 LEVELIST 59/to/60 14 RESOL 63 11 GRID 0.28125 12 LEFT -24. 13 LOWER 9.875 14 UPPER 74. 15 RIGHT 60.375 16 LEVELIST 1/to/137 17 RESOL 799 18 ETA 1 19 FORMAT GRIB2 20 PREFIX EA 21 CWC 1 22 RRINT 1 23 ECTRANS 1 -
Testing/Regression/Unit/InstallTar/mk_install_tar.sh
rbe6c0a2 r8028176 11 11 path=../../ 12 12 13 tarname='flex_extract_v7.1 _local.tar'13 tarname='flex_extract_v7.1.2_local.tar' 14 14 pwd 15 15 tar -zcvf ../../Testing/Regression/Unit/InstallTar/$tarname \ … … 21 21 ${path}Source/Fortran/*.h \ 22 22 ${path}Source/Fortran/makefile* \ 23 ${path}Templates/convert.nl \ 24 ${path}Templates/*.temp \ 25 ${path}Templates/ecmwf_grib1_table_128 \ 23 ${path}Templates/* \ 26 24 ${path}Run/run_local.sh \ 27 25 ${path}Run/Control/CONTROL* \ 28 --exclude=${path}Run/Control/Testgrid \ 29 --exclude=${path}Run/Control/notPublic \ 30 ${path}Run/Jobscripts \ 31 ${path}LICENSE.md \ 32 ${path}CODE_OF_CONDUCT.md \ 33 ${path}README.md \ 34 ${path}Testing/* \ 26 ${path}Run/Jobscripts/*.md \ 27 ${path}*.md \ 28 ${path}Testing/Installation/*.sh \ 29 ${path}Testing/Installation/Api_testscripts/* \ 30 ${path}Testing/Installation/Calc_etadot/* \ 31 ${path}Testing/Installation/First_extraction/* \ 35 32 --exclude=*.ksh \ 36 33 --exclude=flex_extract_v7.1_*.tar … … 38 35 39 36 40 tarname='flex_extract_v7.1 _ecgate.tar'37 tarname='flex_extract_v7.1.2_ecgate.tar' 41 38 42 39 tar -zcvf ../../Testing/Regression/Unit/InstallTar/$tarname \ … … 48 45 ${path}Source/Fortran/*.h \ 49 46 ${path}Source/Fortran/makefile* \ 50 ${path}Templates/convert.nl \ 51 ${path}Templates/*.temp \ 52 ${path}Templates/ecmwf_grib1_table_128 \ 47 ${path}Templates/* \ 53 48 ${path}Run/ECMWF_ENV \ 54 49 ${path}Run/run.sh \ 55 50 ${path}Run/Control/CONTROL* \ 56 --exclude=${path}Run/Control/Testgrid \ 57 --exclude=${path}Run/Control/notPublic \ 58 ${path}Run/Jobscripts \ 51 ${path}Run/Jobscripts/*.md \ 59 52 ${path}LICENSE.md \ 60 53 ${path}CODE_OF_CONDUCT.md \ 61 54 ${path}README.md \ 62 ${path}Testing/* \ 55 ${path}Testing/Installation/*.sh \ 56 ${path}Testing/Installation/Api_testscripts/* \ 57 ${path}Testing/Installation/Calc_etadot/* \ 58 ${path}Testing/Installation/First_extraction/* \ 63 59 --exclude=*.ksh \ 64 60 --exclude=flex_extract_v7.1_*.tar -
Testing/Regression/Unit/Testfiles/compilejob.test
rbe6c0a2 r8028176 25 25 26 26 set -x 27 export VERSION=7.1 27 export VERSION=7.1.2 28 28 case ${HOST} in 29 29 *ecg*) 30 30 module unload grib_api 31 module unload eccodes 31 module unload emos 32 module load python3 32 33 module load eccodes 33 module load python34 module unload emos35 34 module load emos/455-r64 36 35 export FLEXPART_ROOT_SCRIPTS=fp_root_test_path … … 39 38 *cca*) 40 39 module switch PrgEnv-cray PrgEnv-intel 40 module load python3 41 41 module load eccodes 42 module load emos 43 module load python 42 module load emos/455-r64 44 43 echo ${GROUP} 45 44 echo ${HOME} … … 55 54 cd ${FLEXPART_ROOT_SCRIPTS}/flex_extract_v${VERSION} # if FLEXPART_ROOT is not set this means cd to the home directory 56 55 tar -xvf ${HOME}/flex_extract_v${VERSION}.tar 57 cd source/fortran58 \rm *.o *.mod CONVERT256 cd Source/Fortran 57 \rm *.o *.mod calc_etadot 59 58 make -f ${MAKEFILE} >flexcompile 2>flexcompile 60 59 61 ls -l CONVERT2>>flexcompile60 ls -l calc_etadot >>flexcompile 62 61 if [ $? -eq 0 ]; then 63 62 echo 'SUCCESS!' >>flexcompile -
Testing/Regression/Unit/Testfiles/submitscript.template.test
rbe6c0a2 r8028176 17 17 ##PBS -q np 18 18 ##PBS -S /usr/bin/ksh 19 ## -o /scratch/ms/testgroup/testuser/flex_ecmwf.$ {PBS_JOBID}.out19 ## -o /scratch/ms/testgroup/testuser/flex_ecmwf.$${PBS_JOBID}.out 20 20 ## job output is in .ecaccess_DO_NOT_REMOVE 21 21 ##PBS -j oe … … 25 25 26 26 set -x 27 export VERSION=7.1 28 case $ {HOST} in27 export VERSION=7.1.2 28 case $${HOST} in 29 29 *ecg*) 30 module load python31 30 module unload grib_api 32 module unload eccodes 31 module unload emos 32 module load python3 33 33 module load eccodes 34 module unload emos35 34 module load emos/455-r64 36 export PATH=$ {PATH}:fp_root_test_path/flex_extract_v7.1/source/python35 export PATH=$${PATH}:fp_root_test_path/flex_extract_v7.1.2/Source/Python 37 36 ;; 38 37 *cca*) 39 38 module switch PrgEnv-cray PrgEnv-intel 39 module load python3 40 40 module load eccodes 41 module load emos 42 module load python 43 export SCRATCH=${TMPDIR} 44 export PATH=${PATH}:fp_root_test_path/flex_extract_v7.1/source/python 41 module load emos/455-r64 42 export SCRATCH=$${TMPDIR} 43 export PATH=$${PATH}:fp_root_test_path/flex_extract_v7.1.2/Source/Python 45 44 ;; 46 45 esac 47 46 48 cd $ {SCRATCH}49 mkdir -p python$$50 cd python$$47 cd $${SCRATCH} 48 mkdir -p extract$$$$ 49 cd extract$$$$ 51 50 52 51 export CONTROL=CONTROL 53 52 54 cat >${CONTROL}<<EOF 53 cat >$${CONTROL}<<EOF 54 $control_content 55 55 EOF 56 56 57 57 58 submit.py --controlfile=$ {CONTROL} --inputdir=./work --outputdir=./work 1> prot 2>&158 submit.py --controlfile=$${CONTROL} --inputdir=./work --outputdir=./work 1> prot 2>&1 59 59 60 60 if [ $? -eq 0 ] ; then 61 61 l=0 62 for muser in `grep -i MAILOPS $ {CONTROL}`; do63 if [ $ {l} -gt 0 ] ; then64 mail -s flex.$ {HOST}.$$${muser} <prot62 for muser in `grep -i MAILOPS $${CONTROL}`; do 63 if [ $${l} -gt 0 ] ; then 64 mail -s flex.$${HOST}.$$$$ $${muser} <prot 65 65 fi 66 l=$(($ {l}+1))66 l=$(($${l}+1)) 67 67 done 68 68 else 69 69 l=0 70 for muser in `grep -i MAILFAIL $ {CONTROL}`; do71 if [ $ {l} -gt 0 ] ; then72 mail -s "ERROR! flex.$ {HOST}.$$"${muser} <prot70 for muser in `grep -i MAILFAIL $${CONTROL}`; do 71 if [ $${l} -gt 0 ] ; then 72 mail -s "ERROR! flex.$${HOST}.$$$$" $${muser} <prot 73 73 fi 74 l=$(($ {l}+1))74 l=$(($${l}+1)) 75 75 done 76 76 fi
Note: See TracChangeset
for help on using the changeset viewer.