summaryrefslogtreecommitdiffstats
path: root/basic/qa/basic_coverage/test_ismissing_cascade.bas
blob: 3c6d9a71c09a9b42abc764ad25812440cf811d8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
' 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_testIsMissingCascade
    doUnitTest = TestUtil.GetResult()
End Function

Sub verify_testIsMissingCascade()

    On Error GoTo errorHandler

    ' tdf#136143 - test cascading optionals in order to prevent type conversion errors, because
    ' optional arguments are of type SbxERROR and set to not fixed.
    TestUtil.AssertEqual(TestOpt(), 2, "Cascading optionals")

    Exit Sub
errorHandler:
    TestUtil.ReportErrorHandler("verify_testIsMissingCascade", Err, Error$, Erl)
End Sub

Function TestOpt(Optional A)
    TestOpt = TestOptCascade(A)
End Function

Function TestOptCascade(Optional A)
    If IsMissing(A) Then A = 2
    TestOptCascade = A
End Function