test_find_closest_simple Subroutine

public subroutine test_find_closest_simple()

Arguments

None

Calls

proc~~test_find_closest_simple~~CallsGraph proc~test_find_closest_simple test_find_closest_simple anyexceptions anyexceptions proc~test_find_closest_simple->anyexceptions assert_that assert_that proc~test_find_closest_simple->assert_that none~add_primary_spec StateRegistry%add_primary_spec proc~test_find_closest_simple->none~add_primary_spec none~find_closest_extension ExtensionFamily%find_closest_extension proc~test_find_closest_simple->none~find_closest_extension none~get_extension_family StateRegistry%get_extension_family proc~test_find_closest_simple->none~get_extension_family none~get_primary ExtensionFamily%get_primary proc~test_find_closest_simple->none~get_primary sourcelocation sourcelocation proc~test_find_closest_simple->sourcelocation true true proc~test_find_closest_simple->true none~add_family StateRegistry%add_family none~add_primary_spec->none~add_family none~back~50 StateItemExtensionVector%back none~add_primary_spec->none~back~50 none~push_back~49 StateItemExtensionVector%push_back none~add_primary_spec->none~push_back~49 proc~mapl_return MAPL_Return none~add_primary_spec->proc~mapl_return proc~mapl_verify MAPL_Verify none~add_primary_spec->proc~mapl_verify none~find_closest_extension->none~get_primary make_adapters make_adapters none~find_closest_extension->make_adapters none~front~58 StateItemExtensionPtrVector%front none~find_closest_extension->none~front~58 none~get_extensions ExtensionFamily%get_extensions none~find_closest_extension->none~get_extensions none~get_spec~2 StateItemExtension%get_spec none~find_closest_extension->none~get_spec~2 none~match~35 StateItemAdapter%match none~find_closest_extension->none~match~35 none~of~206 StateItemExtensionPtrVector%of none~find_closest_extension->none~of~206 none~push_back~58 StateItemExtensionPtrVector%push_back none~find_closest_extension->none~push_back~58 none~find_closest_extension->proc~mapl_return none~find_closest_extension->proc~mapl_verify none~at~107 VirtualPtFamilyMap%at none~get_extension_family->none~at~107 none~get_extension_family->proc~mapl_return none~get_extension_family->proc~mapl_verify interface~mapl_assert MAPL_Assert none~get_primary->interface~mapl_assert none~get_primary->none~front~58 none~get_primary->proc~mapl_return

Source Code

   subroutine test_find_closest_simple()
      type(StateRegistry), target :: r
      type(VirtualConnectionPt) :: v_pt
      type(ExtensionFamily), pointer :: family
      type(StateItemExtension), pointer :: primary
      type(MockItemSpec) :: goal_spec
      type(StateItemExtension), pointer :: closest

      integer :: status
      r = StateRegistry('A')
      v_pt = VirtualConnectionPt(state_intent='export', short_name='E1')

      call r%add_primary_spec(v_pt, MockItemSpec('E', subtype='A'))

      family => r%get_extension_family(v_pt, _RC)

      primary => family%get_primary(_RC)
      goal_spec = MockItemSpec('E')
      closest => family%find_closest_extension(goal_spec,_RC)

      @assert_that(associated(closest, primary), is(true()))
      
   end subroutine test_find_closest_simple