コード例 #1
0
        public void BindInvalidFunctionBreakpointWithOffset()
        {
            SetBreakpointType(enum_BP_LOCATION_TYPE.BPLT_CODE_FUNC_OFFSET);
            pendingBreakpoint = debugPendingBreakpointFactory.Create(
                mockBreakpointManager, mockProgram, mockBreakpointRequest, mockTarget,
                mockMarshal);

            MockFunctionBreakpoint(1);
            MockFunctionPosition(TEST_FUNCTION_NAME_WITH_OFFSET);

            // OffsetBreakpoint returns null when it fails
            //mockLldbBreakpoint.OffsetBreakpoint(offset).Returns((RemoteBreakpoint)null);

            var result = pendingBreakpoint.Bind();
            IDebugErrorBreakpoint2 breakpointError = GetBreakpointError();
            var boundBreakpoints = GetBoundBreakpoints();

            Assert.AreEqual(0, boundBreakpoints.Count);
            mockBreakpointManager.DidNotReceive().RegisterPendingBreakpoint(pendingBreakpoint);

            Assert.AreNotEqual(null, breakpointError);
            Assert.AreEqual(VSConstants.S_FALSE, result);
        }