Skip to content
Snippets Groups Projects
Commit 0f494cce authored by Danny Auble's avatar Danny Auble
Browse files

fixes for the tests

parent 0ddec01b
No related branches found
No related tags found
No related merge requests found
...@@ -883,8 +883,7 @@ proc remove_user { cluster acct user } { ...@@ -883,8 +883,7 @@ proc remove_user { cluster acct user } {
} }
if {$matches != 1} { if {$matches != 1} {
send_user "\nFAILURE: sacctmgr had a problem deleting user. send_user "\nFAILURE: sacctmgr had a problem deleting user. Got $matches\n"
got $matches\n"
incr exit_code 1 incr exit_code 1
} }
......
...@@ -152,7 +152,7 @@ if {$aamatches != 1} { ...@@ -152,7 +152,7 @@ if {$aamatches != 1} {
# #
# Use sacctmgr to list the test associations # Use sacctmgr to list the test associations
# #
set as_list_pid [spawn $sacctmgr list $ass] set as_list_pid [spawn $sacctmgr list $ass $clu=$tc1,$tc2]
expect { expect {
-re "$tc1 *$nm1" { -re "$tc1 *$nm1" {
incr almatches incr almatches
......
...@@ -154,7 +154,7 @@ if {$aamatches != 1} { ...@@ -154,7 +154,7 @@ if {$aamatches != 1} {
# #
# Use sacctmgr to list the test associations # Use sacctmgr to list the test associations
# #
set as_list_pid [spawn $sacctmgr list $ass] set as_list_pid [spawn $sacctmgr list $ass $clu=$tc1,$tc2]
expect { expect {
-re "$tc1 *$nm1" { -re "$tc1 *$nm1" {
incr almatches incr almatches
......
...@@ -74,8 +74,6 @@ set qs1 normal ...@@ -74,8 +74,6 @@ set qs1 normal
set par parent set par parent
set usr user set usr user
set us1 tuser1 set us1 tuser1
set us2 tuser2
set us3 tuser3
set al AdminLevel set al AdminLevel
set aln None set aln None
set ala Administrator set ala Administrator
...@@ -109,7 +107,7 @@ if { [string compare [check_accounting_admin_level] "Administrator"] } { ...@@ -109,7 +107,7 @@ if { [string compare [check_accounting_admin_level] "Administrator"] } {
} }
#make sure we have a clean system and permission to do this work #make sure we have a clean system and permission to do this work
remove_user "" "" "$us1,$us2,$us3" remove_user "" "" "$us1"
remove_acct "" "$nm1,$nm2,$nm3" remove_acct "" "$nm1,$nm2,$nm3"
remove_cluster "$tc1,$tc2,$tc3" remove_cluster "$tc1,$tc2,$tc3"
if {$access_err != 0} { if {$access_err != 0} {
...@@ -120,7 +118,7 @@ if {$access_err != 0} { ...@@ -120,7 +118,7 @@ if {$access_err != 0} {
#add cluster #add cluster
incr exit_code [add_cluster "$tc1,$tc2,$tc3" "" "" "" "" "" "" "" "" "" "" "" ""] incr exit_code [add_cluster "$tc1,$tc2,$tc3" "" "" "" "" "" "" "" "" "" "" "" ""]
if { $exit_code } { if { $exit_code } {
remove_user "" "" "$us1,$us2,$us3" remove_user "" "" "$us1"
remove_acct "" "$nm1,$nm2,$nm3" remove_acct "" "$nm1,$nm2,$nm3"
remove_cluster "$tc1,$tc2,$tc3" remove_cluster "$tc1,$tc2,$tc3"
exit $exit_code exit $exit_code
...@@ -129,7 +127,7 @@ if { $exit_code } { ...@@ -129,7 +127,7 @@ if { $exit_code } {
#add accounts #add accounts
incr exit_code [add_acct "$tc1,$tc2,$tc3" "" "$nm1,$nm2,$nm3" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""] incr exit_code [add_acct "$tc1,$tc2,$tc3" "" "$nm1,$nm2,$nm3" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""]
if { $exit_code } { if { $exit_code } {
remove_user "" "" "$us1,$us2,$us3" remove_user "" "" "$us1"
remove_acct "" "$nm1,$nm2,$nm3" remove_acct "" "$nm1,$nm2,$nm3"
remove_cluster "$tc1,$tc2,$tc3" remove_cluster "$tc1,$tc2,$tc3"
exit $exit_code exit $exit_code
...@@ -139,7 +137,7 @@ if { $exit_code } { ...@@ -139,7 +137,7 @@ if { $exit_code } {
# account adminlevel cluster defaultaccount fs maxcpu maxjob maxnodes maxwall name # account adminlevel cluster defaultaccount fs maxcpu maxjob maxnodes maxwall name
incr exit_code [add_user "$tc1,$tc2,$tc3" "$nm1,$nm2,$nm3" "$us1" "" "$alo" "$nm2" "" "" "" "$fs1" "" "" "" "" "" "" "$mc1" "" "$mj1" "$mn1" "" "$mw1" ] incr exit_code [add_user "$tc1,$tc2,$tc3" "$nm1,$nm2,$nm3" "$us1" "" "$alo" "$nm2" "" "" "" "$fs1" "" "" "" "" "" "" "$mc1" "" "$mj1" "$mn1" "" "$mw1" ]
if { $exit_code } { if { $exit_code } {
remove_user "" "" "$us1,$us2,$us3" remove_user "" "" "$us1"
remove_acct "" "$nm1,$nm2,$nm3" remove_acct "" "$nm1,$nm2,$nm3"
remove_cluster "$tc1,$tc2,$tc3" remove_cluster "$tc1,$tc2,$tc3"
exit $exit_code exit $exit_code
...@@ -176,9 +174,9 @@ if {$matches != 9} { ...@@ -176,9 +174,9 @@ if {$matches != 9} {
# This is the end below here # This is the end below here
incr exit_code [remove_user "$tc1" "" "$us1,$us2,$us3"] incr exit_code [remove_user "$tc1" "" "$us1"]
incr exit_code [remove_user "" "$nm1,$nm2,$nm3" "$us1,$us2,$us3"] incr exit_code [remove_user "" "$nm1,$nm2,$nm3" "$us1"]
incr exit_code [remove_user "" "" "$us1,$us2,$us3"] incr exit_code [remove_user "" "" "$us1"]
incr exit_code [remove_acct "" "$nm1,$nm2,$nm3"] incr exit_code [remove_acct "" "$nm1,$nm2,$nm3"]
incr exit_code [remove_cluster "$tc1,$tc2,$tc3"] incr exit_code [remove_cluster "$tc1,$tc2,$tc3"]
......
...@@ -147,7 +147,7 @@ if { $exit_code } { ...@@ -147,7 +147,7 @@ if { $exit_code } {
# First test change the AdminLevel and DefaultAccount of a user # First test change the AdminLevel and DefaultAccount of a user
# cluster account name part wadmin wdacct wdwckey qos fairshare grpcpumin grpcpu grpjob grpnode grpsubmit grpwall maxcpumin maxcpu maxjob maxnode maxsubmit maxwall admin dacct dwckey # cluster account name part wadmin wdacct wdwckey qos fairshare grpcpumin grpcpu grpjob grpnode grpsubmit grpwall maxcpumin maxcpu maxjob maxnode maxsubmit maxwall admin dacct dwckey
incr exit_code [mod_user "" "" $us1 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" $alo $nm2 ""] incr exit_code [mod_user $tc1,$tc2,$tc3 "" $us1 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" $alo $nm2 ""]
if { $exit_code } { if { $exit_code } {
remove_user "" "" "$us1,$us2,$us3" remove_user "" "" "$us1,$us2,$us3"
remove_acct "" "$nm1,$nm2,$nm3" remove_acct "" "$nm1,$nm2,$nm3"
...@@ -159,7 +159,7 @@ if { $exit_code } { ...@@ -159,7 +159,7 @@ if { $exit_code } {
# Use sacctmgr to list the test user modification # Use sacctmgr to list the test user modification
# #
set matches 0 set matches 0
set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 format="User,DefaultA,Admin"] set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 format="User,DefaultA,Admin" cluster=tcluster1]
expect { expect {
-re "There was a problem" { -re "There was a problem" {
send_user "FAILURE: there was a problem with the sacctmgr command\n" send_user "FAILURE: there was a problem with the sacctmgr command\n"
...@@ -180,8 +180,9 @@ expect { ...@@ -180,8 +180,9 @@ expect {
} }
if {$matches != 3} { if {$matches != 3} {
send_user "\nFAILURE: Account modification 1 incorrect with only $matches.\n" send_user "\nFAILURE: User modification 1 incorrect with only $matches.\n"
incr exit_code 1 incr exit_code 1
exit $exit_code
} }
# Next, test change the limits of one user # Next, test change the limits of one user
......
...@@ -146,7 +146,7 @@ if { $exit_code } { ...@@ -146,7 +146,7 @@ if { $exit_code } {
# First test change the AdminLevel and DefaultAccount of the accounts # First test change the AdminLevel and DefaultAccount of the accounts
# cluster account name part wadmin wdacct wdwckey qos fairshare grpcpumin grpcpu grpjob grpnode grpsubmit grpwall maxcpumin maxcpu maxjob maxnode maxsubmit maxwall admin dacct dwckey # cluster account name part wadmin wdacct wdwckey qos fairshare grpcpumin grpcpu grpjob grpnode grpsubmit grpwall maxcpumin maxcpu maxjob maxnode maxsubmit maxwall admin dacct dwckey
incr exit_code [mod_user "" "" "$us1,$us2,$us3" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" $alo $nm2 ""] incr exit_code [mod_user "$tc1,$tc2,$tc3" "" "$us1,$us2,$us3" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" $alo $nm2 ""]
if { $exit_code } { if { $exit_code } {
remove_user "" "" "$us1,$us2,$us3" remove_user "" "" "$us1,$us2,$us3"
remove_acct "" "$nm1,$nm2,$nm3" remove_acct "" "$nm1,$nm2,$nm3"
...@@ -158,7 +158,7 @@ if { $exit_code } { ...@@ -158,7 +158,7 @@ if { $exit_code } {
# Use sacctmgr to list the test account modifications # Use sacctmgr to list the test account modifications
# #
set matches 0 set matches 0
set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 format="User,DefaultA,Admin"] set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 format="User,DefaultA,Admin" cluster=$tc1]
expect { expect {
-re "There was a problem" { -re "There was a problem" {
send_user "FAILURE: there was a problem with the sacctmgr command\n" send_user "FAILURE: there was a problem with the sacctmgr command\n"
...@@ -185,7 +185,7 @@ if {$matches != 3} { ...@@ -185,7 +185,7 @@ if {$matches != 3} {
# Test change the AdminLevel and DefaultAccount of two accounts # Test change the AdminLevel and DefaultAccount of two accounts
# cluster account name part wadmin wdacct wdwckey qos fairshare grpcpumin grpcpu grpjob grpnode grpsubmit grpwall maxcpumin maxcpu maxjob maxnode maxsubmit maxwall admin dacct dwckey # cluster account name part wadmin wdacct wdwckey qos fairshare grpcpumin grpcpu grpjob grpnode grpsubmit grpwall maxcpumin maxcpu maxjob maxnode maxsubmit maxwall admin dacct dwckey
incr exit_code [mod_user "" "" "$us1,$us3" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" $ala $nm3 ""] incr exit_code [mod_user "$tc1,$tc2,$tc3" "" "$us1,$us3" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" $ala $nm3 ""]
if { $exit_code } { if { $exit_code } {
remove_user "" "" "$us1,$us2,$us3" remove_user "" "" "$us1,$us2,$us3"
remove_acct "" "$nm1,$nm2,$nm3" remove_acct "" "$nm1,$nm2,$nm3"
...@@ -197,7 +197,7 @@ if { $exit_code } { ...@@ -197,7 +197,7 @@ if { $exit_code } {
# Use sacctmgr to list the test account modifications # Use sacctmgr to list the test account modifications
# #
set matches 0 set matches 0
set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 format="User,DefaultA,Admin"] set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 format="User,DefaultA,Admin" cluster=$tc1]
expect { expect {
-re "There was a problem" { -re "There was a problem" {
send_user "FAILURE: there was a problem with the sacctmgr command\n" send_user "FAILURE: there was a problem with the sacctmgr command\n"
...@@ -265,7 +265,7 @@ if {$matches != 18} { ...@@ -265,7 +265,7 @@ if {$matches != 18} {
# Next, test change the limits of two users # Next, test change the limits of two users
# adminlevel defaultaccount fs maxcpu maxjob maxnodes maxwall waccounts wcluster wnames # adminlevel defaultaccount fs maxcpu maxjob maxnodes maxwall waccounts wcluster wnames
incr exit_code [mod_user "" "" "$us1,$us3" "" "" "" "" "" $fs3 "" "" "" "" "" "" $mc3 "" $mj3 $mn3 "" $mw3 "" "" ""] incr exit_code [mod_user "$tc1,$tc2,$tc3" "" "$us1,$us3" "" "" "" "" "" $fs3 "" "" "" "" "" "" $mc3 "" $mj3 $mn3 "" $mw3 "" "" ""]
if { $exit_code } { if { $exit_code } {
remove_user "" "" "$us1,$us2,$us3" remove_user "" "" "$us1,$us2,$us3"
remove_acct "" "$nm1,$nm2,$nm3" remove_acct "" "$nm1,$nm2,$nm3"
......
...@@ -158,7 +158,7 @@ if { $exit_code } { ...@@ -158,7 +158,7 @@ if { $exit_code } {
# Use sacctmgr to list the test user modification # Use sacctmgr to list the test user modification
# #
set matches 0 set matches 0
set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 withcoor format=user,DefaultAccount,Admin,Coord] set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 withcoor format=user,DefaultAccount,Admin,Coord cluster=$tc1]
expect { expect {
-re "There was a problem" { -re "There was a problem" {
send_user "FAILURE: there was a problem with the sacctmgr command\n" send_user "FAILURE: there was a problem with the sacctmgr command\n"
...@@ -196,7 +196,7 @@ if { $exit_code } { ...@@ -196,7 +196,7 @@ if { $exit_code } {
# Use sacctmgr to list the test coordinator additions # Use sacctmgr to list the test coordinator additions
# #
set matches 0 set matches 0
set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 withcoor format=user,DefaultAccount,Admin,Coord] set my_pid [spawn $sacctmgr -n -p list user names=$us1,$us2,$us3 withcoor format=user,DefaultAccount,Admin,Coord cluster=$tc1]
expect { expect {
-re "There was a problem" { -re "There was a problem" {
send_user "FAILURE: there was a problem with the sacctmgr command\n" send_user "FAILURE: there was a problem with the sacctmgr command\n"
......
...@@ -37,7 +37,7 @@ source ./globals_accounting ...@@ -37,7 +37,7 @@ source ./globals_accounting
set test_id "21.21" set test_id "21.21"
set exit_code 0 set exit_code 0
set file_in "test.$test_id.input" set file_in "test.$test_id.input"
set test_acct "test_acct" set test_acct "test21.21acct"
set timeout 60 set timeout 60
print_header $test_id print_header $test_id
......
...@@ -229,9 +229,9 @@ exec echo "$acc - $nm2:$dsc=$ds2:$org=$or2:$fs=$fs4:$gm=$gm4:$gc=$gc4:$gj=$gj4:$ ...@@ -229,9 +229,9 @@ exec echo "$acc - $nm2:$dsc=$ds2:$org=$or2:$fs=$fs4:$gm=$gm4:$gc=$gc4:$gj=$gj4:$
exec echo "$par - $nm1" >>$file_in exec echo "$par - $nm1" >>$file_in
exec echo "$acc - $nm3:$dsc=$ds3:$org=$or3:$fs=$fs3:$gm=$gm3:$gc=$gc3:$gj=$gj3:$gn=$gn3:$gs=$gs3:$gw=$gw3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1" >>$file_in exec echo "$acc - $nm3:$dsc=$ds3:$org=$or3:$fs=$fs3:$gm=$gm3:$gc=$gc3:$gj=$gj3:$gn=$gn3:$gs=$gs3:$gw=$gw3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1" >>$file_in
exec echo "$par - $nm2" >>$file_in exec echo "$par - $nm2" >>$file_in
exec echo "$usr - $us1:$coo=$nm2:$dac=$nm1:$fs=$fs1:$mm=$mm2:$mc=$mc2:$mj=$mj2:$mn=$mn2:$ms=$ms2:$mw=$mw2:$qs=$qs1:$al=$alo" >>$file_in exec echo "$usr - $us1:$coo=$nm2:$dac=$nm2:$fs=$fs1:$mm=$mm2:$mc=$mc2:$mj=$mj2:$mn=$mn2:$ms=$ms2:$mw=$mw2:$qs=$qs1:$al=$alo" >>$file_in
exec echo "$par - $nm3" >>$file_in exec echo "$par - $nm3" >>$file_in
exec echo "$usr - $us2:$coo=$nm3:$dac=$nm2:$fs=$fs2:$mm=$mm1:$mc=$mc1:$mj=$mj1:$mn=$mn1:$ms=$ms1:$mw=$mw1:$qs=$qs1:$al=$ala" >>$file_in exec echo "$usr - $us2:$coo=$nm3:$dac=$nm3:$fs=$fs2:$mm=$mm1:$mc=$mc1:$mj=$mj1:$mn=$mn1:$ms=$ms1:$mw=$mw1:$qs=$qs1:$al=$ala" >>$file_in
# #
# Second input file - to modify and add associations to the original # Second input file - to modify and add associations to the original
...@@ -243,12 +243,12 @@ exec echo "$acc - $nm3:$dsc=$ds1:$org=$or1:$fs=$fs5:$gm=$gm5:$gc=$gc5:$gj=$gj5:$ ...@@ -243,12 +243,12 @@ exec echo "$acc - $nm3:$dsc=$ds1:$org=$or1:$fs=$fs5:$gm=$gm5:$gc=$gc5:$gj=$gj5:$
exec echo "$par - $nm1" >>$file_in2 exec echo "$par - $nm1" >>$file_in2
exec echo "$acc - $nm2" >>$file_in2 exec echo "$acc - $nm2" >>$file_in2
exec echo "$par - $nm2" >>$file_in2 exec echo "$par - $nm2" >>$file_in2
exec echo "$usr - $us3:$coo=$nm1,$nm2,$nm3:$dac=$nm1:$fs=$fs2:$mm=$mm2:$mc=$mc2:$mj=$mj2:$mn=$mn2:$ms=$ms2:$mw=$mw2:$qs=$qs1:$al=$ala" >>$file_in2 exec echo "$usr - $us3:$coo=$nm1,$nm2,$nm3:$dac=$nm2:$fs=$fs2:$mm=$mm2:$mc=$mc2:$mj=$mj2:$mn=$mn2:$ms=$ms2:$mw=$mw2:$qs=$qs1:$al=$ala" >>$file_in2
exec echo "$par - $nm3" >>$file_in2 exec echo "$par - $nm3" >>$file_in2
exec echo "$usr - $us2:$dac=$nm1:$fs=$fs3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1:$al=$alo" >>$file_in2 exec echo "$usr - $us2:$dac=$nm3:$fs=$fs3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1:$al=$alo" >>$file_in2
exec echo "$usr - $us3:$dac=$nm1:$fs=$fs3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1" >>$file_in2 exec echo "$usr - $us3:$dac=$nm3:$fs=$fs3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1" >>$file_in2
exec echo "$par - $nm1" >>$file_in2 exec echo "$par - $nm1" >>$file_in2
exec echo "$usr - $us3:$dac=$nm2:$fs=$fs2:$mm=$mm1:$mc=$mc1:$mj=$mj1:$mn=$mn1:$ms=$ms1:$mw=$mw1:$qs=$qs1" >>$file_in2 exec echo "$usr - $us3:$dac=$nm1:$fs=$fs2:$mm=$mm1:$mc=$mc1:$mj=$mj1:$mn=$mn1:$ms=$ms1:$mw=$mw1:$qs=$qs1" >>$file_in2
# #
# Third input file - to replace all previous # Third input file - to replace all previous
...@@ -260,13 +260,13 @@ exec echo "$acc - $nm3:$dsc=$ds3:$org=$or3:$fs=$fs5:$gm=$gm5:$gc=$gc5:$gj=$gj5:$ ...@@ -260,13 +260,13 @@ exec echo "$acc - $nm3:$dsc=$ds3:$org=$or3:$fs=$fs5:$gm=$gm5:$gc=$gc5:$gj=$gj5:$
exec echo "$par - $nm1" >>$file_in3 exec echo "$par - $nm1" >>$file_in3
exec echo "$acc - $nm3:$dsc=$ds1:$org=$or1:$fs=$fs5:$gm=$gm5:$gc=$gc5:$gj=$gj5:$gn=$gn5:$gs=$gs5:$gw=$gw5:$mm=$mm5:$mc=$mc5:$mj=$mj5:$mn=$mn5:$ms=$ms5:$mw=$mw5:$qs=$qs1" >>$file_in3 exec echo "$acc - $nm3:$dsc=$ds1:$org=$or1:$fs=$fs5:$gm=$gm5:$gc=$gc5:$gj=$gj5:$gn=$gn5:$gs=$gs5:$gw=$gw5:$mm=$mm5:$mc=$mc5:$mj=$mj5:$mn=$mn5:$ms=$ms5:$mw=$mw5:$qs=$qs1" >>$file_in3
exec echo "$acc - $nm2:$dsc=$ds2:$org=$or2:$fs=$fs4:$gm=$gm4:$gc=$gc4:$gj=$gj4:$gn=$gn4:$gs=$gs4:$gw=$gw4:$mm=$mm4:$mc=$mc4:$mj=$mj4:$mn=$mn4:$ms=$ms4:$mw=$mw4:$qs=$qs1:$al=$alo" >>$file_in3 exec echo "$acc - $nm2:$dsc=$ds2:$org=$or2:$fs=$fs4:$gm=$gm4:$gc=$gc4:$gj=$gj4:$gn=$gn4:$gs=$gs4:$gw=$gw4:$mm=$mm4:$mc=$mc4:$mj=$mj4:$mn=$mn4:$ms=$ms4:$mw=$mw4:$qs=$qs1:$al=$alo" >>$file_in3
exec echo "$usr - $us3:$coo=$nm1,$nm2,$nm3:$dac=$nm2:$fs=$fs2:$mm=$mm1:$mc=$mc1:$mj=$mj1:$mn=$mn1:$ms=$ms1:$mw=$mw1:$qs=$qs1:$al=$ala" >>$file_in3 exec echo "$usr - $us3:$coo=$nm1,$nm2,$nm3:$dac=$nm1:$fs=$fs2:$mm=$mm1:$mc=$mc1:$mj=$mj1:$mn=$mn1:$ms=$ms1:$mw=$mw1:$qs=$qs1:$al=$ala" >>$file_in3
exec echo "$par - $nm2" >>$file_in3 exec echo "$par - $nm2" >>$file_in3
exec echo "$usr - $us1:$coo=$nm2:$dac=$nm1:$fs=$fs1:$mm=$mm2:$mc=$mc2:$mj=$mj2:$mn=$mn2:$ms=$ms2:$mw=$mw2:$qs=$qs1:$al=$alo" >>$file_in3 exec echo "$usr - $us1:$coo=$nm2:$dac=$nm2:$fs=$fs1:$mm=$mm2:$mc=$mc2:$mj=$mj2:$mn=$mn2:$ms=$ms2:$mw=$mw2:$qs=$qs1:$al=$alo" >>$file_in3
exec echo "$usr - $us3:$dac=$nm1:$fs=$fs2:$mm=$mm2:$mc=$mc2:$mj=$mj2:$mn=$mn2:$ms=$ms2:$mw=$mw2:$qs=$qs1" >>$file_in3 exec echo "$usr - $us3:$dac=$nm2:$fs=$fs2:$mm=$mm2:$mc=$mc2:$mj=$mj2:$mn=$mn2:$ms=$ms2:$mw=$mw2:$qs=$qs1" >>$file_in3
exec echo "$par - $nm3" >>$file_in3 exec echo "$par - $nm3" >>$file_in3
exec echo "$usr - $us2:$coo=$nm3:$dac=$nm1:$fs=$fs3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1" >>$file_in3 exec echo "$usr - $us2:$coo=$nm3:$dac=$nm3:$fs=$fs3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1" >>$file_in3
exec echo "$usr - $us3:$dac=$nm1:$fs=$fs3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1" >>$file_in3 exec echo "$usr - $us3:$dac=$nm3:$fs=$fs3:$mm=$mm3:$mc=$mc3:$mj=$mj3:$mn=$mn3:$ms=$ms3:$mw=$mw3:$qs=$qs1" >>$file_in3
# #
# Use sacctmgr to remove the test cluster # Use sacctmgr to remove the test cluster
...@@ -538,7 +538,11 @@ if {$matches != 2} { ...@@ -538,7 +538,11 @@ if {$matches != 2} {
send_user "\nFAILURE: File load 1 incorrect with only $matches.\n" send_user "\nFAILURE: File load 1 incorrect with only $matches.\n"
incr exit_code 1 incr exit_code 1
} }
#incr exit_code [_remove_user "" "$us1,$us2,$us3,$us4"]
#incr exit_code [_remove_acct "" "$nm1,$nm2,$nm3,$nm4"]
#incr exit_code [_remove_cluster "$cl1"]
#exit 1
# #
# Use sacctmgr to list the test original association additions # Use sacctmgr to list the test original association additions
# #
...@@ -668,50 +672,60 @@ if {$matches != 2} { ...@@ -668,50 +672,60 @@ if {$matches != 2} {
# Use sacctmgr to list the test modifications to the original association # Use sacctmgr to list the test modifications to the original association
# #
set matches 0 set matches 0
set my_pid [spawn $sacctmgr -n -p $lis $as $clu=$cl1 $fmt=$clu,$acc,$usr,$pts,$fs,$gm,$gc,$gj,$gn,$gs,$gw,$mc,$mm,$mj,$mn,$ms,$mw,$qs]
set my_pid [spawn $sacctmgr -n -P $lis $as $clu=$cl1 $fmt=$clu,$acc,$usr,$fs,$gm,$gc,$gj,$gn,$gs,$gw,$mc,$mm,$mj,$mn,$ms,$mw,$qs]
expect { expect {
-re "There was a problem" { -re "There was a problem" {
send_user "FAILURE: there was a problem with the sacctmgr command\n" send_user "FAILURE: there was a problem with the sacctmgr command\n"
incr exit_code 1 incr exit_code 1
} }
-re "($cl1.$roo...$fs6.$gm6.$gc6.$gj6.$gn6.$gs6.$gt6.$mc6.$mm6.$mj6.$mn6.$ms6.$mt6.$qs1)" { -re "($cl1.$roo..$fs6.$gm6.$gc6.$gj6.$gn6.$gs6.$gt6.$mc6.$mm6.$mj6.$mn6.$ms6.$mt6.$qs1)" {
incr matches incr matches
exp_continue exp_continue
} }
-re "($cl1.$roo.$roo..1.......$mc6.$mm6.$mj6.$mn6.$ms6.$mt6.$qs1)" { -re "($cl1.$roo.$roo.1.......$mc6.$mm6.$mj6.$mn6.$ms6.$mt6.$qs1)" {
incr matches incr matches
send_user "2\n"
exp_continue exp_continue
} }
-re "($cl1.$nm1...$fs5.$gm5.$gc5.$gj5.$gn5.$gs5.$gt5.$mc5.$mm5.$mj5.$mn5.$ms5.$mt5.$qs1)" { -re "($cl1.$nm1..$fs5.$gm5.$gc5.$gj5.$gn5.$gs5.$gt5.$mc5.$mm5.$mj5.$mn5.$ms5.$mt5.$qs1)" {
incr matches incr matches
send_user "3\n"
exp_continue exp_continue
} }
-re "($cl1.$nm1.$us3..$fs2.......$mc1.$mm1.$mj1.$mn1.$ms1.$mt1.$qs1)" { -re "($cl1.$nm1.$us3.$fs2.......$mc1.$mm1.$mj1.$mn1.$ms1.$mt1.$qs1)" {
incr matches incr matches
send_user "4\n"
exp_continue exp_continue
} }
-re "($cl1.$nm2...$fs4.$gm4.$gc4.$gj4.$gn4.$gs4.$gt4.$mc4.$mm4.$mj4.$mn4.$ms4.$mt4.$qs1)" { -re "($cl1.$nm2..$fs4.$gm4.$gc4.$gj4.$gn4.$gs4.$gt4.$mc4.$mm4.$mj4.$mn4.$ms4.$mt4.$qs1)" {
incr matches incr matches
send_user "5\n"
exp_continue exp_continue
} }
-re "($cl1.$nm2.$us1..$fs1.......$mc2.$mm2.$mj2.$mn2.$ms2.$mt2.$qs1)" { -re "($cl1.$nm2.$us1.$fs1.......$mc2.$mm2.$mj2.$mn2.$ms2.$mt2.$qs1)" {
incr matches incr matches
send_user "6\n"
exp_continue exp_continue
} }
-re "($cl1.$nm2.$us3..$fs2.......$mc2.$mm2.$mj2.$mn2.$ms2.$mt2.$qs1)" { -re "($cl1.$nm2.$us3.$fs2.......$mc2.$mm2.$mj2.$mn2.$ms2.$mt2.$qs1)" {
incr matches incr matches
send_user "7\n"
exp_continue exp_continue
} }
-re "($cl1.$nm3...$fs5.$gm5.$gc5.$gj5.$gn5.$gs5.$gt5.$mc5.$mm5.$mj5.$mn5.$ms5.$mt5.$qs1)" { -re "($cl1.$nm3..$fs5.$gm5.$gc5.$gj5.$gn5.$gs5.$gt5.$mc5.$mm5.$mj5.$mn5.$ms5.$mt5.$qs1)" {
incr matches incr matches
send_user "8\n"
exp_continue exp_continue
} }
-re "($cl1.$nm3.$us2..$fs3.......$mc3.$mm3.$mj3.$mn3.$ms3.$mt3.$qs1)" { -re "($cl1.$nm3.$us2.$fs3.......$mc3.$mm3.$mj3.$mn3.$ms3.$mt3.$qs1)" {
incr matches incr matches
send_user "9\n"
exp_continue exp_continue
} }
-re "($cl1.$nm3.$us3..$fs3.......$mc3.$mm3.$mj3.$mn3.$ms3.$mt3.$qs1)" { -re "($cl1.$nm3.$us3.$fs3.......$mc3.$mm3.$mj3.$mn3.$ms3.$mt3.$qs1)" {
incr matches incr matches
send_user "10\n"
exp_continue exp_continue
} }
timeout { timeout {
......
...@@ -35,19 +35,11 @@ source ./globals ...@@ -35,19 +35,11 @@ source ./globals
set test_id "21.27" set test_id "21.27"
set sho show
set add create
set del delete
set pro problem
set par parent
set clu Cluster
set cl1 pc1 set cl1 pc1
set cl2 pc2 set cl2 pc2
set acc Account
set ac1 pa1 set ac1 pa1
set ac2 pa2 set ac2 pa2
set ac3 pa3 set ac3 pa3
set usr user
set us1 usr1 set us1 usr1
set us2 usr2 set us2 usr2
set us3 mysql set us3 mysql
...@@ -71,25 +63,155 @@ if { [string compare [check_accounting_admin_level] "Administrator"] } { ...@@ -71,25 +63,155 @@ if { [string compare [check_accounting_admin_level] "Administrator"] } {
} }
# #
# Delete # Delete
# #
exec $sacctmgr -i $del $usr $us1,$us2,$us3 spawn $sacctmgr -i delete user $us1,$us2,$us3
exec $sacctmgr -i $del $acc $ac1,$ac2,$ac3 expect {
exec $sacctmgr -i $del $clu $cl1,$cl2 timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i delete account $ac1,$ac2,$ac3
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i delete cluster $cl1,$cl2
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
# #
# Build test associations # Build test associations
# #
exec $sacctmgr -i $add $clu $cl1 spawn $sacctmgr -i add cluster $cl1
exec $sacctmgr -i $add $acc $ac1 $clu=$cl1 expect {
exec $sacctmgr -i $add $acc $ac2 $par=$ac1 $clu=$cl1 timeout {
exec $sacctmgr -i $add $usr $us1 $acc=$ac1 $clu=$cl1 send_user "\nFAILURE: sacctmgr add not responding\n"
exec $sacctmgr -i $add $usr $us2 $acc=$ac1 $clu=$cl1 set exit_code 1
exec $sacctmgr -i $add $usr $us3 $acc=$ac2 $clu=$cl1 }
exec $sacctmgr -i $del $clu $cl1 eof {
exec $sacctmgr -i $add $clu $cl2 wait
exec $sacctmgr -i $add $acc $ac3 $clu=$cl2 }
exec $sacctmgr $sho $pro }
spawn $sacctmgr -i add account $ac1 cluster=$cl1
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i add account $ac2 parent=$ac1 cluster=$cl1
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i add user $us1 account=$ac1 cluster=$cl1
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i add user $us2 account=$ac1 cluster=$cl1
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i add user $us3 account=$ac2 cluster=$cl1
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i delete cluster $cl1
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i add cluster $cl2
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i add account $ac3 cluster=$cl2
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr show problem
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
# #
# Test for problems # Test for problems
...@@ -98,7 +220,7 @@ exec $sacctmgr $sho $pro ...@@ -98,7 +220,7 @@ exec $sacctmgr $sho $pro
set matches 0 set matches 0
set nothing 0 set nothing 0
set my_pid [spawn $sacctmgr -p $sho $pro] set my_pid [spawn $sacctmgr -p show problem]
expect { expect {
-re "$ac1..Account has no Associations" { -re "$ac1..Account has no Associations" {
incr matches incr matches
...@@ -142,11 +264,38 @@ exec $sacctmgr $sho $pro ...@@ -142,11 +264,38 @@ exec $sacctmgr $sho $pro
# #
# Delete # Delete
# #
exec $sacctmgr -i $del $usr $us1,$us2,$us3 spawn $sacctmgr -i delete user $us1,$us2,$us3
exec $sacctmgr -i $del $acc $ac1,$ac2,$ac3 expect {
exec $sacctmgr -i $del $clu $cl1,$cl2 timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i delete account $ac1,$ac2,$ac3
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
spawn $sacctmgr -i delete cluster $cl1,$cl2
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
if {$exit_code == 0} { if {$exit_code == 0} {
send_user "\nSUCCESS\n" send_user "\nSUCCESS\n"
...@@ -154,4 +303,3 @@ if {$exit_code == 0} { ...@@ -154,4 +303,3 @@ if {$exit_code == 0} {
send_user "\nFAILURE\n" send_user "\nFAILURE\n"
} }
exit $exit_code exit $exit_code
...@@ -163,25 +163,25 @@ proc list_test_users { } { ...@@ -163,25 +163,25 @@ proc list_test_users { } {
global sacctmgr global sacctmgr
global us1 us2 us3 nm1 nm2 nm3 tc1 tc2 tc3 fs1 mc1 mj1 mn1 mw1 alo global us1 us2 us3 nm1 nm2 nm3 tc1 tc2 tc3 fs1 mc1 mj1 mn1 mw1 alo
set matches 0 set matches 0
set my_pid [spawn $sacctmgr -n -p list user format="User,DefaultA,Admin,clus,acc,fair,maxcpum,maxj,maxn,maxw" names=$us1,$us2,$us3 withassoc] set my_pid [spawn $sacctmgr -n -p list user format="User,DefaultA,Admin,clus,acc,fair,maxcpum,maxj,maxn,maxw" names=$us1,$us2,$us3 withassoc]
expect { expect {
-re "There was a problem" { -re "There was a problem" {
send_user "FAILURE: there was a problem with the sacctmgr command\n" send_user "FAILURE: there was a problem with the sacctmgr command\n"
} }
-re "(($us1|$us2|$us3).$nm2.$alo.($tc1|$tc2|$tc3).($nm1|$nm2|$nm3).$fs1.$mc1.$mj1.$mn1.$mw1.)" { -re "(($us1|$us2|$us3).$nm2.$alo.($tc1|$tc2|$tc3).($nm1|$nm2|$nm3).$fs1.$mc1.$mj1.$mn1.$mw1.)" {
incr matches incr matches
exp_continue exp_continue
} }
timeout { timeout {
send_user "\nFAILURE: sacctmgr list associations not responding\n" send_user "\nFAILURE: sacctmgr list associations not responding\n"
slow_kill $my_pid slow_kill $my_pid
} }
eof { eof {
wait wait
} }
} }
return $matches return $matches
} }
################################################################ ################################################################
################################################################ ################################################################
...@@ -198,91 +198,93 @@ proc list_test_users { } { ...@@ -198,91 +198,93 @@ proc list_test_users { } {
proc list_test_object { to1 to2 to3 tname} { proc list_test_object { to1 to2 to3 tname} {
global sacctmgr global sacctmgr
set tmatches 0 set tmatches 0
set my_pid [spawn $sacctmgr -n -p list $tname $to1,$to2,$to3] set my_pid [spawn $sacctmgr -n -p list $tname $to1,$to2,$to3]
expect { expect {
-re "There was a problem" { -re "There was a problem" {
send_user "FAILURE: there was a problem with the sacctmgr command\n" send_user "FAILURE: there was a problem with the sacctmgr command\n"
} }
-re "($to1|$to2|$to3)" { -re "($to1|$to2|$to3)" {
incr tmatches incr tmatches
exp_continue exp_continue
} }
timeout { timeout {
send_user "\nFAILURE: sacctmgr list associations not responding\n" send_user "\nFAILURE: sacctmgr list associations not responding\n"
slow_kill $my_pid slow_kill $my_pid
} }
eof { eof {
wait wait
} }
} }
return $tmatches return $tmatches
} }
################################################################ ################################################################
# #
# Begin here with abort delete test # Begin here with abort delete test
# #
foreach atest $lista { foreach atest $lista {
set my_pid [spawn $sacctmgr del $acc $atest] set my_pid [spawn $sacctmgr del $acc $atest]
expect { expect {
"(N/y):" { "(N/y):" {
send "N" send "N"
exp_continue exp_continue
timeout { timeout {
send_user "\nFAILURE: sacctmgr list $acc timing out.\n" send_user "\nFAILURE: sacctmgr list $acc timing out.\n"
slow_kill $my_pid slow_kill $my_pid
} }
} }
} }
} }
if { [list_test_users] != 27 } { set count [list_test_users]
send_user "\nFAILURE: This test$test_id concludes that sacctmgr did not abort delete of accounts.\n" if { $count != 27 } {
exit 1 send_user "\nFAILURE 1: This test$test_id concludes that sacctmgr did not abort delete of accounts $count.\n"
} exit 1
}
# #
foreach ctest $listc { foreach ctest $listc {
set my_pid [spawn $sacctmgr del $clu $ctest] set my_pid [spawn $sacctmgr del $clu $ctest]
expect { expect {
"(N/y):" { "(N/y):" {
send "N" send "N"
exp_continue exp_continue
timeout { timeout {
send_user "\nFAILURE: sacctmgr list cluster timing out.\n" send_user "\nFAILURE: sacctmgr list cluster timing out.\n"
slow_kill $my_pid slow_kill $my_pid
} }
} }
} }
} }
if { [list_test_users] != 27 } { set count [list_test_users]
send_user "\nFAILURE: This test$test_id concludes that sacctmgr did not abort delete of $clu\n" if { $count != 27 } {
exit 1 send_user "\nFAILURE 2: This test$test_id concludes that sacctmgr did not abort delete of $clu $count\n"
} exit 1
}
# #
foreach utest $listu { foreach utest $listu {
set my_pid [spawn $sacctmgr del $usr $atest] set my_pid [spawn $sacctmgr del $usr $atest]
expect { expect {
"(N/y):" { "(N/y):" {
send "N" send "N"
exp_continue exp_continue
timeout { timeout {
send_user "\nFAILURE: sacctmgr list $usr timing out.\n" send_user "\nFAILURE: sacctmgr list $usr timing out.\n"
slow_kill $my_pid slow_kill $my_pid
} }
} }
} }
} }
set count [list_test_users]
if { [list_test_users] != 27 } { if { $count != 27 } {
send_user "\nFAILURE: This test$test_id concludes that sacctmgr did not abort delete of users.\n" send_user "\nFAILURE 3: This test$test_id concludes that sacctmgr did not abort delete of users $count.\n"
exit 1 exit 1
} }
################################################################ ################################################################
# #
...@@ -290,66 +292,66 @@ if { [list_test_users] != 27 } { ...@@ -290,66 +292,66 @@ if { [list_test_users] != 27 } {
# #
# #
foreach udtest $listu { foreach udtest $listu {
set my_pid [spawn $sacctmgr del $usr $udtest] set my_pid [spawn $sacctmgr del $usr $udtest]
expect { expect {
"(N/y):" { "(N/y):" {
send "y" send "y"
exp_continue exp_continue
timeout { timeout {
send_user "\nFAILURE: sacctmgr list $usr timing out.\n" send_user "\nFAILURE: sacctmgr list $usr timing out.\n"
slow_kill $my_pid slow_kill $my_pid
} }
} }
} }
} }
if { [list_test_object $us1 $us2 $us3 user] != 0 } { if { [list_test_object $us1 $us2 $us3 user] != 0 } {
send_user "\nFAILURE: This test$test_id concludes that sacctmgr did not delete users.\n" send_user "\nFAILURE 4: This test$test_id concludes that sacctmgr did not delete users.\n"
exit 1 exit 1
} }
# #
foreach adtest $lista { foreach adtest $lista {
set my_pid [spawn $sacctmgr del $acc $adtest] set my_pid [spawn $sacctmgr del $acc $adtest]
expect { expect {
"(N/y):" { "(N/y):" {
send "y" send "y"
exp_continue exp_continue
timeout { timeout {
send_user "\nFAILURE: sacctmgr list $acc timing out.\n" send_user "\nFAILURE: sacctmgr list $acc timing out.\n"
slow_kill $my_pid slow_kill $my_pid
} }
} }
} }
} }
if { [list_test_object $nm1 $nm2 $nm3 account] != 0 } { if { [list_test_object $nm1 $nm2 $nm3 account] != 0 } {
send_user "\nFAILURE: This test$test_id concludes that sacctmgr did not delete accounts.\n" send_user "\nFAILURE 5: This test$test_id concludes that sacctmgr did not delete accounts.\n"
exit 1 exit 1
} }
# #
foreach cdtest $listc { foreach cdtest $listc {
set my_pid [spawn $sacctmgr del $clu $cdtest] set my_pid [spawn $sacctmgr del $clu $cdtest]
expect { expect {
"(N/y):" { "(N/y):" {
send "y" send "y"
exp_continue exp_continue
timeout { timeout {
send_user "\nFAILURE: sacctmgr list cluster timing out.\n" send_user "\nFAILURE: sacctmgr list cluster timing out.\n"
slow_kill $my_pid slow_kill $my_pid
} }
} }
} }
} }
if { [list_test_object $tc1 $tc2 $tc3 cluster] != 0 } { if { [list_test_object $tc1 $tc2 $tc3 cluster] != 0 } {
send_user "\nFAILURE: This test$test_id concludes that sacctmgr did not delete $clu\n" send_user "\nFAILURE 6: This test$test_id concludes that sacctmgr did not delete $clu\n"
exit 1 exit 1
} }
# This is the end below here # This is the end below here
......
...@@ -104,7 +104,16 @@ if {$access_err != 0} { ...@@ -104,7 +104,16 @@ if {$access_err != 0} {
} }
#add qos #add qos
exec $sacctmgr -i add qos $nm=$qs1 $dsc=$ds1 $gc=$gc1 $gcm=$gcm1 $gj=$gj1 $gn=$gn1 $gs=$gs1 $gw=$gw1 $mc=$mc1 $mcm=$mcm1 $mj=$mj1 $mn=$mn1 $ms=$ms1 $msj=$msj1 $mw=$mw1 $pre=$pe1 $pm=$pm1 $pri=$pi1 $uf=$uf1 spawn $sacctmgr -i add qos $nm=$qs1 $dsc=$ds1 $gc=$gc1 $gcm=$gcm1 $gj=$gj1 $gn=$gn1 $gs=$gs1 $gw=$gw1 $mc=$mc1 $mcm=$mcm1 $mj=$mj1 $mn=$mn1 $ms=$ms1 $msj=$msj1 $mw=$mw1 $pre=$pe1 $pm=$pm1 $pri=$pi1 $uf=$uf1
expect {
timeout {
send_user "\nFAILURE: sacctmgr add not responding\n"
set exit_code 1
}
eof {
wait
}
}
# Use sacctmgr list to verify the test qos fields # Use sacctmgr list to verify the test qos fields
# #
......
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