VBA tests - add CSNG, CSTR test case
Change-Id: I5e9bc24bb89cc634a3c01e8c8b23a19927e7010c Reviewed-on: https://gerrit.libreoffice.org/35341 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Zdenek Crhonek <zcrhonek@gmail.com>
This commit is contained in:
parent
11ad608a1c
commit
7ea2962e76
@ -67,6 +67,8 @@ void VBATest::testMiscVBAFunctions()
|
||||
"cos.vb",
|
||||
"cint.vb",
|
||||
"clng.vb",
|
||||
"csng.vb",
|
||||
"cstr.vb",
|
||||
#ifndef WIN32 // missing 64bit Currency marshalling.
|
||||
"win32compat.vb", // windows compatibility hooks.
|
||||
#endif
|
||||
|
73
basic/qa/vba_tests/csng.vb
Normal file
73
basic/qa/vba_tests/csng.vb
Normal file
@ -0,0 +1,73 @@
|
||||
Option VBASupport 1
|
||||
Option Explicit
|
||||
Dim passCount As Integer
|
||||
Dim failCount As Integer
|
||||
Dim result As String
|
||||
|
||||
Function doUnitTest() As String
|
||||
result = verify_testCSng()
|
||||
If failCount <> 0 And passCount > 0 Then
|
||||
doUnitTest = result
|
||||
Else
|
||||
doUnitTest = "OK"
|
||||
End If
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Function verify_testCSng() As String
|
||||
|
||||
passCount = 0
|
||||
failCount = 0
|
||||
|
||||
result = "Test Results" & Chr$(10) & "============" & Chr$(10)
|
||||
|
||||
Dim testName As String
|
||||
Dim TestDateTime As Date
|
||||
Dim TestStr As String
|
||||
Dim nr1, nr2 As Single 'variables for test
|
||||
Dim nr3 As Double
|
||||
|
||||
testName = "Test CSng function"
|
||||
On Error GoTo errorHandler
|
||||
|
||||
nr2 = 8.534535408
|
||||
nr1 = CSng(8.534535408)
|
||||
TestLog_ASSERT nr1 = nr2, "the return CSng is: " & nr1
|
||||
|
||||
nr3 = 100.1234
|
||||
nr2 = 100.1234
|
||||
nr1 = CSng(nr3)
|
||||
TestLog_ASSERT nr1 = nr2, "the return CSng is: " & nr1
|
||||
|
||||
nr2 = 0
|
||||
nr1 = CSng(0)
|
||||
TestLog_ASSERT nr1 = nr2, "the return CSng is: " & nr1
|
||||
|
||||
result = result & Chr$(10) & "Tests passed: " & passCount & Chr$(10) & "Tests failed: " & failCount & Chr$(10)
|
||||
verify_testCSng = result
|
||||
|
||||
Exit Function
|
||||
errorHandler:
|
||||
TestLog_ASSERT (False), testName & ": hit error handler"
|
||||
End Function
|
||||
|
||||
Sub TestLog_ASSERT(assertion As Boolean, Optional testId As String, Optional testComment As String)
|
||||
|
||||
If assertion = True Then
|
||||
passCount = passCount + 1
|
||||
Else
|
||||
Dim testMsg As String
|
||||
If Not IsMissing(testId) Then
|
||||
testMsg = testMsg + " : " + testId
|
||||
End If
|
||||
If Not IsMissing(testComment) And Not (testComment = "") Then
|
||||
testMsg = testMsg + " (" + testComment + ")"
|
||||
End If
|
||||
|
||||
result = result & Chr$(10) & " Failed: " & testMsg
|
||||
failCount = failCount + 1
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
67
basic/qa/vba_tests/cstr.vb
Normal file
67
basic/qa/vba_tests/cstr.vb
Normal file
@ -0,0 +1,67 @@
|
||||
Option VBASupport 1
|
||||
Option Explicit
|
||||
Dim passCount As Integer
|
||||
Dim failCount As Integer
|
||||
Dim result As String
|
||||
|
||||
Function doUnitTest() As String
|
||||
result = verify_testCStr()
|
||||
If failCount <> 0 And passCount > 0 Then
|
||||
doUnitTest = result
|
||||
Else
|
||||
doUnitTest = "OK"
|
||||
End If
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Function verify_testCStr() As String
|
||||
|
||||
passCount = 0
|
||||
failCount = 0
|
||||
|
||||
result = "Test Results" & Chr$(10) & "============" & Chr$(10)
|
||||
|
||||
Dim testName As String
|
||||
Dim TestDateTime As Date
|
||||
Dim str2, str3
|
||||
Dim str1 As String 'variables for test
|
||||
testName = "Test CStr function"
|
||||
On Error GoTo errorHandler
|
||||
|
||||
str3 = 437.324
|
||||
str2 = "437.324"
|
||||
str1 = CStr(str3)
|
||||
TestLog_ASSERT str1 = str2, "the return CStr is: " & str1
|
||||
|
||||
str2 = "500"
|
||||
str1 = CStr(500)
|
||||
TestLog_ASSERT str1 = str2, "the return CStr is: " & str1
|
||||
|
||||
result = result & Chr$(10) & "Tests passed: " & passCount & Chr$(10) & "Tests failed: " & failCount & Chr$(10)
|
||||
verify_testCStr = result
|
||||
|
||||
Exit Function
|
||||
errorHandler:
|
||||
TestLog_ASSERT (False), testName & ": hit error handler"
|
||||
End Function
|
||||
|
||||
Sub TestLog_ASSERT(assertion As Boolean, Optional testId As String, Optional testComment As String)
|
||||
|
||||
If assertion = True Then
|
||||
passCount = passCount + 1
|
||||
Else
|
||||
Dim testMsg As String
|
||||
If Not IsMissing(testId) Then
|
||||
testMsg = testMsg + " : " + testId
|
||||
End If
|
||||
If Not IsMissing(testComment) And Not (testComment = "") Then
|
||||
testMsg = testMsg + " (" + testComment + ")"
|
||||
End If
|
||||
|
||||
result = result & Chr$(10) & " Failed: " & testMsg
|
||||
failCount = failCount + 1
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
Loading…
x
Reference in New Issue
Block a user