test_get_logical Subroutine

public subroutine test_get_logical()

Arguments

None

Calls

proc~~test_get_logical~~CallsGraph proc~test_get_logical test_get_logical ESMF_HConfigAdd ESMF_HConfigAdd proc~test_get_logical->ESMF_HConfigAdd assertequal assertequal proc~test_get_logical->assertequal asserttrue asserttrue proc~test_get_logical->asserttrue interface~get_value get_value proc~test_get_logical->interface~get_value

Source Code

   subroutine test_get_logical()
      character(len=*), parameter :: LABEL = 'p_or_np'
      logical, parameter :: EXPECTED = .TRUE.
      logical :: actual
      type(HConfigParams) :: params
      logical :: found
      integer :: status

      call ESMF_HConfigAdd(hconfig, EXPECTED, addKeyString=LABEL, rc=status)
      @assertEqual(0, status, ERROR_ADD_FAIL)
      params = HConfigParams(hconfig, LABEL, check_value_set=.TRUE.)
      call get_value(params, actual, rc=status)
      found = params%value_set
      @assertEqual(0, status, ERROR_GET_FAILED)
      @assertTrue(found, ERROR_NOT_FOUND // LABEL)
      @assertTrue((actual .eqv. EXPECTED), ERROR_MISMATCH)

   end subroutine test_get_logical