home *** CD-ROM | disk | FTP | other *** search
- * PROGRAM ARTTes Version 1.0 27-Jan-1993
- *
- * PURPOSE
- * TO TEST COMPONENTS OF ARTLib
- *
- * AUTHOR
- * A.R. Thawley
- * 8 The Copse
- * Bannister Green
- * Felsted
- * Essex
- * England
- * CM6 3NP
- * Telephone +44 (0)371 821009, Fax +44 (0)371 821323
- *
- * ----------------------------------------------------------------------
- *
- PROGRAM ARTTes
- DIMENSION X(40), Y(40), XTES(10), YTES(10)
- REAL SECRES
- CHARACTER * 100 NAME
- CHARACTER * 48 QUERY
- CHARACTER * 32 DATSTR
- CHARACTER * 16 FILNAM
- CHARACTER * 13 CURDIR
- CHARACTER * 12 NAMTES
- LOGICAL NAMEOK, OSCLI, XOK, YOK
- DATA XTES/0,.5,1,2,5,8,9.1,10.00,10000.0001,.000000623/
- DATA YTES/0.54,0.985,1.315,2.26,4.51,7.31,-2.89,
- + -.000033,-0.000034,-2.0000351/
- NAMTES = 'VAREAD test'
- QUERY = 'Enter ''Test'' as the file to be opened here: '
- IERLUN = 1
- INLUN = 4
- IF (.NOT. OSCLI('Set F77$DevDir <Obey$Dir>') ) STOP
- CURDIR = '<F77$DevDir>.'
- *
- * TEST FLQUES
- *
- CALL FLQUES(INLUN, QUERY, CURDIR, FILNAM)
- *
- * TEST LENSTR
- *
- ISTR = LENSTR(FILNAM)
- IF (ISTR .EQ. 4) THEN
- PRINT *, 'Function LENSTR satisfactory'
- ELSE
- PRINT *, 'ERROR in Function LENSTR'
- ENDIF
- *
- * TEST IDATE
- *
- CALL IDATE(DATSTR)
- WRITE (*, 1000) DATSTR
- 1000 FORMAT ('Date/time returned from Subroutine IDATE is '/A)
-
- *
- * TEST XYREAD
- *
- NOVAR = 10
- CALL XYREAD(X, Y, NOVAR, INLUN, IERLUN, IERROR)
- IF (IERROR .EQ. 0) THEN
- PRINT *, 'Subroutine XYREAD returned without error'
- XOK = .TRUE.
- YOK = .TRUE.
- IF (NOVAR .NE. 10) PRINT *,
- + 'Subroutine XYREAD did NOT find the expected 10 data pairs'
- DO 100 I = 1, NOVAR
- IF (X(I) .NE. XTES(I)) XOK = .FALSE.
- IF (Y(I) .NE. YTES(I)) YOK = .FALSE.
- 100 CONTINUE
- IF (XOK .AND. YOK) THEN
- PRINT *, 'Subroutine XYREAD read the test data correctly'
- ELSE
- PRINT *,
- 1 'Subroutine XYREAD did NOT read the test data correctly'
- ENDIF
- ELSE
- WRITE (*, 1100) IERROR
- 1100 FORMAT ('Subroutine XYREAD returned error code',I4)
- ENDIF
- *
- * TEST VAREAD
- *
- NAMPOS = 3
- CALL VAREAD(X, NAME, NOVAR, NAMPOS, INLUN, IERLUN, IERROR)
- IF (IERROR .EQ. 0) THEN
- PRINT *, 'Subroutine VAREAD returned without error'
- XOK = .TRUE.
- NAMEOK = .TRUE.
- IF (NOVAR .NE. 10) PRINT *,
- + 'Subroutine VAREAD did NOT find the expected 10 data values'
- DO 200 I = 1, NOVAR
- IF (X(I) .NE. XTES(I)) XOK = .FALSE.
- 200 CONTINUE
- IF (NAME(1:LENSTR(NAME)) .NE. NAMTES) NAMEOK = .FALSE.
- IF (XOK .AND. NAMEOK) THEN
- PRINT *, 'Subroutine VAREAD read the test data correctly'
- ELSE
- PRINT *,
- 1 'Subroutine VAREAD did NOT read the test data correctly'
- ENDIF
- ELSE
- WRITE (*, 1210) IERROR
- 1210 FORMAT ('Subroutine VAREAD returned error code',I4)
- ENDIF
- *
- * TEST SECNDS
- *
- SECRES = SECNDS()
- WRITE (*, 1300) SECRES
- 1300 FORMAT ('Timer result returned from Function SECNDS is ',F12.2)
- *
- END
-