test_make_valuestring_i4seq Subroutine

public subroutine test_make_valuestring_i4seq()

Arguments

None

Calls

proc~~test_make_valuestring_i4seq~~CallsGraph proc~test_make_valuestring_i4seq test_make_valuestring_i4seq assertequal assertequal proc~test_make_valuestring_i4seq->assertequal interface~get_value get_value proc~test_make_valuestring_i4seq->interface~get_value proc~valuestring_mismatch valuestring_mismatch proc~test_make_valuestring_i4seq->proc~valuestring_mismatch

Source Code

   subroutine test_make_valuestring_i4seq()
      character(len=*), parameter :: EXPECTED = '[613, 361, 631' // ELLIPSIS // ']' // DEFTAG
      integer(kind=I4), parameter :: DEFAULT(5) = [613, 361, 631, 136, 163]
      integer(kind=I4), allocatable :: value(:)
      type(HConfigParams) :: params
      integer :: status
      character(len=:), allocatable :: valuestring
      character(len=:), allocatable :: error_message

      params = HConfigParams(hconfig, 'label')
      call get_value(params, value, default=DEFAULT, valuestring=valuestring, rc=status)
      @assertEqual(0, status, ERROR_GET_FAILED)
      if(EXPECTED /= valuestring) error_message = valuestring_mismatch(valuestring, EXPECTED)
      @assertEqual(EXPECTED, valuestring, error_message)

   end subroutine test_make_valuestring_i4seq