aboutsummaryrefslogtreecommitdiff
path: root/lldb/test/API/lang/cpp/chained-calls/TestCppChainedCalls.py
blob: fa2c5dca2748892f7b8741379d57a2470db60f9f (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
import lldb
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil


class TestCppChainedCalls(TestBase):
    def test_with_run_command(self):
        self.build()
        lldbutil.run_to_source_breakpoint(
            self, "// break here", lldb.SBFileSpec("main.cpp")
        )

        # Test chained calls
        self.expect_expr("get(set(true))", result_type="bool", result_value="true")
        self.expect_expr("get(set(false))", result_type="bool", result_value="false")
        self.expect_expr("get(t & f)", result_type="bool", result_value="false")
        self.expect_expr("get(f & t)", result_type="bool", result_value="false")
        self.expect_expr("get(t & t)", result_type="bool", result_value="true")
        self.expect_expr("get(f & f)", result_type="bool", result_value="false")
        self.expect_expr("get(t & f)", result_type="bool", result_value="false")
        self.expect_expr("get(f) && get(t)", result_type="bool", result_value="false")
        self.expect_expr("get(f) && get(f)", result_type="bool", result_value="false")
        self.expect_expr("get(t) && get(t)", result_type="bool", result_value="true")