test_count_nodes_depth_1 Subroutine

public subroutine test_count_nodes_depth_1()

Arguments

None

Calls

proc~~test_count_nodes_depth_1~~CallsGraph proc~test_count_nodes_depth_1 test_count_nodes_depth_1 assertequal assertequal proc~test_count_nodes_depth_1->assertequal next next proc~test_count_nodes_depth_1->next none~add_child MeterNode%add_child proc~test_count_nodes_depth_1->none~add_child none~begin~29 MeterNode%begin proc~test_count_nodes_depth_1->none~begin~29 none~get_num_nodes MeterNode%get_num_nodes proc~test_count_nodes_depth_1->none~get_num_nodes none~find_child MeterNode%find_child none~add_child->none~find_child none~get_depth MeterNode%get_depth none~add_child->none~get_depth none~push_back~86 MeterNodeVector%push_back none~add_child->none~push_back~86 get_num_nodes get_num_nodes none~get_num_nodes->get_num_nodes none~begin~283 MeterNodeVector%begin none~get_num_nodes->none~begin~283 none~get~189 MeterNodeVectorIterator%get none~get_num_nodes->none~get~189 none~next~174 MeterNodeVectorIterator%next none~get_num_nodes->none~next~174 none~at~398 MeterNodeVector%at none~find_child->none~at~398 none~capacity~511 MeterNodeVector%capacity none~push_back~86->none~capacity~511 none~resize~172 MeterNodeVector%resize none~push_back~86->none~resize~172 none~at_32~58 MeterNodeVector%at_32 none~at~398->none~at_32~58 none~resize_32~58 MeterNodeVector%resize_32 none~resize~172->none~resize_32~58

Source Code

   subroutine test_count_nodes_depth_1()
      type (MeterNode), target :: node

      class (AbstractMeterNodeIterator), allocatable :: iter
      integer :: count

      node = MeterNode('all', AdvancedMeter(MpiTimerGauge()))
      call node%add_child('a', AdvancedMeter(MpiTimerGauge()))
      call node%add_child('b', AdvancedMeter(MpiTimerGauge()))
      call node%add_child('c', AdvancedMeter(MpiTimerGauge()))

      count = 0
      allocate(iter, source=node%begin())
      do while (iter /= node%end())
         count = count + 1
         call iter%next()
      end do

      @assertEqual(node%get_num_nodes(), count)

      
   end subroutine test_count_nodes_depth_1