2 ' Copyright 2011 Jacek Caban for CodeWeavers
4 ' This library is free software; you can redistribute it and/or
5 ' modify it under the terms of the GNU Lesser General Public
6 ' License as published by the Free Software Foundation; either
7 ' version 2.1 of the License, or (at your option) any later version.
9 ' This library is distributed in the hope that it will be useful,
10 ' but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 ' Lesser General Public License for more details.
14 ' You should have received a copy of the GNU Lesser General Public
15 ' License along with this library; if not, write to the Free Software
16 ' Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
26 Call ok(vbSunday
= 1, "vbSunday = " & vbSunday
)
27 Call ok(getVT(vbSunday
) = "VT_I2", "getVT(vbSunday) = " & getVT(vbSunday
))
28 Call ok(vbMonday
= 2, "vbMonday = " & vbMonday
)
29 Call ok(getVT(vbMonday
) = "VT_I2", "getVT(vbMonday) = " & getVT(vbMonday
))
30 Call ok(vbTuesday
= 3, "vbTuesday = " & vbTuesday
)
31 Call ok(getVT(vbTuesday
) = "VT_I2", "getVT(vbTuesday) = " & getVT(vbTuesday
))
32 Call ok(vbWednesday
= 4, "vbWednesday = " & vbWednesday
)
33 Call ok(getVT(vbWednesday
) = "VT_I2", "getVT(vbWednesday) = " & getVT(vbWednesday
))
34 Call ok(vbThursday
= 5, "vbThursday = " & vbThursday
)
35 Call ok(getVT(vbThursday
) = "VT_I2", "getVT(vbThursday) = " & getVT(vbThursday
))
36 Call ok(vbFriday
= 6, "vbFriday = " & vbFriday
)
37 Call ok(getVT(vbFriday
) = "VT_I2", "getVT(vbFriday) = " & getVT(vbFriday
))
38 Call ok(vbSaturday
= 7, "vbSaturday = " & vbSaturday
)
39 Call ok(getVT(vbSaturday
) = "VT_I2", "getVT(vbSaturday) = " & getVT(vbSaturday
))
41 Sub TestConstant(name
, val
, exval
)
42 Call ok(val
= exval
, name
& " = " & val
& " expected " & exval
)
43 Call ok(getVT(val
) = "VT_I2*", "getVT(" & name
& ") = " & getVT(val
))
46 Sub TestConstantI4(name
, val
, exval
)
47 Call ok(val
= exval
, name
& " = " & val
& " expected " & exval
)
48 Call ok(getVT(val
) = "VT_I4*", "getVT(" & name
& ") = " & getVT(val
))
51 Sub TestConstantBSTR(name
, val
, exval
)
52 Call ok(val
= exval
, name
& " = " & val
& " expected " & exval
)
53 Call ok(getVT(val
) = "VT_BSTR*", "getVT(" & name
& ") = " & getVT(val
))
56 TestConstant
"vbEmpty", vbEmpty
, 0
57 TestConstant
"vbNull", vbNull
, 1
58 TestConstant
"vbLong", vbLong
, 3
59 TestConstant
"vbSingle", vbSingle
, 4
60 TestConstant
"vbDouble", vbDouble
, 5
61 TestConstant
"vbCurrency", vbCurrency
, 6
62 TestConstant
"vbDate", vbDate
, 7
63 TestConstant
"vbString", vbString
, 8
64 TestConstant
"vbObject", vbObject
, 9
65 TestConstant
"vbError", vbError
, 10
66 TestConstant
"vbBoolean", vbBoolean
, 11
67 TestConstant
"vbVariant", vbVariant
, 12
68 TestConstant
"vbDataObject", vbDataObject
, 13
69 TestConstant
"vbDecimal", vbDecimal
, 14
70 TestConstant
"vbByte", vbByte
, 17
71 TestConstant
"vbArray", vbArray
, 8192
72 TestConstant
"vbCritical", vbCritical
, 16
73 TestConstant
"vbQuestion", vbQuestion
, 32
74 TestConstant
"vbExclamation", vbExclamation
, 48
75 TestConstant
"vbInformation", vbInformation
, 64
76 TestConstant
"vbDefaultButton1", vbDefaultButton1
, 0
77 TestConstant
"vbDefaultButton2", vbDefaultButton2
, 256
78 TestConstant
"vbDefaultButton3", vbDefaultButton3
, 512
79 TestConstant
"vbDefaultButton4", vbDefaultButton4
, 768
80 TestConstant
"vbApplicationModal", vbApplicationModal
, 0
81 TestConstant
"vbSystemModal", vbSystemModal
, 4096
82 TestConstant
"vbUseSystem", vbUseSystem
, 0
83 TestConstant
"vbUseSystemDayOfWeek", vbUseSystemDayOfWeek
, 0
84 TestConstant
"vbFirstJan1", vbFirstJan1
, 1
85 TestConstant
"vbFirstFourDays", vbFirstFourDays
, 2
86 TestConstant
"vbFirstFullWeek", vbFirstFullWeek
, 3
87 TestConstant
"vbTrue", vbTrue
, -1
88 TestConstant
"vbFalse", vbFalse
, 0
89 TestConstantI4
"vbMsgBoxHelpButton", vbMsgBoxHelpButton
, 16384
90 TestConstantI4
"vbMsgBoxSetForeground", vbMsgBoxSetForeground
, 65536
91 TestConstantI4
"vbMsgBoxRight", vbMsgBoxRight
, 524288
92 TestConstantI4
"vbMsgBoxRtlReading", vbMsgBoxRtlReading
, 1048576
93 TestConstant
"vbUseDefault", vbUseDefault
, -2
94 TestConstant
"vbBinaryCompare", vbBinaryCompare
, 0
95 TestConstant
"vbTextCompare", vbTextCompare
, 1
96 TestConstant
"vbDatabaseCompare", vbDatabaseCompare
, 2
97 TestConstant
"vbGeneralDate", vbGeneralDate
, 0
98 TestConstant
"vbLongDate", vbLongDate
, 1
99 TestConstant
"vbShortDate", vbShortDate
, 2
100 TestConstant
"vbLongTime", vbLongTime
, 3
101 TestConstant
"vbShortTime", vbShortTime
, 4
102 TestConstantI4
"vbObjectError", vbObjectError
, &h80040000
&
103 TestConstantI4
"vbBlack", vbBlack
, 0
104 TestConstantI4
"vbBlue", vbBlue
, &hff0000
&
105 TestConstantI4
"vbCyan", vbCyan
, &hffff00
&
106 TestConstantI4
"vbGreen", vbGreen
, &h00ff00
&
107 TestConstantI4
"vbMagenta", vbMagenta
, &hff00ff
&
108 TestConstantI4
"vbRed", vbRed
, &h0000ff
&
109 TestConstantI4
"vbWhite", vbWhite
, &hffffff
&
110 TestConstantI4
"vbYellow", vbYellow
, &h00ffff
&
111 TestConstantBSTR
"vbCr", vbCr
, Chr(13)
112 TestConstantBSTR
"vbCrLf", vbCrLf
, Chr(13)&Chr(10)
113 TestConstantBSTR
"vbNewLine", vbNewLine
, Chr(13)&Chr(10)
114 TestConstantBSTR
"vbFormFeed", vbFormFeed
, Chr(12)
115 TestConstantBSTR
"vbLf", vbLf
, Chr(10)
116 TestConstantBSTR
"vbNullChar", vbNullChar
, Chr(0)
117 TestConstantBSTR
"vbNullString", vbNullString
, ""
118 TestConstantBSTR
"vbTab", vbTab
, chr(9)
119 TestConstantBSTR
"vbVerticalTab", vbVerticalTab
, chr(11)
121 Sub TestCStr(arg
, exval
)
124 Call ok(getVT(x
) = "VT_BSTR*", "getVT(x) = " & getVT(x
))
125 Call ok(x
= exval
, "CStr(" & arg
& ") = " & x
)
128 TestCStr
"test", "test"
130 if isEnglishLang
then TestCStr
3.5, "3.5"
131 if isEnglishLang
then TestCStr
true, "True"
133 Call ok(getVT(Chr(120)) = "VT_BSTR", "getVT(Chr(120)) = " & getVT(Chr(120)))
134 Call ok(getVT(Chr(255)) = "VT_BSTR", "getVT(Chr(255)) = " & getVT(Chr(255)))
135 Call ok(Chr(120) = "x", "Chr(120) = " & Chr(120))
136 Call ok(Chr(0) <> "", "Chr(0) = """"")
137 Call ok(Chr(120.5) = "x", "Chr(120.5) = " & Chr(120.5))
138 Call ok(Chr(119.5) = "x", "Chr(119.5) = " & Chr(119.5))
140 Call ok(isObject(new EmptyClass
), "isObject(new EmptyClass) is not true?")
141 Set x
= new EmptyClass
142 Call ok(isObject(x
), "isObject(x) is not true?")
143 Call ok(isObject(Nothing), "isObject(Nothing) is not true?")
144 Call ok(not isObject(true), "isObject(true) is true?")
145 Call ok(not isObject(4), "isObject(4) is true?")
146 Call ok(not isObject("x"), "isObject(""x"") is true?")
147 Call ok(not isObject(Null
), "isObject(Null) is true?")
149 Call ok(not isEmpty(new EmptyClass
), "isEmpty(new EmptyClass) is true?")
150 Set x
= new EmptyClass
151 Call ok(not isEmpty(x
), "isEmpty(x) is true?")
153 Call ok(isEmpty(x
), "isEmpty(x) is not true?")
154 Call ok(isEmpty(empty
), "isEmpty(empty) is not true?")
155 Call ok(not isEmpty(Nothing), "isEmpty(Nothing) is not true?")
156 Call ok(not isEmpty(true), "isEmpty(true) is true?")
157 Call ok(not isEmpty(4), "isEmpty(4) is true?")
158 Call ok(not isEmpty("x"), "isEmpty(""x"") is true?")
159 Call ok(not isEmpty(Null
), "isEmpty(Null) is true?")
161 Call ok(not isNull(new EmptyClass
), "isNull(new EmptyClass) is true?")
162 Set x
= new EmptyClass
163 Call ok(not isNull(x
), "isNull(x) is true?")
165 Call ok(isNull(x
), "isNull(x) is not true?")
166 Call ok(not isNull(empty
), "isNull(empty) is true?")
167 Call ok(not isNull(Nothing), "isNull(Nothing) is true?")
168 Call ok(not isNull(true), "isNull(true) is true?")
169 Call ok(not isNull(4), "isNull(4) is true?")
170 Call ok(not isNull("x"), "isNull(""x"") is true?")
171 Call ok(isNull(Null
), "isNull(Null) is not true?")
173 Call ok(getVT(err
) = "VT_DISPATCH", "getVT(err) = " & getVT(err
))
176 Call ok(hex(x
) = ex
, "hex(" & x
& ") = " & hex(x
) & " expected " & ex
)
182 TestHex
&hdeadbeef
&, "DEADBEEF"
185 TestHex
-934859845, "C8472BBB"
188 Call ok(getVT(hex(null
)) = "VT_NULL", "getVT(hex(null)) = " & getVT(hex(null
)))
189 Call ok(getVT(hex(empty
)) = "VT_BSTR", "getVT(hex(empty)) = " & getVT(hex(empty
)))
191 x
= InStr(1, "abcd", "bc")
192 Call ok(x
= 2, "InStr returned " & x
)
194 x
= InStr("abcd", "bc")
195 Call ok(x
= 2, "InStr returned " & x
)
197 x
= InStr("abc", "bc")
198 Call ok(x
= 2, "InStr returned " & x
)
200 x
= InStr("abcbc", "bc")
201 Call ok(x
= 2, "InStr returned " & x
)
203 x
= InStr("bcabc", "bc")
204 Call ok(x
= 1, "InStr returned " & x
)
206 x
= InStr(3, "abcd", "bc")
207 Call ok(x
= 0, "InStr returned " & x
)
209 x
= InStr("abcd", "bcx")
210 Call ok(x
= 0, "InStr returned " & x
)
212 x
= InStr(5, "abcd", "bc")
213 Call ok(x
= 0, "InStr returned " & x
)
217 Call ok(x
= 2, "InStr returned " & x
)
219 x
= InStr("abcd", null
)
220 Call ok(isNull(x
), "InStr returned " & x
)
221 x
= InStr(null
, "abcd")
222 Call ok(isNull(x
), "InStr returned " & x
)
223 x
= InStr(2, null
, "abcd")
224 Call ok(isNull(x
), "InStr returned " & x
)
226 x
= InStr(1.3, "abcd", "bc")
227 Call ok(x
= 2, "InStr returned " & x
)
229 x
= InStr(2.3, "abcd", "bc")
230 Call ok(x
= 2, "InStr returned " & x
)
232 x
= InStr(2.6, "abcd", "bc")
233 Call ok(x
= 0, "InStr returned " & x
)
235 Sub TestMid(str
, start
, len
, ex
)
236 x
= Mid(str
, start
, len
)
237 Call ok(x
= ex
, "Mid(" & str
& ", " & start
& ", " & len
& ") = " & x
& " expected " & ex
)
240 Sub TestMid2(str
, start
, ex
)
242 Call ok(x
= ex
, "Mid(" & str
& ", " & start
& ") = " & x
& " expected " & ex
)
245 TestMid
"test", 2, 2, "es"
246 TestMid
"test", 2, 4, "est"
247 TestMid
"test", 1, 2, "te"
248 TestMid
"test", 1, 0, ""
249 TestMid
"test", 1, 0, ""
250 TestMid
"test", 5, 2, ""
251 TestMid2
"test", 1, "test"
252 TestMid2
"test", 2, "est"
253 TestMid2
"test", 4, "t"
254 TestMid2
"test", 5, ""
256 Sub TestUCase(str
, ex
)
258 Call ok(x
= ex
, "UCase(" & str
& ") = " & x
& " expected " & ex
)
261 TestUCase
"test", "TEST"
262 TestUCase
"123aBC?", "123ABC?"
265 if isEnglishLang
then TestUCase
true, "TRUE"
266 TestUCase
0.123, doubleAsString(0.123)
268 Call ok(getVT(UCase(Null
)) = "VT_NULL", "getVT(UCase(Null)) = " & getVT(UCase(Null
)))
270 Sub TestLCase(str
, ex
)
272 Call ok(x
= ex
, "LCase(" & str
& ") = " & x
& " expected " & ex
)
275 TestLCase
"test", "test"
276 TestLCase
"123aBC?", "123abc?"
279 if isEnglishLang
then TestLCase
true, "true"
280 TestLCase
0.123, doubleAsString(0.123)
282 Call ok(getVT(LCase(Null
)) = "VT_NULL", "getVT(LCase(Null)) = " & getVT(LCase(Null
)))
284 Call ok(Len("abc") = 3, "Len(abc) = " & Len("abc"))
285 Call ok(Len("") = 0, "Len() = " & Len(""))
286 Call ok(Len(1) = 1, "Len(1) = " & Len(1))
287 Call ok(isNull(Len(null
)), "Len(null) = " & Len(null
))
288 Call ok(Len(empty
) = 0, "Len(empty) = " & Len(empty
))
290 Call ok(Space(1) = " ", "Space(1) = " & Space(1) & """")
291 Call ok(Space(0) = "", "Space(0) = " & Space(0) & """")
292 Call ok(Space(false) = "", "Space(false) = " & Space(false) & """")
293 Call ok(Space(5) = " ", "Space(5) = " & Space(5) & """")
294 Call ok(Space(5.2) = " ", "Space(5.2) = " & Space(5.2) & """")
295 Call ok(Space(5.8) = " ", "Space(5.8) = " & Space(5.8) & """")
296 Call ok(Space(5.5) = " ", "Space(5.5) = " & Space(5.5) & """")
297 Call ok(Space(4.5) = " ", "Space(4.5) = " & Space(4.5) & """")
298 Call ok(Space(0.5) = "", "Space(0.5) = " & Space(0.5) & """")
299 Call ok(Space(1.5) = " ", "Space(1.5) = " & Space(1.5) & """")
301 Sub TestStrReverse(str
, ex
)
302 Call ok(StrReverse(str
) = ex
, "StrReverse(" & str
& ") = " & StrReverse(str
))
305 TestStrReverse
"test", "tset"
306 TestStrReverse
"", ""
307 TestStrReverse
123, "321"
308 if isEnglishLang
then TestStrReverse
true, "eurT"
310 Sub TestLeft(str
, len
, ex
)
311 Call ok(Left(str
, len
) = ex
, "Left(" & str
& ", " & len
& ") = " & Left(str
, len
))
314 TestLeft
"test", 2, "te"
315 TestLeft
"test", 5, "test"
316 TestLeft
"test", 0, ""
317 TestLeft
123, 2, "12"
318 TestLeft
"123456", 1.5, "12"
319 TestLeft
"123456", 2.5, "12"
320 if isEnglishLang
then TestLeft
true, 2, "Tr"
322 Sub TestRight(str
, len
, ex
)
323 Call ok(Right(str
, len
) = ex
, "Right(" & str
& ", " & len
& ") = " & Right(str
, len
))
326 TestRight
"test", 2, "st"
327 TestRight
"test", 5, "test"
328 TestRight
"test", 0, ""
329 TestRight
123, 2, "23"
330 if isEnglishLang
then TestRight
true, 2, "ue"
332 Sub TestTrim(str
, exstr
)
333 Call ok(Trim(str
) = exstr
, "Trim(" & str
& ") = " & Trim(str
))
336 TestTrim
" test ", "test"
337 TestTrim
"test ", "test"
338 TestTrim
" test", "test"
339 TestTrim
"test", "test"
342 if isEnglishLang
then TestTrim
true, "True"
344 Sub TestLTrim(str
, exstr
)
345 Call ok(LTrim(str
) = exstr
, "LTrim(" & str
& ") = " & LTrim(str
))
348 TestLTrim
" test ", "test "
349 TestLTrim
"test ", "test "
350 TestLTrim
" test", "test"
351 TestLTrim
"test", "test"
354 if isEnglishLang
then TestLTrim
true, "True"
356 Sub TestRound(val
, exval
, vt
)
357 Call ok(Round(val
) = exval
, "Round(" & val
& ") = " & Round(val
))
358 Call ok(getVT(Round(val
)) = vt
, "getVT(Round(" & val
& ")) = " & getVT(Round(val
)))
361 Sub TestRTrim(str
, exstr
)
362 Call ok(RTrim(str
) = exstr
, "RTrim(" & str
& ") = " & RTrim(str
))
365 TestRTrim
" test ", " test"
366 TestRTrim
"test ", "test"
367 TestRTrim
" test", " test"
368 TestRTrim
"test", "test"
371 if isEnglishLang
then TestRTrim
true, "True"
373 TestRound
3, 3, "VT_I2"
374 TestRound
3.3, 3, "VT_R8"
375 TestRound
3.8, 4, "VT_R8"
376 TestRound
3.5, 4, "VT_R8"
377 TestRound
-3.3, -3, "VT_R8"
378 TestRound
-3.5, -4, "VT_R8"
379 TestRound
"2", 2, "VT_R8"
380 TestRound
true, true, "VT_BOOL"
381 TestRound
false, false, "VT_BOOL"
383 if isEnglishLang
then
384 Call ok(WeekDayName(1) = "Sunday", "WeekDayName(1) = " & WeekDayName(1))
385 Call ok(WeekDayName(3) = "Tuesday", "WeekDayName(3) = " & WeekDayName(3))
386 Call ok(WeekDayName(7) = "Saturday", "WeekDayName(7) = " & WeekDayName(7))
387 Call ok(WeekDayName(1.1) = "Sunday", "WeekDayName(1.1) = " & WeekDayName(1.1))
388 Call ok(WeekDayName(1, false) = "Sunday", "WeekDayName(1, false) = " & WeekDayName(1, false))
389 Call ok(WeekDayName(1, true) = "Sun", "WeekDayName(1, true) = " & WeekDayName(1, true))
390 Call ok(WeekDayName(1, 10) = "Sun", "WeekDayName(1, 10) = " & WeekDayName(1, 10))
391 Call ok(WeekDayName(1, true, 0) = "Sun", "WeekDayName(1, true, 0) = " & WeekDayName(1, true, 0))
392 Call ok(WeekDayName(1, true, 2) = "Mon", "WeekDayName(1, true, 2) = " & WeekDayName(1, true, 2))
393 Call ok(WeekDayName(1, true, 2.5) = "Mon", "WeekDayName(1, true, 2.5) = " & WeekDayName(1, true, 2.5))
394 Call ok(WeekDayName(1, true, 1.5) = "Mon", "WeekDayName(1, true, 1.5) = " & WeekDayName(1, true, 1.5))
395 Call ok(WeekDayName(1, true, 7) = "Sat", "WeekDayName(1, true, 7) = " & WeekDayName(1, true, 7))
396 Call ok(WeekDayName(1, true, 7.1) = "Sat", "WeekDayName(1, true, 7.1) = " & WeekDayName(1, true, 7.1))
398 Call ok(MonthName(1) = "January", "MonthName(1) = " & MonthName(1))
399 Call ok(MonthName(12) = "December", "MonthName(12) = " & MonthName(12))
400 Call ok(MonthName(1, 0) = "January", "MonthName(1, 0) = " & MonthName(1, 0))
401 Call ok(MonthName(12, false) = "December", "MonthName(12, false) = " & MonthName(12, false))
402 Call ok(MonthName(1, 10) = "Jan", "MonthName(1, 10) = " & MonthName(1, 10))
403 Call ok(MonthName(12, true) = "Dec", "MonthName(12, true) = " & MonthName(12, true))
406 Call ok(getVT(Now()) = "VT_DATE", "getVT(Now()) = " & getVT(Now()))
408 Call ok(vbOKOnly
= 0, "vbOKOnly = " & vbOKOnly
)
409 Call ok(getVT(vbOKOnly
) = "VT_I2", "getVT(vbOKOnly) = " & getVT(vbOKOnly
))
410 Call ok(vbOKCancel
= 1, "vbOKCancel = " & vbOKCancel
)
411 Call ok(getVT(vbOKCancel
) = "VT_I2", "getVT(vbOKCancel) = " & getVT(vbOKCancel
))
412 Call ok(vbAbortRetryIgnore
= 2, "vbAbortRetryIgnore = " & vbAbortRetryIgnore
)
413 Call ok(getVT(vbAbortRetryIgnore
) = "VT_I2", "getVT(vbAbortRetryIgnore) = " & getVT(vbAbortRetryIgnore
))
414 Call ok(vbYesNoCancel
= 3, "vbYesNoCancel = " & vbYesNoCancel
)
415 Call ok(getVT(vbYesNoCancel
) = "VT_I2", "getVT(vbYesNoCancel) = " & getVT(vbYesNoCancel
))
416 Call ok(vbYesNo
= 4, "vbYesNo = " & vbYesNo
)
417 Call ok(getVT(vbYesNo
) = "VT_I2", "getVT(vbYesNo) = " & getVT(vbYesNo
))
418 Call ok(vbRetryCancel
= 5, "vbRetryCancel = " & vbRetryCancel
)
419 Call ok(getVT(vbRetryCancel
) = "VT_I2", "getVT(vbRetryCancel) = " & getVT(vbRetryCancel
))
421 Call ok(vbOK
= 1, "vbOK = " & vbOK
)
422 Call ok(getVT(vbOK
) = "VT_I2", "getVT(vbOK) = " & getVT(vbOK
))
423 Call ok(vbCancel
= 2, "vbCancel = " & vbCancel
)
424 Call ok(getVT(vbCancel
) = "VT_I2", "getVT(vbCancel) = " & getVT(vbCancel
))
425 Call ok(vbAbort
= 3, "vbAbort = " & vbAbort
)
426 Call ok(getVT(vbAbort
) = "VT_I2", "getVT(vbAbort) = " & getVT(vbAbort
))
427 Call ok(vbRetry
= 4, "vbRetry = " & vbRetry
)
428 Call ok(getVT(vbRetry
) = "VT_I2", "getVT(vbRetry) = " & getVT(vbRetry
))
429 Call ok(vbIgnore
= 5, "vbIgnore = " & vbIgnore
)
430 Call ok(getVT(vbIgnore
) = "VT_I2", "getVT(vbIgnore) = " & getVT(vbIgnore
))
431 Call ok(vbYes
= 6, "vbYes = " & vbYes
)
432 Call ok(getVT(vbYes
) = "VT_I2", "getVT(vbYes) = " & getVT(vbYes
))
433 Call ok(vbNo
= 7, "vbNo = " & vbNo
)
434 Call ok(getVT(vbNo
) = "VT_I2", "getVT(vbNo) = " & getVT(vbNo
))
436 Call ok(CInt(-36.75) = -37, "CInt(-36.75) = " & CInt(-36.75))
437 Call ok(getVT(CInt(-36.75)) = "VT_I2", "getVT(CInt(-36.75)) = " & getVT(CInt(-36.75)))
438 Call ok(CInt(-36.50) = -36, "CInt(-36.50) = " & CInt(-36.50))
439 Call ok(getVT(CInt(-36.50)) = "VT_I2", "getVT(CInt(-36.50)) = " & getVT(CInt(-36.50)))
440 Call ok(CInt(-36.25) = -36, "CInt(-36.25) = " & CInt(-36.25))
441 Call ok(getVT(CInt(-36.25)) = "VT_I2", "getVT(CInt(-36.25)) = " & getVT(CInt(-36.25)))
442 Call ok(CInt(-36) = -36, "CInt(-36) = " & CInt(-36))
443 Call ok(getVT(CInt(-36)) = "VT_I2", "getVT(CInt(-36)) = " & getVT(CInt(-36)))
444 Call ok(CInt(0) = 0, "CInt(0) = " & CInt(0))
445 Call ok(getVT(CInt(0)) = "VT_I2", "getVT(CInt(0)) = " & getVT(CInt(0)))
446 Call ok(CInt(0.0) = 0, "CInt(0.0) = " & CInt(0))
447 Call ok(getVT(CInt(0.0)) = "VT_I2", "getVT(CInt(0.0)) = " & getVT(CInt(0.0)))
448 Call ok(CInt(0.5) = 0, "CInt(0.5) = " & CInt(0))
449 Call ok(getVT(CInt(0.5)) = "VT_I2", "getVT(CInt(0.5)) = " & getVT(CInt(0.5)))
450 Call ok(CInt(36) = 36, "CInt(36) = " & CInt(36))
451 Call ok(getVT(CInt(36)) = "VT_I2", "getVT(CInt(36)) = " & getVT(CInt(36)))
452 Call ok(CInt(36.25) = 36, "CInt(36.25) = " & CInt(36.25))
453 Call ok(getVT(CInt(36.25)) = "VT_I2", "getVT(CInt(36.25)) = " & getVT(CInt(36.25)))
454 Call ok(CInt(36.50) = 36, "CInt(36.50) = " & CInt(36.50))
455 Call ok(getVT(CInt(36.50)) = "VT_I2", "getVT(CInt(36.50)) = " & getVT(CInt(36.50)))
456 Call ok(CInt(36.75) = 37, "CInt(36.75) = " & CInt(36.75))
457 Call ok(getVT(CInt(36.75)) = "VT_I2", "getVT(CInt(36.75)) = " & getVT(CInt(36.75)))
460 Call ok(CBool(5) = true, "CBool(5) = " & CBool(5))
461 Call ok(getVT(CBool(5)) = "VT_BOOL", "getVT(CBool(5)) = " & getVT(CBool(5)))
462 Call ok(CBool(0) = false, "CBool(0) = " & CBool(0))
463 Call ok(getVT(CBool(0)) = "VT_BOOL", "getVT(CBool(0)) = " & getVT(CBool(0)))
464 Call ok(CBool(-5) = true, "CBool(-5) = " & CBool(-5))
465 Call ok(getVT(CBool(-5)) = "VT_BOOL", "getVT(CBool(-5)) = " & getVT(CBool(-5)))