Skip to content
Snippets Groups Projects
Commit 53594831 authored by Moe Jette's avatar Moe Jette
Browse files

Add some more sbatch tests.

parent 63fe39fa
No related branches found
No related tags found
No related merge requests found
......@@ -356,6 +356,9 @@ test17.6 Confirm that a job executes with the proper task count (--nprocs
and --overcommit options).
test17.7 Confirm that sbatch sets appropriate working directory (--chdir
option)
test17.8 Confirm that sbatch sets appropriate time limit (--time
option)
test17.9 Confirm that sbatch sets appropriate job name (--job-name option)
test18.# Testing of slaunch options.
......
......@@ -55,10 +55,10 @@ puts $file "
"
#
# Submit a slurm job that will execute 'id' on 1 node and over task_cnt tasks
# Submit a slurm job that will execute 'pwd'
#
set job_id 0
spawn $sbatch -N1 --output=$file_out --error=$file_err -t1 $file_in
spawn $sbatch -N1 --output=$file_out -t1 $file_in
expect {
-re "Submitted batch job ($number)" {
set job_id $expect_out(1,string)
......
#!/usr/bin/expect
############################################################################
# Purpose: Test of SLURM functionality
# Confirm that sbatch sets appropriate time limit (--time
# option)
#
# Output: "TEST: #.#" followed by "SUCCESS" if test was successful, OR
# "FAILURE: ..." otherwise with an explanation of the failure, OR
# anything else indicates a failure mode that must be investigated.
############################################################################
# Copyright (C) 2002-2006 The Regents of the University of California.
# Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
# Written by Morris Jette <jette1@llnl.gov>
# UCRL-CODE-217948.
#
# This file is part of SLURM, a resource management program.
# For details, see <http://www.llnl.gov/linux/slurm/>.
#
# SLURM is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free
# Software Foundation; either version 2 of the License, or (at your option)
# any later version.
#
# SLURM is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along
# with SLURM; if not, write to the Free Software Foundation, Inc.,
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
############################################################################
source ./globals
set test_id "17.8"
set exit_code 0
set file_in "test$test_id.input"
set time_set 13
set time_get 0
print_header $test_id
# DISABLE FOR NOW
send_user "\nFAILURE: sbatch does not yet support --output option\n"
exit 0
#
# Delete left-over stdin/out/err files
# Build stdin file
#
exec $bin_rm -f $file_in
set file [open $file_in "w"]
puts $file "
$bin_sleep 60
"
#
# Submit a slurm job that will execute 'sleep'
# Use scontrol to confirm time limit
#
set job_id 0
spawn $sbatch -N1 --output=none --error=none --time=$time_set $file_in
expect {
-re "Submitted batch job ($number)" {
set job_id $expect_out(1,string)
exp_continue
}
timeout {
send_user "\nFAILURE: sbatch not responding\n"
set exit_code 1
exp_continue
}
eof {
wait
}
}
if { $job_id == 0 } {
send_user "\nFAILURE: failed to submit job\n"
exit 1
}
spawn $scontrol show job $job_id
expect {
-re "TimeLimit=($number)" {
set time_get $expect_out(1,string)
exp_continue
}
eof {
wait
}
}
if {$time_set != $time_get} {
send_user "\nFAILURE: sbatch failed to set time limit\n"
set exit_code 1
}
cancel_job $job_id
if {$exit_code == 0} {
exec $bin_rm -f $file_in
send_user "\nSUCCESS\n"
}
exit $exit_code
#!/usr/bin/expect
############################################################################
# Purpose: Test of SLURM functionality
# Confirm that sbatch sets appropriate job name (--job-name option
#
# Output: "TEST: #.#" followed by "SUCCESS" if test was successful, OR
# "FAILURE: ..." otherwise with an explanation of the failure, OR
# anything else indicates a failure mode that must be investigated.
############################################################################
# Copyright (C) 2002-2006 The Regents of the University of California.
# Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
# Written by Morris Jette <jette1@llnl.gov>
# UCRL-CODE-217948.
#
# This file is part of SLURM, a resource management program.
# For details, see <http://www.llnl.gov/linux/slurm/>.
#
# SLURM is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free
# Software Foundation; either version 2 of the License, or (at your option)
# any later version.
#
# SLURM is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along
# with SLURM; if not, write to the Free Software Foundation, Inc.,
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
############################################################################
source ./globals
set test_id "17.9"
set exit_code 0
set file_in "test$test_id.input"
set name_set "my_name"
print_header $test_id
# DISABLE FOR NOW
send_user "\nFAILURE: sbatch does not yet support --output option\n"
exit 0
#
# Delete left-over stdin/out/err files
# Build stdin file
#
exec $bin_rm -f $file_in
set file [open $file_in "w"]
puts $file "
$bin_id
"
#
# Submit a slurm job that will execute 'sleep'
# Use scontrol to confirm time limit
#
set job_id 0
spawn $sbatch -N1 --output=none --error=none --job-name=$name_set $file_in
expect {
-re "Submitted batch job ($number)" {
set job_id $expect_out(1,string)
exp_continue
}
timeout {
send_user "\nFAILURE: sbatch not responding\n"
set exit_code 1
exp_continue
}
eof {
wait
}
}
if { $job_id == 0 } {
send_user "\nFAILURE: failed to submit job\n"
exit 1
}
set matches 0
spawn $scontrol show job $job_id
expect {
-re "Name=$name_set" {
set matches 1
exp_continue
}
eof {
wait
}
}
if {$matches != 1} {
send_user "\nFAILURE: sbatch failed to set job name\n"
set exit_code 1
}
cancel_job $job_id
if {$exit_code == 0} {
exec $bin_rm -f $file_in
send_user "\nSUCCESS\n"
}
exit $exit_code
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment