**** Merged from MCS ****
[mono-project.git] / mcs / class / Microsoft.VisualBasic / Test / standalone / 6995.vb
blob4136e4ac1f3487a1dad5f5d22a46ca00f31a328d
2 ' Copyright (c) 2002-2003 Mainsoft Corporation.
4 ' Permission is hereby granted, free of charge, to any person obtaining a
5 ' copy of this software and associated documentation files (the "Software"),
6 ' to deal in the Software without restriction, including without limitation
7 ' the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 ' and/or sell copies of the Software, and to permit persons to whom the
9 ' Software is furnished to do so, subject to the following conditions:
11 ' The above copyright notice and this permission notice shall be included in
12 ' all copies or substantial portions of the Software.
14 ' THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 ' IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 ' FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 ' AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 ' LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19 ' FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20 ' DEALINGS IN THE SOFTWARE.
24 Imports Microsoft.VisualBasic
26 Public Class TestClass
27 Public Function Test() As String
28 Dim fput As Integer
29 Dim fget As Integer
31 '// make sure all files are closed
32 Microsoft.VisualBasic.FileSystem.Reset()
35 Dim oDT1_1(3) As String
36 Dim oDT1_2(3) As String
37 Dim oDT2_1 As Boolean = True
38 Dim oDT2_2 As Boolean
39 Dim oDT3_1 As Byte = 1
40 Dim oDT3_2 As Byte
41 Dim oDT4_1 As Short = 100
42 Dim oDT4_2 As Short
43 Dim oDT5_1 As Integer = 1000
44 Dim oDT5_2 As Integer
45 Dim oDT6_1 As Long = 100000
46 Dim oDT6_2 As Long
47 Dim oDT7_1 As Char = "c"c
48 Dim oDT7_2 As Char
49 Dim oDT8_1 As Single = 2.2
50 Dim oDT8_2 As Single
51 Dim oDT9_1 As Double = 8.8
52 Dim oDT9_2 As Double
53 Dim oDT10_1 As Decimal = 10000000
54 Dim oDT10_2 As Decimal
55 Dim oDT11_1 As String = "zzz"
56 Dim oDT11_2 As String
57 Dim oDT12_1 As Date = #5/31/1993#
58 Dim oDT12_2 As Date
60 oDT1_1(0) = "abc"
61 oDT1_1(1) = "def"
62 oDT1_1(2) = "ghi"
63 oDT1_1(3) = "jkl"
65 fput = FreeFile()
66 'output string array
67 'record len = (2 + 8 * NumberOfDimensions) + (dim1 size * ... * dimN size * size of data)
68 'record len = (2 + 8 * 1) + (4 * 3) = 22
69 FileOpen(fput, System.IO.Directory.GetCurrentDirectory() + "\data\6995.txt", OpenMode.Random)
70 FilePutObject(fput, oDT1_1)
71 FilePutObject(fput, oDT2_1)
72 FilePutObject(fput, oDT3_1)
73 FilePutObject(fput, oDT4_1)
74 FilePutObject(fput, oDT5_1)
75 FilePutObject(fput, oDT6_1)
76 FilePutObject(fput, oDT7_1)
77 FilePutObject(fput, oDT8_1)
78 FilePutObject(fput, oDT9_1)
79 FilePutObject(fput, oDT10_1)
80 FilePutObject(fput, oDT11_1)
81 FilePutObject(fput, oDT12_1)
82 FileClose(fput)
84 oDT1_2(0) = "xxx"
85 oDT1_2(1) = "xxx"
86 oDT1_2(2) = "xxx"
87 oDT1_2(3) = "xxx"
89 fget = FreeFile()
90 'input string array
91 'record len = (2 + string size=2) * array size
92 FileOpen(fget, System.IO.Directory.GetCurrentDirectory() + "\data\6995.txt", OpenMode.Random)
93 FileGetObject(fget, oDT1_2)
94 FileGetObject(fget, oDT2_2)
95 FileGetObject(fget, oDT3_2)
96 FileGetObject(fget, oDT4_2)
97 FileGetObject(fget, oDT5_2)
98 FileGetObject(fget, oDT6_2)
99 FileGetObject(fget, oDT7_2)
100 FileGetObject(fget, oDT8_2)
101 FileGetObject(fget, oDT9_2)
102 FileGetObject(fget, oDT10_2)
103 FileGetObject(fget, oDT11_2)
104 FileGetObject(fget, oDT12_2)
105 FileClose(fget)
107 If oDT1_1(0) <> oDT1_2(0) Then Return "failed"
108 If oDT1_1(1) <> oDT1_2(1) Then Return "failed"
109 If oDT1_1(2) <> oDT1_2(2) Then Return "failed"
110 If oDT1_1(3) <> oDT1_2(3) Then Return "failed"
112 If oDT2_1 <> oDT2_2 Then Return "failed"
113 If oDT3_1 <> oDT3_2 Then Return "failed"
114 If oDT4_1 <> oDT4_2 Then Return "failed"
115 If oDT5_1 <> oDT5_2 Then Return "failed"
116 If oDT6_1 <> oDT6_2 Then Return "failed"
117 If oDT7_1 <> oDT7_2 Then Return "failed"
118 If oDT8_1 <> oDT8_2 Then Return "failed"
119 If oDT9_1 <> oDT9_2 Then Return "failed"
120 If oDT10_1 <> oDT10_2 Then Return "failed"
121 If oDT11_1 <> oDT11_2 Then Return "failed"
122 If oDT12_1 <> oDT12_2 Then Return "failed"
124 Return "success"
126 End Function
127 End Class