@@ -1657,37 +1657,71 @@ func TestGetPartitionQueueDAOInfo(t *testing.T) {
16571657 },
16581658 })
16591659 assert .NilError (t , err )
1660- assert .Equal (t , root .template .GetMaxApplications (), root .GetPartitionQueueDAOInfo (true ).TemplateInfo .MaxApplications )
1661- assert .DeepEqual (t , root .template .GetProperties (), root .GetPartitionQueueDAOInfo (true ).TemplateInfo .Properties )
1662- assert .DeepEqual (t , root .template .GetMaxResource ().DAOMap (), root .GetPartitionQueueDAOInfo (true ).TemplateInfo .MaxResource )
1663- assert .DeepEqual (t , root .template .GetGuaranteedResource ().DAOMap (), root .GetPartitionQueueDAOInfo (true ).TemplateInfo .GuaranteedResource )
1660+ rootDAO := root .GetPartitionQueueDAOInfo (true )
1661+ assert .Equal (t , root .template .GetMaxApplications (), rootDAO .TemplateInfo .MaxApplications )
1662+ assert .DeepEqual (t , root .template .GetProperties (), rootDAO .TemplateInfo .Properties )
1663+ assert .DeepEqual (t , root .template .GetMaxResource ().DAOMap (), rootDAO .TemplateInfo .MaxResource )
1664+ assert .DeepEqual (t , root .template .GetGuaranteedResource ().DAOMap (), rootDAO .TemplateInfo .GuaranteedResource )
16641665
16651666 // test resources
16661667 root .maxResource = getResource (t )
16671668 root .guaranteedResource = getResource (t )
1668- assert .DeepEqual (t , root .GetMaxResource ().DAOMap (), root .GetPartitionQueueDAOInfo (true ).MaxResource )
1669- assert .DeepEqual (t , root .GetGuaranteedResource ().DAOMap (), root .GetPartitionQueueDAOInfo (true ).GuaranteedResource )
1670- assert .DeepEqual (t , root .getHeadRoom ().DAOMap (), root .GetPartitionQueueDAOInfo (true ).HeadRoom )
1669+ rootDAO = root .GetPartitionQueueDAOInfo (true )
1670+ assert .DeepEqual (t , root .GetMaxResource ().DAOMap (), rootDAO .MaxResource )
1671+ assert .DeepEqual (t , root .GetGuaranteedResource ().DAOMap (), rootDAO .GuaranteedResource )
1672+ assert .DeepEqual (t , root .getHeadRoom ().DAOMap (), rootDAO .HeadRoom )
16711673
16721674 // test allocatingAcceptedApps
16731675 root .allocatingAcceptedApps = getAllocatingAcceptedApps ()
1676+ rootDAO = root .GetPartitionQueueDAOInfo (true )
16741677 assert .Equal (t , len (root .allocatingAcceptedApps ), 2 , "allocatingAcceptedApps size" )
1675- assert .Equal (t , len (root . GetPartitionQueueDAOInfo ( true ) .AllocatingAcceptedApps ), 1 , "AllocatingAcceptedApps size" )
1676- assert .Equal (t , root . GetPartitionQueueDAOInfo ( true ) .AllocatingAcceptedApps [0 ], appID1 )
1678+ assert .Equal (t , len (rootDAO .AllocatingAcceptedApps ), 1 , "AllocatingAcceptedApps size" )
1679+ assert .Equal (t , rootDAO .AllocatingAcceptedApps [0 ], appID1 )
16771680
16781681 // Test specific queue
1679- _ , err = createManagedQueue (root , "leaf-queue" , false , nil )
1682+ var leaf * Queue
1683+ leaf , err = createManagedQueue (root , "leaf-queue" , false , nil )
16801684 assert .NilError (t , err , "failed to create managed queue" )
1681- assert .Equal (t , root .GetPartitionQueueDAOInfo (false ).QueueName , "root" )
1682- assert .Equal (t , len (root .GetPartitionQueueDAOInfo (false ).Children ), 0 )
1683- assert .Equal (t , len (root .GetPartitionQueueDAOInfo (false ).ChildNames ), 1 )
1684- assert .Equal (t , root .GetPartitionQueueDAOInfo (false ).ChildNames [0 ], "root.leaf-queue" )
1685+ rootDAO = root .GetPartitionQueueDAOInfo (false )
1686+ assert .Equal (t , rootDAO .QueueName , "root" )
1687+ assert .Equal (t , len (rootDAO .Children ), 0 )
1688+ assert .Equal (t , len (rootDAO .ChildNames ), 1 )
1689+ assert .Equal (t , rootDAO .ChildNames [0 ], "root.leaf-queue" )
16851690 // Test hierarchy queue
1686- assert .Equal (t , root .GetPartitionQueueDAOInfo (true ).QueueName , "root" )
1687- assert .Equal (t , len (root .GetPartitionQueueDAOInfo (true ).Children ), 1 )
1688- assert .Equal (t , len (root .GetPartitionQueueDAOInfo (true ).ChildNames ), 1 )
1689- assert .Equal (t , root .GetPartitionQueueDAOInfo (true ).Children [0 ].QueueName , "root.leaf-queue" )
1690- assert .Equal (t , root .GetPartitionQueueDAOInfo (true ).ChildNames [0 ], "root.leaf-queue" )
1691+ rootDAO = root .GetPartitionQueueDAOInfo (true )
1692+ assert .Equal (t , rootDAO .QueueName , "root" )
1693+ assert .Equal (t , len (rootDAO .Children ), 1 )
1694+ assert .Equal (t , len (rootDAO .ChildNames ), 1 )
1695+ assert .Equal (t , rootDAO .Children [0 ].QueueName , "root.leaf-queue" )
1696+ assert .Equal (t , rootDAO .ChildNames [0 ], "root.leaf-queue" )
1697+ // special prop checks
1698+ leaf .properties = map [string ]string {
1699+ configs .ApplicationSortPolicy : policies .FairSortPolicy .String (),
1700+ configs .PreemptionDelay : "3600s" ,
1701+ configs .PreemptionPolicy : policies .FencePreemptionPolicy .String (),
1702+ }
1703+ leaf .UpdateQueueProperties ()
1704+ leafDAO := leaf .GetPartitionQueueDAOInfo (false )
1705+ assert .Equal (t , leafDAO .QueueName , "root.leaf-queue" )
1706+ assert .Equal (t , len (leafDAO .Children ), 0 , "leaf has no children" )
1707+ assert .Equal (t , len (leafDAO .ChildNames ), 0 , "leaf has no children (names)" )
1708+ assert .Equal (t , leafDAO .PreemptionEnabled , true , "preemption should be enabled" )
1709+ assert .Equal (t , leafDAO .IsPreemptionFence , true , "fence should have been set" )
1710+ assert .Equal (t , leafDAO .PreemptionDelay , "1h0m0s" , "incorrect delay returned" )
1711+ assert .Equal (t , leafDAO .SortingPolicy , "fair" , "incorrect policy returned" )
1712+
1713+ // special prop checks
1714+ leaf .properties = map [string ]string {
1715+ configs .ApplicationSortPolicy : policies .FifoSortPolicy .String (),
1716+ configs .PreemptionDelay : "10s" ,
1717+ configs .PreemptionPolicy : policies .DisabledPreemptionPolicy .String (),
1718+ }
1719+ leaf .UpdateQueueProperties ()
1720+ leafDAO = leaf .GetPartitionQueueDAOInfo (false )
1721+ assert .Equal (t , leafDAO .PreemptionEnabled , false , "preemption should not be enabled" )
1722+ assert .Equal (t , leafDAO .IsPreemptionFence , false , "queue should not be a fence" )
1723+ assert .Equal (t , leafDAO .PreemptionDelay , "10s" , "incorrect delay returned" )
1724+ assert .Equal (t , leafDAO .SortingPolicy , "fifo" , "incorrect policy returned" )
16911725}
16921726
16931727func getAllocatingAcceptedApps () map [string ]bool {
0 commit comments