test_connect_unique_mirror Subroutine

public subroutine test_connect_unique_mirror()

Arguments

None

Calls

proc~~test_connect_unique_mirror~~CallsGraph proc~test_connect_unique_mirror test_connect_unique_mirror assert_that assert_that proc~test_connect_unique_mirror->assert_that false false proc~test_connect_unique_mirror->false none~can_connect_to~11 BracketSpec%can_connect_to proc~test_connect_unique_mirror->none~can_connect_to~11 none~connect_to~3 BracketSpec%connect_to proc~test_connect_unique_mirror->none~connect_to~3 none~create~3 BracketSpec%create proc~test_connect_unique_mirror->none~create~3 true true proc~test_connect_unique_mirror->true none~can_connect_to FieldSpec%can_connect_to none~can_connect_to~11->none~can_connect_to proc~mapl_return MAPL_Return none~can_connect_to~11->proc~mapl_return none~connect_to~3->none~can_connect_to~11 field_specs field_specs none~connect_to~3->field_specs interface~mapl_assert MAPL_Assert none~connect_to~3->interface~mapl_assert none~connect_to FieldSpec%connect_to none~connect_to~3->none~connect_to none~create FieldSpec%create none~connect_to~3->none~create none~destroy~7 BracketSpec%destroy none~connect_to~3->none~destroy~7 none~connect_to~3->proc~mapl_return proc~mapl_verify MAPL_Verify none~connect_to~3->proc~mapl_verify esmf_fieldbundlecreate esmf_fieldbundlecreate none~create~3->esmf_fieldbundlecreate none~create~3->proc~mapl_return none~create~3->proc~mapl_verify none~can_connect_to->proc~mapl_return ftn_begin ftn_begin none~can_connect_to->ftn_begin ftn_end ftn_end none~can_connect_to->ftn_end next next none~can_connect_to->next none~can_connect_to~18 StateItemAspect%can_connect_to none~can_connect_to->none~can_connect_to~18 none~get_aspect_order StateItemSpec%get_aspect_order none~can_connect_to->none~get_aspect_order none~get_aspect~2 StateItemSpec%get_aspect none~can_connect_to->none~get_aspect~2 of of none~can_connect_to->of none~connect_to->interface~mapl_assert none~connect_to->none~can_connect_to none~connect_to->proc~mapl_return none~connect_to->proc~mapl_verify none~destroy FieldSpec%destroy none~connect_to->none~destroy none~connect_to->none~get_aspect~2 none~set_aspect~2 StateItemSpec%set_aspect none~connect_to->none~set_aspect~2 none~create->proc~mapl_return none~create->proc~mapl_verify esmf_fieldemptycreate esmf_fieldemptycreate none~create->esmf_fieldemptycreate none~destroy~7->proc~mapl_return none~destroy~7->proc~mapl_verify esmf_fieldbundledestroy esmf_fieldbundledestroy none~destroy~7->esmf_fieldbundledestroy none~destroy~7->none~destroy at at proc~mapl_return->at insert insert proc~mapl_return->insert proc~mapl_throw_exception MAPL_throw_exception proc~mapl_return->proc~mapl_throw_exception proc~mapl_verify->proc~mapl_throw_exception

Source Code

   subroutine test_connect_unique_mirror()
      type(BracketSpec) :: spec_1, spec_1b, spec_2, spec_mirror
      type(ActualConnectionPt) :: actual_pt

      integer :: status

      spec_1 = BracketSpec( &
           field_spec=FieldSpec(geom=geom, vertical_grid=BasicVerticalGrid(), &
           vertical_dim_spec=VerticalDimSpec(), &
           typekind=ESMF_TYPEKIND_R4, &
           ungridded_dims = UngriddedDims(), &
           standard_name='A', long_name='AA', units='barn'), &
           bracket_size=1)
      spec_1b = spec_1

      spec_2 = BracketSpec( &
           field_spec=FieldSpec(geom=geom, vertical_grid=BasicVerticalGrid(), &
           vertical_dim_spec=VerticalDimSpec(), &
           typekind=ESMF_TYPEKIND_R4, &
           ungridded_dims = UngriddedDims(), &
           standard_name='A', long_name='AA', units='barn'), &
           bracket_size=2)
      spec_mirror = BracketSpec( &
           field_spec=FieldSpec(geom=geom, vertical_grid=BasicVerticalGrid(), &
           vertical_dim_spec=VerticalDimSpec(), &
           typekind=ESMF_TYPEKIND_R4, &
           ungridded_dims = UngriddedDims(), &
           standard_name='A', long_name='AA', units='barn'))

      call spec_mirror%create(rc=status)
      @assert_that(status, is(0))
      call spec_mirror%connect_to(spec_1, actual_pt, rc=status)
      @assert_that(status, is(0))

      @assert_that(spec_mirror%can_connect_to(spec_2), is(false()))
      @assert_that(spec_mirror%can_connect_to(spec_1b), is(true()))

   end subroutine test_connect_unique_mirror