summaryrefslogtreecommitdiff
path: root/basic
diff options
context:
space:
mode:
authorZdeněk Crhonek <zcrhonek@gmail.com>2017-02-10 21:07:11 +0100
committerEike Rathke <erack@redhat.com>2017-02-27 20:37:36 +0000
commitb5c83cf676541d367ea4d0ce0c5531160f2b215b (patch)
treed74679ad2ff3c4966c67ac5d5540178aa8c58e50 /basic
parent871e686802b901e1a7220c1739b5857f4fdbf6e3 (diff)
add VBA CHR() test case
Change-Id: I9e7aefdd0309fd4f209fba6fb4f698b098856d01 Reviewed-on: https://gerrit.libreoffice.org/34133 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Eike Rathke <erack@redhat.com>
Diffstat (limited to 'basic')
-rw-r--r--basic/qa/cppunit/test_vba.cxx1
-rw-r--r--basic/qa/vba_tests/chr.vb71
2 files changed, 72 insertions, 0 deletions
diff --git a/basic/qa/cppunit/test_vba.cxx b/basic/qa/cppunit/test_vba.cxx
index e493c20a89b1..cff9b066ad6b 100644
--- a/basic/qa/cppunit/test_vba.cxx
+++ b/basic/qa/cppunit/test_vba.cxx
@@ -55,6 +55,7 @@ void VBATest::testMiscVBAFunctions()
"format.vb",
"replace.vb",
"stringplusdouble.vb",
+ "chr.vb",
#ifndef WIN32 // missing 64bit Currency marshalling.
"win32compat.vb", // windows compatibility hooks.
#endif
diff --git a/basic/qa/vba_tests/chr.vb b/basic/qa/vba_tests/chr.vb
new file mode 100644
index 000000000000..9c1978410978
--- /dev/null
+++ b/basic/qa/vba_tests/chr.vb
@@ -0,0 +1,71 @@
+Option VBASupport 1
+Option Explicit
+Dim passCount As Integer
+Dim failCount As Integer
+Dim result As String
+
+Function doUnitTest() As String
+result = verify_testCHR()
+If failCount <> 0 And passCount > 0 Then
+ doUnitTest = result
+Else
+ doUnitTest = "OK"
+End If
+End Function
+
+
+
+Function verify_testCHR() 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 str1, str2 As String
+ testName = "Test CHR function"
+ On Error GoTo errorHandler
+
+ str2 = "W"
+ str1 = Chr(87)
+ TestLog_ASSERT str1 = str2, "the return CHR is: " & str1
+
+ str2 = "i"
+ str1 = Chr(105)
+ TestLog_ASSERT str1 = str2, "the return CHR is: " & str1
+
+ str2 = "#"
+ str1 = Chr(35)
+ TestLog_ASSERT str1 = str2, "the return CHR is: " & str1
+
+ result = result & Chr$(10) & "Tests passed: " & passCount & Chr$(10) & "Tests failed: " & failCount & Chr$(10)
+ verify_testCHR = 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
+
+