Spracherkennung für: .bas vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
' This file is part of the LibreOffice project.
'
' This Source Code Form is subject to the terms of the Mozilla Public
' License, v.
2.
0. If a copy of the MPL was not distributed with this
' file, You can obtain one at
http://mozilla.org/MPL/2.
0/.
'
Option Explicit
Function doUnitTest() As String
TestUtil.TestInit
verify_testSplit
doUnitTest = TestUtil.GetResult()
End Function
Sub verify_testSplit
On Error GoTo errorHandler
' SPLIT
TestUtil.AssertEqual(Split( "Hello world" )(
1), "world", "Split( ""Hello world"" )(
1)")
' tdf#
123025 - split function sets the datatype of the array to empty,
' preventing any subsequent assignments of values to the array and to the elements itself.
Dim arr(
1) As String
arr = Split("a/b", "/")
TestUtil.AssertEqual(arr(
0), "a", "Split(""a/b"", ""/"")(
0)")
TestUtil.AssertEqual(arr(
1), "b", "Split(""a/b"", ""/"")(
1)")
ReDim Preserve arr(
1)
TestUtil.AssertEqual(arr(
0), "a", "ReDim Preserve arr(
1)(
0)")
TestUtil.AssertEqual(arr(
1), "b", "ReDim Preserve arr(
1)(
1)")
ReDim arr(
1)
TestUtil.AssertEqual(arr(
0), "", "ReDim arr(
1)(
0)")
TestUtil.AssertEqual(arr(
1), "", "ReDim arr(
1)(
1)")
arr(
0) = "a"
arr(
1) = "b"
TestUtil.AssertEqual(arr(
0), "a", "arr(
0)")
TestUtil.AssertEqual(arr(
1), "b", "arr(
1)")
ReDim Preserve arr(
1)
TestUtil.AssertEqual(arr(
0), "a", "ReDim Preserve arr(
1)(
0) after assignment")
TestUtil.AssertEqual(arr(
1), "b", "ReDim Preserve arr(
1)(
1) after assignment")
' tdf#
144924 - allow the assignment of different data types to the individual elements
Dim splitArr
splitArr = Split("a/b&&c/d", "&&")
Dim i As Integer
For i =
0 To UBound(splitArr)
' Without the fix in place, this assignment would have failed
splitArr(i) = Split(splitArr(i), "/")
' Without the fix in place, this test would have failed with:
' - Expected:
8200 (
8192 for Array and
8 for String)
' - Actual :
8 (
8 for String)
TestUtil.AssertEqual(VarType(splitArr(i)),
8200, "VarType(splitArr(i))")
Next
' tdf#
141474 keyword names need to match that of VBA
TestUtil.AssertEqual(Split(expression:="LibreOffice StarOffice")(
1), "StarOffice",
"Split with 1 keyword name" )
Dim txt As String : txt = "Libre_Office_Star_Office"
TestUtil.AssertEqual(Split(delimiter:="_", expression:=txt)(2), "Star", "Split with 2 keyword names" )
TestUtil.AssertEqual(Split(limit:=3, delimiter:="_", expression:=txt)(2), "Star_Office", "Split with 3 keyword names" )
Exit Sub
errorHandler:
TestUtil.ReportErrorHandler("verify_testSplit", Err, Error$, Erl)
End Sub