Blame test/mpi/f77/info/infotestf.f

Packit 0848f5
C -*- Mode: Fortran; -*- 
Packit 0848f5
C
Packit 0848f5
C  (C) 2003 by Argonne National Laboratory.
Packit 0848f5
C      See COPYRIGHT in top-level directory.
Packit 0848f5
C
Packit 0848f5
C Simple info test 
Packit 0848f5
       program main
Packit 0848f5
       implicit none
Packit 0848f5
       include 'mpif.h'
Packit 0848f5
       integer i1, i2
Packit 0848f5
       integer i, errs, ierr
Packit 0848f5
       integer valuelen
Packit 0848f5
       parameter (valuelen=64)
Packit 0848f5
       character*(valuelen) value
Packit 0848f5
       logical flag
Packit 0848f5
C
Packit 0848f5
       errs = 0
Packit 0848f5
Packit 0848f5
       call MTest_Init( ierr )
Packit 0848f5
Packit 0848f5
       call mpi_info_create( i1, ierr )
Packit 0848f5
       call mpi_info_create( i2, ierr )
Packit 0848f5
Packit 0848f5
       call mpi_info_set( i1, "key1", "value1", ierr )
Packit 0848f5
       call mpi_info_set( i2, "key2", "value2", ierr )
Packit 0848f5
Packit 0848f5
       call mpi_info_get( i1, "key2", valuelen, value, flag, ierr )
Packit 0848f5
       if (flag) then
Packit 0848f5
          print *, "Found key2 in info1"
Packit 0848f5
          errs = errs + 1
Packit 0848f5
       endif
Packit 0848f5
Packit 0848f5
       call MPI_Info_get( i1, "key1", 64, value, flag, ierr )
Packit 0848f5
       if (.not. flag ) then
Packit 0848f5
          print *, "Did not find key1 in info1"
Packit 0848f5
          errs = errs + 1
Packit 0848f5
       else 
Packit 0848f5
          if (value .ne. "value1") then
Packit 0848f5
             print *, "Found wrong value (", value, "), expected value1"
Packit 0848f5
             errs = errs + 1
Packit 0848f5
          else
Packit 0848f5
C     check for trailing blanks             
Packit 0848f5
             do i=7,valuelen
Packit 0848f5
                if (value(i:i) .ne. " ") then
Packit 0848f5
                   print *, "Found non blank in info value"
Packit 0848f5
                   errs = errs + 1
Packit 0848f5
                endif
Packit 0848f5
             enddo
Packit 0848f5
          endif
Packit 0848f5
       endif
Packit 0848f5
Packit 0848f5
       call mpi_info_free( i1, ierr )
Packit 0848f5
       call mpi_info_free( i2, ierr )
Packit 0848f5
Packit 0848f5
       call MTest_Finalize( errs )
Packit 0848f5
       call MPI_Finalize( ierr )
Packit 0848f5
       end