Example #1
0
        internal static void CheckReturn(
            IBraceCompletionSession session,
            int indentation,
            string result = null
            )
        {
            session.PreReturn(out var handled);

            Type(session, Environment.NewLine);

            if (!handled)
            {
                session.PostReturn();
            }

            var virtualCaret = session.TextView.GetVirtualCaretPoint(session.SubjectBuffer).Value;

            Assert.True(
                indentation == virtualCaret.VirtualSpaces,
                $"Expected indentation was {indentation}, but the actual indentation was {virtualCaret.VirtualSpaces}"
                );

            if (result != null)
            {
                AssertEx.EqualOrDiff(result, session.SubjectBuffer.CurrentSnapshot.GetText());
            }
        }
        public void PostReturn()
        {
            if (_postSession != null)
            {
                _guardedOperations.CallExtensionPoint(() => {
                    _postSession.PostReturn();
                });

                _postSession = null;
            }
        }
        internal void CheckReturnOnNonEmptyLine(IBraceCompletionSession session, int expectedVirtualSpace)
        {
            session.PreReturn(out var handled);

            Type(session, Environment.NewLine);

            if (!handled)
            {
                session.PostReturn();
            }

            var virtualCaret = session.TextView.GetVirtualCaretPoint(session.SubjectBuffer).Value;

            Assert.Equal(expectedVirtualSpace, virtualCaret.VirtualSpaces);
        }
        internal void CheckReturn(IBraceCompletionSession session, int indentation, string result = null)
        {
            session.PreReturn(out var handled);

            Type(session, Environment.NewLine);

            if (!handled)
            {
                session.PostReturn();
            }

            var virtualCaret = session.TextView.GetVirtualCaretPoint(session.SubjectBuffer).Value;
            Assert.Equal(indentation, virtualCaret.VirtualSpaces);

            if (result != null)
            {
                Assert.Equal(result, session.SubjectBuffer.CurrentSnapshot.GetText());
            }
        }
        internal void CheckReturn(IBraceCompletionSession session, int indentation, string result = null)
        {
            session.PreReturn(out var handled);

            Type(session, Environment.NewLine);

            if (!handled)
            {
                session.PostReturn();
            }

            var virtualCaret = session.TextView.GetVirtualCaretPoint(session.SubjectBuffer).Value;

            Assert.Equal(indentation, virtualCaret.VirtualSpaces);

            if (result != null)
            {
                Assert.Equal(result, session.SubjectBuffer.CurrentSnapshot.GetText());
            }
        }
        internal void CheckReturnOnNonEmptyLine(IBraceCompletionSession session, int expectedVirtualSpace)
        {
            bool handled;
            session.PreReturn(out handled);

            Type(session, Environment.NewLine);

            if (!handled)
            {
                session.PostReturn();
            }

            var virtualCaret = session.TextView.GetVirtualCaretPoint(session.SubjectBuffer).Value;
            Assert.Equal(expectedVirtualSpace, virtualCaret.VirtualSpaces);
        }