Beispiel #1
0
def test_proccessor_invalid_type_reference():
    with patch("taiga.mdrender.extensions.references.get_instance_by_ref") as mock:
        instance = mock.return_value
        instance.content_type.model = "other"
        instance.content_object.subject = "test"
        result = render(dummy_project, "**#4**")
        assert result == "<p><strong>#4</strong></p>"
def test_proccessor_valid_user_mention_with_dashes():
    user=factories.UserFactory(username="******", full_name="test name")
    project=factories.ProjectFactory(id=1, slug="test")
    factories.MembershipFactory(user=user, project=project)
    result = render(project, "**@user1_text_after_dash**")
    expected_result = "<p><strong><a class=\"mention\" href=\"http://*****:*****@user1_text_after_dash</a></strong></p>"
    assert result == expected_result
Beispiel #3
0
def test_proccessor_invalid_type_reference():
    with patch("taiga.mdrender.extensions.references.get_instance_by_ref") as mock:
        instance = mock.return_value
        instance.content_type.model = "other"
        instance.content_object.subject = "test"
        result = render(dummy_project, "**#4**")
        assert result == "<p><strong>#4</strong></p>"
def test_proccessor_valid_issue_reference():
    with patch("taiga.mdrender.extensions.references.get_instance_by_ref") as mock:
        instance = mock.return_value
        instance.content_type.model = "issue"
        instance.content_object.subject = "test"
        result = render(dummy_project, "**#2**")
        expected_result = '<p><strong><a alt="test" class="reference issue" href="/#/project/test/issues/2" title="test">&num;2</a></strong></p>'
        assert result == expected_result
Beispiel #5
0
def test_proccessor_valid_us_reference():
    with patch("taiga.mdrender.extensions.references.get_instance_by_ref") as mock:
        instance = mock.return_value
        instance.content_type.model = "userstory"
        instance.content_object.subject = "test"
        result = render(dummy_project, "**#1**")
        expected_result = '<p><strong><a alt="test" class="reference user-story" href="http://localhost:9001/project/test/us/1" title="test">&num;1</a></strong></p>'
        assert result == expected_result
Beispiel #6
0
def test_proccessor_valid_task_reference():
    with patch("taiga.mdrender.extensions.references.get_instance_by_ref") as mock:
        instance = mock.return_value
        instance.content_type.model = "task"
        instance.content_object.subject = "test"
        result = render(dummy_project, "**#3**")
        expected_result = '<p><strong><a class="reference task" href="http://localhost:9001/project/test/task/3" title="#3 test">#3</a></strong></p>'
        assert result == expected_result
Beispiel #7
0
def test_proccessor_valid_us_reference():
    with patch("taiga.mdrender.extensions.references.get_instance_by_ref") as mock:
        instance = mock.return_value
        instance.content_type.model = "userstory"
        instance.content_object.subject = "test"
        result = render(dummy_project, "**#1**")
        expected_result = '<p><strong><a alt="test" class="reference user-story" href="http://localhost:9001/project/test/us/1" title="test">#1</a></strong></p>'
        assert result == expected_result
Beispiel #8
0
def test_proccessor_valid_issue_reference():
    with patch("taiga.mdrender.extensions.references.get_instance_by_ref") as mock:
        instance = mock.return_value
        instance.content_type.model = "issue"
        instance.content_object.subject = "test"
        result = render(dummy_project, "**#2**")
        expected_result = '<p><strong><a class="reference issue" href="http://localhost:9001/project/test/issue/2" title="#2 test">&num;2</a></strong></p>'
        assert result == expected_result
Beispiel #9
0
def test_mentions_valid_username_with_dash():
    with patch("taiga.mdrender.extensions.mentions.get_user_model") as get_user_model_mock:
        dummy_uuser = MagicMock()
        dummy_uuser.get_full_name.return_value = "Ginny Weasley"
        get_user_model_mock.return_value.objects.get = MagicMock(return_value=dummy_uuser)

        result = render(dummy_project, "text @super-ginny text")

        get_user_model_mock.return_value.objects.get.assert_called_with(username="******")
        assert result == ('<p>text <a class="mention" href="http://*****:*****@super-ginny</a> text</p>')
