示例#1
0
        public void CodeCellMarkers()
        {
            foreach (var trueMarker in new[] {
                "#%%",
                "#%% Comment",
                "# In[1]:",
                "# In[abcdefg]:comment after",
                "#In[1043540398340162312]:"
            })
            {
                foreach (var ws in new[] { "", " ", "\t", "  \t  " })
                {
                    Assert.IsTrue(CCA.IsCellMarker(ws + trueMarker), ShowWhitespace(ws + trueMarker));
                    Assert.IsTrue(CCA.IsCellMarker(trueMarker + ws), ShowWhitespace(trueMarker + ws));
                    Assert.IsTrue(CCA.IsCellMarker(ws + trueMarker + ws), ShowWhitespace(ws + trueMarker + ws));
                }
            }

            foreach (var falseMarker in new[] {
                "",
                "#",
                "'''#%%'''",
                "# In[abcdefg]",
                "# In[abcdefg] :"
            })
            {
                Assert.IsFalse(CCA.IsCellMarker(falseMarker), ShowWhitespace(falseMarker));
            }
        }
示例#2
0
        private static void AssertCellStart(ITextBuffer buffer, int startFromLine, int expectedLine)
        {
            var found = CCA.FindStartOfCell(buffer.CurrentSnapshot.GetLineFromLineNumber(startFromLine));

            if (expectedLine < 0)
            {
                Assert.IsNull(found, "Actually found: " + found?.GetText() ?? "(null)");
            }
            else
            {
                Assert.IsNotNull(found, "Actually found: (null)\r\n\r\nExpected: " + buffer.CurrentSnapshot.GetLineFromLineNumber(expectedLine).GetText());
                Assert.AreEqual(expectedLine, found.LineNumber, "Actually found: " + found.GetText());
            }
        }