From 1f5489f3bf86774779239f9b3375b83fb6bf5d9d Mon Sep 17 00:00:00 2001 From: Danny Auble <da@schedmd.com> Date: Mon, 7 Jul 2014 11:43:16 -0700 Subject: [PATCH] same type of changes as to 2.18 --- testsuite/expect/test2.19 | 112 +++++++++++++------------------------- 1 file changed, 39 insertions(+), 73 deletions(-) diff --git a/testsuite/expect/test2.19 b/testsuite/expect/test2.19 index 56516a64307..174117d82e0 100755 --- a/testsuite/expect/test2.19 +++ b/testsuite/expect/test2.19 @@ -35,6 +35,7 @@ set test_id "2.19" set user_name "" set node_name "" set host_name "" +set cluster_name "" set acct1 "test${test_id}_acct_1" set acct2 "test${test_id}_acct_2" set qos_good "test${test_id}_qos_good" @@ -75,8 +76,21 @@ proc set_part_val {part_type part_val} { } } -proc delete_part { } { - global scontrol sacctmgr part_name qos_good qos_bad acct1 acct2 exit_code +proc cleanup { } { + global scancel scontrol sacctmgr part_name qos_good qos_bad acct1 acct2 exit_code + + spawn $scancel -p $part_name + expect { + timeout { + send_user "FAILURE: scancel is not responding\n" + set exit_code 1 + } + eof { + wait + } + } + + send_user "Any error, except for unresponsiveness, from the previous scancel is expected and should be ignored.\n" spawn $scontrol delete partition=$part_name expect { @@ -131,7 +145,7 @@ proc delete_part { } { } proc create_qos { acct qos } { - global sacctmgr user_name exit_code + global sacctmgr user_name exit_code cluster_name set create_qos 0 spawn $sacctmgr -i create qos $qos @@ -150,7 +164,7 @@ proc create_qos { acct qos } { } - spawn $sacctmgr -i create account $acct qos=$qos + spawn $sacctmgr -i create account $acct qos=$qos cluster=$cluster_name expect { -re "Adding Account" { incr create_qos @@ -166,7 +180,7 @@ proc create_qos { acct qos } { } set create_acct 0 - spawn $sacctmgr -i create user $user_name account=$acct + spawn $sacctmgr -i create user $user_name account=$acct cluster=$cluster_name expect { timeout { send_user "\nFAILURE: sacctmgr is not responding\n" @@ -185,18 +199,13 @@ proc create_qos { acct qos } { proc test_part {acct qos part qos_con } { - global srun host_name part_name exit_code + global srun part_name exit_code set sub_job 0 - spawn $srun -I -A $acct --qos $qos -p $part hostname + spawn $srun -I -A $acct --qos $qos -p $part true expect { - -re "$host_name" { - set sub_job 1 - exp_continue - } -re "error" { - set sub_job 2 - if { $qos_con == 1 && $sub_job == 2} { + if { $qos_con == 1 } { send_user "\nThis error is expected\n" } else { send_user "\nFAILURE: This error should not have occured\n" @@ -215,7 +224,7 @@ proc test_part {acct qos part qos_con } { } # Delete any vestigial qos or accounts -delete_part +cleanup spawn $bin_id -un expect { @@ -232,56 +241,25 @@ expect { } } -spawn hostname -expect { +set node_name [ get_idle_node_in_part $partition ] +set cluster_name [ get_cluster_name ] - -re "($alpha_numeric_under)" { - set host_name $expect_out(1,string) - exp_continue - } - timeout { - send_user "\nFAILURE: hostname is not responding\n" - set exit_code 1 - } - eof { - wait - } -} +# NOTE: qos_good should always work and +# qos_bad should always cause an error +# +# Create good QOS +# +create_qos $acct1 $qos_good -spawn $scontrol show node -expect { - -re "NodeName=($alpha_numeric_under)" { - set node_name $expect_out(1,string) - exp_continue - } - timeout { - send_user "\nFAILURE: scontrol is not responding\n" - set exit_code 1 - } - eof { - wait - } -} +# +# Create bad QOS +# +create_qos $acct2 $qos_bad -# Create partition -spawn $scontrol create partition=$part_name -expect { - -re "error" { - send_user "\nFAILURE: partition was not created\n" - set exit_code 1 - } - timeout { - send_user "\nFAILURE: scontrol is not reponding\n" - set exit_code 1 - } - eof { - wait - } -} -# Add nodes to partition -spawn $scontrol update partition=$part_name nodes=$node_name +# Create partition +spawn $scontrol create partition=$part_name nodes=$node_name expect { -re "error" { send_user "\nFAILURE: partition was not created\n" @@ -296,19 +274,6 @@ expect { } } -# NOTE: qos_good should always work and -# qos_bad should always cause an error - -# -# Create good QOS -# -create_qos $acct1 $qos_good - -# -# Create bad QOS -# -create_qos $acct2 $qos_bad - # # Set Allow Qos to good value # @@ -351,7 +316,8 @@ test_part $acct1 $qos_good $part_name 0 # test_part $acct2 $qos_bad $part_name 1 -if {[delete_part] != 2} { +sleep 5 +if {[cleanup] != 2} { send_user "\nFAILURE: Qos/account was not deleted\n" set exit_code 1 } -- GitLab