diff options
author | Tristan Gingold | 2013-12-20 04:48:54 +0100 |
---|---|---|
committer | Tristan Gingold | 2013-12-20 04:48:54 +0100 |
commit | 6c3f709174e8e4d5411f851cedb7d84c38d3b04a (patch) | |
tree | bd12c79c71a2ee65899a9ade9919ec2045addef8 /testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read | |
parent | bd4aff0f670351c0652cf24e9b04361dc0e3a01c (diff) | |
download | ghdl-6c3f709174e8e4d5411f851cedb7d84c38d3b04a.tar.gz ghdl-6c3f709174e8e4d5411f851cedb7d84c38d3b04a.tar.bz2 ghdl-6c3f709174e8e4d5411f851cedb7d84c38d3b04a.zip |
Import vests testsuite
Diffstat (limited to 'testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read')
6 files changed, 182 insertions, 0 deletions
diff --git a/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_array_read.in b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_array_read.in new file mode 100644 index 0000000..6292c45 --- /dev/null +++ b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_array_read.in @@ -0,0 +1 @@ +'1', 'A', '$', '+' diff --git a/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_array_read.vhdl b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_array_read.vhdl new file mode 100644 index 0000000..1358d40 --- /dev/null +++ b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_array_read.vhdl @@ -0,0 +1,58 @@ + +-- Copyright (C) Clifton Labs. All rights reserved. + +-- CLIFTON LABS MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE +-- SUITABILITY OF THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT +-- NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +-- PARTICULAR PURPOSE, OR NON-INFRINGEMENT. CLIFTON LABS SHALL NOT BE +-- LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, RESULT +-- OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. + +-- By using or copying this Software, Licensee agrees to abide by the +-- intellectual property laws, and all other applicable laws of the U.S., +-- and the terms of this license. + +-- You may modify, distribute, and use the software contained in this +-- package under the terms of the GNU General Public License as published +-- by the Free Software Foundation; version 2 of the License. + +-- You should have received a copy of the GNU General Public License along +-- with this software; if not, write to the Free Software Foundation, Inc., +-- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +entity character_array_read is +end character_array_read; + +architecture test0 of character_array_read is + type character_array is array (natural range <>) of character; + type character_array_file is file of character_array; + signal k : integer := 0; +begin + doit: process + file filein : character_array_file open read_mode is "character_array_read.in"; + variable v : character_array(0 to 3); + variable len : natural; + begin + assert(endfile(filein) = false) + report "End of file reached before expected." + severity failure; + + read(filein,v,len); + + assert(len = 4) + report "FAILED TEST: character_array_read. Wrong length." + severity failure; + + assert (v = ('1','a','$','+')) + report "FAILED TEST: character_array_read. Incorrect characters read." + severity failure; + + assert(endfile(filein)) + severity failure; + + report "PASSED TEST: character_array_read." + severity note; + wait; + end process; + +end test0; diff --git a/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_read.in b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_read.in new file mode 100644 index 0000000..f3727af --- /dev/null +++ b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_read.in @@ -0,0 +1,4 @@ +'1' +'A' +'$' +'+' diff --git a/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_read.vhdl b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_read.vhdl new file mode 100644 index 0000000..7acb135 --- /dev/null +++ b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/character_read.vhdl @@ -0,0 +1,58 @@ + +-- Copyright (C) Clifton Labs. All rights reserved. + +-- CLIFTON LABS MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE +-- SUITABILITY OF THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT +-- NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +-- PARTICULAR PURPOSE, OR NON-INFRINGEMENT. CLIFTON LABS SHALL NOT BE +-- LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, RESULT +-- OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. + +-- By using or copying this Software, Licensee agrees to abide by the +-- intellectual property laws, and all other applicable laws of the U.S., +-- and the terms of this license. + +-- You may modify, distribute, and use the software contained in this +-- package under the terms of the GNU General Public License as published +-- by the Free Software Foundation; version 2 of the License. + +-- You should have received a copy of the GNU General Public License along +-- with this software; if not, write to the Free Software Foundation, Inc., +-- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +entity character_read is +end character_read; + +architecture test0 of character_read is + type character_file is file of character; + signal k : integer := 0; +begin + doit: process + file filein : character_file open read_mode is "character_read.in"; + variable v : character; + begin + assert(endfile(filein) = false) + report "End of file reached before expected." + severity failure; + + read(filein,v); + + assert(v = '1') severity failure; + + read(filein,v); + assert(v = 'A') severity failure; + + read(filein,v); + assert(v = '$') severity failure; + + read(filein,v); + assert(v = '+') severity failure; + + assert(endfile(filein)); + + report "PASSED TEST: character_read." + severity NOTE; + wait; + end process; + +end test0; diff --git a/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/simple-read.in b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/simple-read.in new file mode 100644 index 0000000..94ebaf9 --- /dev/null +++ b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/simple-read.in @@ -0,0 +1,4 @@ +1 +2 +3 +4 diff --git a/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/simple-read.vhdl b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/simple-read.vhdl new file mode 100644 index 0000000..0ce2968 --- /dev/null +++ b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/textio/read/simple-read.vhdl @@ -0,0 +1,57 @@ + +-- Copyright (C) Clifton Labs. All rights reserved. + +-- CLIFTON LABS MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE +-- SUITABILITY OF THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT +-- NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +-- PARTICULAR PURPOSE, OR NON-INFRINGEMENT. CLIFTON LABS SHALL NOT BE +-- LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, RESULT +-- OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. + +-- By using or copying this Software, Licensee agrees to abide by the +-- intellectual property laws, and all other applicable laws of the U.S., +-- and the terms of this license. + +-- You may modify, distribute, and use the software contained in this +-- package under the terms of the GNU General Public License as published +-- by the Free Software Foundation; version 2 of the License. + +-- You should have received a copy of the GNU General Public License along +-- with this software; if not, write to the Free Software Foundation, Inc., +-- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +entity simple_read is +end simple_read; + +use std.textio.all; + +architecture only of simple_read is + type integer_file is file of integer; +begin -- only + doit: process + file infile : integer_file open read_mode is "simple-read.in"; + variable v : integer; + begin -- process + + assert( not(endfile( infile )) ); + + read( infile, v ); + assert( v = 1 ); + + read( infile, v ); + assert( v = 2 ); + + read( infile, v ); + assert( v = 3 ); + + read( infile, v ); + assert( v = 4 ); + + assert( endfile( infile ) ); + + report "PASSED" + severity NOTE; + + wait; + end process; +end only; |