@@ -3736,7 +3736,7 @@ def test_find_unhealthy_slurm_nodes(
37363736 [
37373737 pytest .param (
37383738 {
3739- "queue1" : SlurmPartition (
3739+ "queue1" : SimpleNamespace (
37403740 name = "queue1" ,
37413741 nodenames = "queue1-st-cr1-1,queue1-st-cr1-2" ,
37423742 state = "UP" ,
@@ -3745,7 +3745,7 @@ def test_find_unhealthy_slurm_nodes(
37453745 StaticNode (name = "queue1-st-cr1-2" , nodeaddr = "" , nodehostname = "" , state = "" ),
37463746 ],
37473747 ),
3748- "queue2" : SlurmPartition (
3748+ "queue2" : SimpleNamespace (
37493749 name = "queue2" ,
37503750 nodenames = "queue2-st-cr1-1,queue2-st-cr1-2" ,
37513751 state = "UP" ,
@@ -3765,7 +3765,7 @@ def test_find_unhealthy_slurm_nodes(
37653765 ),
37663766 pytest .param (
37673767 {
3768- "queue1" : SlurmPartition (
3768+ "queue1" : SimpleNamespace (
37693769 name = "queue1" ,
37703770 nodenames = "queue1-st-cr1-1,queue1-st-cr1-2" ,
37713771 state = "UP" ,
@@ -3774,7 +3774,7 @@ def test_find_unhealthy_slurm_nodes(
37743774 StaticNode (name = "queue1-st-cr1-2" , nodeaddr = "" , nodehostname = "" , state = "" ),
37753775 ],
37763776 ),
3777- "custom_partition" : SlurmPartition (
3777+ "custom_partition" : SimpleNamespace (
37783778 name = "custom_partition" ,
37793779 nodenames = "queue1-st-cr1-1,queue1-st-cr1-2" ,
37803780 state = "UP" ,
@@ -3791,6 +3791,62 @@ def test_find_unhealthy_slurm_nodes(
37913791 id = "Two overlapping partitions obtained by creating a custom partition that includes nodes from a "
37923792 "PC-managed queue" ,
37933793 ),
3794+ pytest .param (
3795+ {},
3796+ [],
3797+ id = "Empty cluster with no partitions" ,
3798+ ),
3799+ pytest .param (
3800+ {
3801+ "queue1" : SimpleNamespace (
3802+ name = "queue1" ,
3803+ nodenames = "queue1-st-cr1-1,queue1-st-cr1-2" ,
3804+ state = "UP" ,
3805+ slurm_nodes = [
3806+ StaticNode (name = "queue1-st-cr1-1" , nodeaddr = "" , nodehostname = "" , state = "" ),
3807+ StaticNode (name = "queue1-st-cr1-2" , nodeaddr = "" , nodehostname = "" , state = "" ),
3808+ ],
3809+ ),
3810+ "queue2" : SimpleNamespace (
3811+ name = "queue2" ,
3812+ nodenames = "queue2-st-cr1-1,queue2-st-cr1-2" ,
3813+ state = "INACTIVE" ,
3814+ slurm_nodes = [
3815+ StaticNode (name = "queue2-st-cr1-1" , nodeaddr = "" , nodehostname = "" , state = "" ),
3816+ StaticNode (name = "queue2-st-cr1-2" , nodeaddr = "" , nodehostname = "" , state = "" ),
3817+ ],
3818+ ),
3819+ },
3820+ [
3821+ StaticNode (name = "queue1-st-cr1-1" , nodeaddr = "" , nodehostname = "" , state = "" ),
3822+ StaticNode (name = "queue1-st-cr1-2" , nodeaddr = "" , nodehostname = "" , state = "" ),
3823+ ],
3824+ id = "Two non-overlapping partitions, one active and one inactive" ,
3825+ ),
3826+ pytest .param (
3827+ {
3828+ "queue1" : SimpleNamespace (
3829+ name = "queue1" ,
3830+ nodenames = "queue1-st-cr1-1,queue1-st-cr1-2" ,
3831+ state = "INACTIVE" ,
3832+ slurm_nodes = [
3833+ StaticNode (name = "queue1-st-cr1-1" , nodeaddr = "" , nodehostname = "" , state = "" ),
3834+ StaticNode (name = "queue1-st-cr1-2" , nodeaddr = "" , nodehostname = "" , state = "" ),
3835+ ],
3836+ ),
3837+ "queue2" : SimpleNamespace (
3838+ name = "queue2" ,
3839+ nodenames = "queue2-st-cr1-1,queue2-st-cr1-2" ,
3840+ state = "INACTIVE" ,
3841+ slurm_nodes = [
3842+ StaticNode (name = "queue2-st-cr1-1" , nodeaddr = "" , nodehostname = "" , state = "" ),
3843+ StaticNode (name = "queue2-st-cr1-2" , nodeaddr = "" , nodehostname = "" , state = "" ),
3844+ ],
3845+ ),
3846+ },
3847+ [],
3848+ id = "Two inactive non-overlapping partitions" ,
3849+ ),
37943850 ],
37953851)
37963852def test_find_active_nodes (partitions_name_map , expected_nodelist ):
0 commit comments