public void OnPaste_NonLink_NoHyperlinkInserted()
        {
            var editor = new RichTextEditor();
            editor.Document.Blocks.Add(new Paragraph(new Run("Some dummy ")));
            editor.CaretPosition = editor.Document.ContentEnd;

            Clipboard.SetData(DataFormats.Text, "some-other-text");
            editor.Paste();

            var visitor = new FlowDocumentVisitor(e => e is Hyperlink);
            visitor.Accept(editor.Document);
            Assert.That(visitor.Results, Is.Empty);
        }
        public void OnPaste_WithLink_HyperlinkInserted()
        {
            var url = "http://github.com/";

            var editor = new RichTextEditor();
            editor.Document.Blocks.Add(new Paragraph(new Run("Some dummy ")));
            editor.CaretPosition = editor.Document.ContentEnd;

            Clipboard.SetData(DataFormats.Text, url);
            editor.Paste();

            var visitor = new FlowDocumentVisitor(e => e is Hyperlink);
            visitor.Accept(editor.Document);
            Assert.That(visitor.Results.Count, Is.EqualTo(1));

            var hyperlink = visitor.Results.OfType<Hyperlink>().Single();
            Assert.That(hyperlink.Inlines.OfType<Run>().Single().Text, Is.EqualTo(url));
            Assert.That(hyperlink.NavigateUri.ToString(), Is.EqualTo(url));
        }