Beispiel #10
0
def test_mentions_valid_username_with_points():
    with patch("taiga.mdrender.extensions.mentions.get_user_model") as get_user_model_mock:
        dummy_uuser = MagicMock()
        dummy_uuser.get_full_name.return_value = "Luna Lovegood"
        get_user_model_mock.return_value.objects.get = MagicMock(return_value=dummy_uuser)

        result = render(dummy_project, "text @luna.lovegood text")

        get_user_model_mock.return_value.objects.get.assert_called_with(username="******")
        assert result == ('<p>text <a class="mention" href="http://*****:*****@luna.lovegood</a> text</p>')
Beispiel #11
0
def test_mentions_valid_username():
    with patch("taiga.mdrender.extensions.mentions.get_user_model") as get_user_model_mock:
        dummy_uuser = MagicMock()
        dummy_uuser.get_full_name.return_value = "Hermione Granger"
        get_user_model_mock.return_value.objects.get = MagicMock(return_value=dummy_uuser)

        result = render(dummy_project, "text @hermione text")

        get_user_model_mock.return_value.objects.get.assert_called_with(username="******")
        assert result == ('<p>text <a class="mention" href="http://*****:*****@hermione</a> text</p>')
Beispiel #12
0
def test_mentions_valid_username_with_dash():
    with patch("taiga.mdrender.extensions.mentions.get_user_model") as get_user_model_mock:
        dummy_uuser = MagicMock()
        dummy_uuser.get_full_name.return_value = "Ginny Weasley"
        get_user_model_mock.return_value.objects.get = MagicMock(return_value=dummy_uuser)

        result = render(dummy_project, "text @super-ginny text")

        get_user_model_mock.return_value.objects.get.assert_called_with(username="******")
        assert result == ('<p>text <a class="mention" href="http://*****:*****@super-ginny</a> text</p>')
Beispiel #13
0
def test_mentions_valid_username():
    with patch("taiga.mdrender.extensions.mentions.get_user_model") as get_user_model_mock:
        dummy_uuser = MagicMock()
        dummy_uuser.get_full_name.return_value = "Hermione Granger"
        get_user_model_mock.return_value.objects.get = MagicMock(return_value=dummy_uuser)

        result = render(dummy_project, "text @hermione text")

        get_user_model_mock.return_value.objects.get.assert_called_with(username="******")
        assert result == ('<p>text <a class="mention" href="http://*****:*****@hermione</a> text</p>')
Beispiel #14
0
def test_mentions_valid_username_with_points():
    with patch("taiga.mdrender.extensions.mentions.get_user_model") as get_user_model_mock:
        dummy_uuser = MagicMock()
        dummy_uuser.get_full_name.return_value = "Luna Lovegood"
        get_user_model_mock.return_value.objects.get = MagicMock(return_value=dummy_uuser)

        result = render(dummy_project, "text @luna.lovegood text")

        get_user_model_mock.return_value.objects.get.assert_called_with(username="******")
        assert result == ('<p>text <a class="mention" href="http://*****:*****@luna.lovegood</a> text</p>')
Beispiel #15
0
def test_render_attachment_file(settings):
    settings.MEDIA_URL = "http://media.example.com/"
    attachment_url = "{}path/to/file.pdf#{}=us:42".format(settings.MEDIA_URL, REFRESH_PARAM)
    sentinel_url = "http://__sentinel__/"

    md = "[Test]({})".format(attachment_url)
    expected_result = "<p><a href=\"{}#{}={}\" target=\"_blank\">Test</a></p>".format(sentinel_url, REFRESH_PARAM, "us:42")

    with patch("taiga.mdrender.extensions.refresh_attachment.get_attachment_by_id") as mock:
        attachment = mock.return_value
        attachment.id = 42
        attachment.attached_file.url = sentinel_url

        result = render(dummy_project, md)

    assert result == expected_result
    assert mock.called is True
    mock.assert_called_with(dummy_project.id, 42)
