test_make_valuestring_i8seq Subroutine

public subroutine test_make_valuestring_i8seq()

Arguments

None

Calls

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

Source Code

   subroutine test_make_valuestring_i8seq()
      character(len=*), parameter :: EXPECTED = '[4294967296, 2494967296, 4294697296' // ELLIPSIS // ']' // DEFTAG
      integer(kind=I8), parameter :: DEFAULT(4) = [4294967296_I8, 2494967296_I8, 4294697296_I8, 2949672964_I8]
      integer(kind=I8), 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_i8seq