Beispiel #16
0
def test_render_relative_image():
    assert render(dummy_project, "![test](test.png)") == "<p><img alt=\"test\" src=\"test.png\"></p>"
Beispiel #17
0
def test_render_url_automail():
    expected_result = "<p>Test the <a href=\"mailto:[email protected]\" target=\"_blank\">[email protected]</a> automail</p>"
    source = "Test the [email protected] automail"
    assert render(dummy_project, source) == expected_result
Beispiel #18
0
def test_render_url_autolinks():
    expected_result = "<p>Test the <a href=\"http://example.com/\" target=\"_blank\">http://example.com/</a> autolink</p>"
    source = "Test the http://example.com/ autolink"
    assert render(dummy_project, source) == expected_result
Beispiel #19
0
def test_render_wikilink_relative_to_absolute():
    expected_result = "<p><a href=\"http://localhost:9001/project/test/\">test project</a></p>"
    assert render(dummy_project, "[test project](/project/test/)") == expected_result
Beispiel #20
0
def test_render_absolute_link():
    assert render(dummy_project, "[test](/test)") == "<p><a href=\"/test\">test</a></p>"
Beispiel #21
0
def test_render_url_autolinks_without_http():
    expected_result = "<p>Test the <a href=\"http://www.example.com\" target=\"_blank\">www.example.com</a> autolink</p>"
    source = "Test the www.example.com autolink"
    assert render(dummy_project, source) == expected_result
Beispiel #22
0
def test_render_reference_links():
    expected_result = "<p>An <a href=\"http://example.com/\" target=\"_blank\" title=\"Title\">example</a> of reference link</p>"
    source = "An [example][id] of reference link\n  [id]: http://example.com/  \"Title\""
    assert render(dummy_project, source) == expected_result
Beispiel #23
0
def test_render_triple_quote_and_lang_code():
    expected_result = "<div class=\"codehilite\"><pre><span class=\"k\">print</span><span class=\"p\">(</span><span class=\"s\">\"test\"</span><span class=\"p\">)</span>\n</pre></div>"
    assert render(dummy_project,
                  "```python\nprint(\"test\")\n```") == expected_result
Beispiel #24
0
def test_render_absolute_image():
    assert render(
        dummy_project,
        "![test](/test.png)") == "<p><img alt=\"test\" src=\"/test.png\"></p>"
Beispiel #25
0
def test_render_markdown_to_html():
    assert render(dummy_project, "- [x] test") == "<ul class=\"task-list\">\n<li class=\"task-list-item\"><label class=\"task-list-control\"><input checked type=\"checkbox\"><span class=\"task-list-indicator\"></span></label> test</li>\n</ul>"
Beispiel #26
0
def test_render_triple_quote_and_lang_code():
    expected_result = '<div class="codehilite"><pre><span></span><code><span class="nb">print</span><span class="p">(</span><span class="s2">&quot;test&quot;</span><span class="p">)</span>\n</code></pre></div>'

    assert render(dummy_project, "```python\nprint(\"test\")\n```") == expected_result
Beispiel #27
0
def test_render_wikilink_obj_without_slug_relative():
    expected_result = "<p><a class=\"reference wiki\" href=\"http://localhost:9001/project/test/wiki/wiki_page\">test project</a></p>"
    assert render(dummy_object, "[test project](wiki_page)") == expected_result
def test_render_absolute_link():
    assert render(dummy_project, "[test](/test)") == "<p><a href=\"/test\">test</a></p>"
Beispiel #29
0
def test_render_triple_quote_and_lang_code():
    expected_result = '<div class="codehilite"><pre><span></span><span class="k">print</span><span class="p">(</span><span class="s2">&quot;test&quot;</span><span class="p">)</span>\n</pre></div>'

    assert render(dummy_project, "```python\nprint(\"test\")\n```") == expected_result
Beispiel #30
0
def test_render_wiki_strong():
    assert render(dummy_project, "**test**") == "<p><strong>test</strong></p>"
    assert render(dummy_project, "__test__") == "<p><strong>test</strong></p>"
Beispiel #31
0
def test_render_wikilink_1():
    expected_result = "<p><a class=\"reference wiki\" href=\"http://localhost:9001/project/test/wiki/test\" title=\"test\">test</a></p>"
    assert render(dummy_project, "[[test]]") == expected_result
Beispiel #32
0
def test_render_url_autolinks():
    expected_result = "<p>Test the <a href=\"http://example.com/\" target=\"_blank\">http://example.com/</a> autolink</p>"
    source = "Test the http://example.com/ autolink"
    assert render(dummy_project, source) == expected_result
Beispiel #33
0
def test_render_wikilink_with_custom_title():
    expected_result = "<p><a class=\"reference wiki\" href=\"http://localhost:9001/project/test/wiki/test\" title=\"custom\">custom</a></p>"
    assert render(dummy_project, "[[test|custom]]") == expected_result
Beispiel #34
0
def test_render_url_automail():
    expected_result = "<p>Test the <a href=\"mailto:[email protected]\" target=\"_blank\">[email protected]</a> automail</p>"
    source = "Test the [email protected] automail"
    assert render(dummy_project, source) == expected_result
Beispiel #35
0
def test_render_wikilink_with_custom_title():
    expected_result = "<p><a class=\"wikilink\" href=\"/project/test/wiki/test\">custom</a></p>"
    assert render(dummy_project, "[[test|custom]]") == expected_result
Beispiel #36
0
def test_render_relative_image():
    assert render(
        dummy_project,
        "![test](test.png)") == "<p><img alt=\"test\" src=\"test.png\"></p>"
Beispiel #37
0
def test_proccessor_valid_user_mention():
    factories.UserFactory(username="******", full_name="test name")
    result = render(dummy_project, "**@user1**")
    expected_result = "<p><strong><a class=\"mention\" href=\"http://*****:*****@user1</a></strong></p>"
    assert result == expected_result
Beispiel #38
0
def test_proccessor_invalid_reference():
    with patch("taiga.mdrender.extensions.references.get_instance_by_ref"
               ) as mock:
        mock.return_value = None
        result = render(dummy_project, "**#5**")
        assert result == "<p><strong>#5</strong></p>"
Beispiel #39
0
def test_proccessor_invalid_user_mention():
    result = render(dummy_project, "**@notvaliduser**")
    assert result == '<p><strong>@notvaliduser</strong></p>'
Beispiel #40
0
def test_render_wiki_italic():
    assert render(dummy_project, "*test*") == "<p><em>test</em></p>"
    assert render(dummy_project, "_test_") == "<p><em>test</em></p>"
Beispiel #41
0
def test_proccessor_valid_email():
    result = render(dummy_project, "**[email protected]**")
    expected_result = "<p><strong><a href=\"mailto:[email protected]\" target=\"_blank\">[email protected]</a></strong></p>"
    assert result == expected_result
Beispiel #42
0
def test_render_wikilink_3():
    expected_result = "<p><a class=\"reference wiki\" href=\"http://localhost:9001/project/test/wiki/testpage\" title=\"TestPage\">TestPage</a></p>"
    assert render(dummy_project, "[[TestPage]]") == expected_result
Beispiel #43
0
def mdrender(project, text) -> str:
    if text:
        return Markup(render(project, text))
    return ""
Beispiel #44
0
def test_render_wikilink_slug_to_wikipages():
    expected_result = "<p><a class=\"reference wiki\" href=\"http://localhost:9001/project/test/wiki/wiki_page\" title=\"wiki page\">wiki</a></p>"
    assert render(dummy_project, "[wiki](wiki_page \"wiki page\")") == expected_result
Beispiel #45
0
def test_render_wiki_strike():
    assert render(dummy_project, "~~test~~") == "<p><del>test</del></p>"
Beispiel #46
0
def test_render_reference_links():
    expected_result = "<p>An <a href=\"http://example.com/\" target=\"_blank\" title=\"Title\">example</a> of reference link</p>"
    source = "An [example][id] of reference link\n  [id]: http://example.com/  \"Title\""
    assert render(dummy_project, source) == expected_result
Beispiel #47
0
def test_render_wikilink_1():
    expected_result = "<p><a class=\"reference wiki\" href=\"http://localhost:9001/project/test/wiki/test\" title=\"test\">test</a></p>"
    assert render(dummy_project, "[[test]]") == expected_result
Beispiel #48
0
def test_render_url_autolinks_without_http():
    expected_result = "<p>Test the <a href=\"http://www.example.com\" target=\"_blank\">www.example.com</a> autolink</p>"
    source = "Test the www.example.com autolink"
    assert render(dummy_project, source) == expected_result
Beispiel #49
0
def test_proccessor_invalid_reference():
    with patch("taiga.mdrender.extensions.references.get_instance_by_ref") as mock:
        mock.return_value = None
        result = render(dummy_project, "**#5**")
        assert result == "<p><strong>#5</strong></p>"
Beispiel #50
0
def test_render_absolute_image():
    assert render(dummy_project, "![test](/test.png)") == "<p><img alt=\"test\" src=\"/test.png\"></p>"
Beispiel #51
0
def test_render_wiki_italic():
    assert render(dummy_project, "*test*") == "<p><em>test</em></p>"
    assert render(dummy_project, "_test_") == "<p><em>test</em></p>"
Beispiel #52
0
def test_render_triple_quote_and_lang_code():
    expected_result = "<div class=\"codehilite\"><pre><span class=\"k\">print</span><span class=\"p\">(</span><span class=\"s\">\"test\"</span><span class=\"p\">)</span>\n</pre></div>"
    assert render(dummy_project, "```python\nprint(\"test\")\n```") == expected_result
def test_render_triple_quote_code():
    expected_result = "<div class=\"codehilite\"><pre><span class=\"n\">print</span><span class=\"p\">(</span><span class=\"s\">&quot;test&quot;</span><span class=\"p\">)</span>\n</pre></div>"
    assert render(dummy_project, "```\nprint(\"test\")\n```") == expected_result
Beispiel #54
0
def test_render_wikilink_3():
    expected_result = "<p><a class=\"reference wiki\" href=\"http://localhost:9001/project/test/wiki/testpage\" title=\"TestPage\">TestPage</a></p>"
    assert render(dummy_project, "[[TestPage]]") == expected_result
Beispiel #55
0
def test_render_wikilink_relative_to_absolute():
    expected_result = "<p><a href=\"http://localhost:9001/project/test/\">test project</a></p>"
    assert render(dummy_project,
                  "[test project](/project/test/)") == expected_result
Beispiel #56
0
def test_render_wiki_strong():
    assert render(dummy_project, "**test**") == "<p><strong>test</strong></p>"
    assert render(dummy_project, "__test__") == "<p><strong>test</strong></p>"
Beispiel #57
0
def test_render_wikilink_with_custom_title():
    expected_result = "<p><a class=\"reference wiki\" href=\"http://localhost:9001/project/test/wiki/test\" title=\"custom\">custom</a></p>"
    assert render(dummy_project, "[[test|custom]]") == expected_result
Beispiel #58
0
def test_render_wiki_strike():
    assert render(dummy_project, "~~test~~") == "<p><del>test</del></p>"
Beispiel #59
0
def test_render_wikilink_slug_to_wikipages():
    expected_result = "<p><a class=\"reference wiki\" href=\"http://localhost:9001/project/test/wiki/wiki_page\" title=\"wiki page\">wiki</a></p>"
    assert render(dummy_project,
                  "[wiki](wiki_page \"wiki page\")") == expected_result