From 75c234be4b5b782e3dabcb023cfc67d4001feb1b Mon Sep 17 00:00:00 2001 From: Fred Pauchet Date: Tue, 20 Oct 2020 11:27:08 +0200 Subject: [PATCH] Review `base` application Remove unnecessar comments Refactor small pieces of code Add `tests.py` for Markdown -> HTML conversio --- src/base/models.py | 19 ++++++++----------- src/base/tests.py | 16 ++++++++++++++++ 2 files changed, 24 insertions(+), 11 deletions(-) create mode 100644 src/base/tests.py diff --git a/src/base/models.py b/src/base/models.py index ea61b77..5cad5ab 100644 --- a/src/base/models.py +++ b/src/base/models.py @@ -1,8 +1,13 @@ +"""Ensemble des classes d'utilité publique :-)""" + from django.db import models + import markdown class Markdownizable(models.Model): + """Classe abstraite ajoutant un champ `information`, convertible de .md -> .html.""" + class Meta: abstract = True @@ -14,14 +19,6 @@ class Markdownizable(models.Model): ) def to_markdown(self): - """ - Convertit le commentaire associé au `skill` en (Github-flavored) Markdown. - """ - # parser = CommonMark.DocParser() - # ast = parser.parse(self.information) - - html = markdown.markdown(self.information) - - return html - - # return CommonMark.HTMLRenderer().render(ast) + """Convertit le champ `information` en (Github-flavored) Markdown.""" + + return markdown.markdown(self.information) diff --git a/src/base/tests.py b/src/base/tests.py new file mode 100644 index 0000000..efcab21 --- /dev/null +++ b/src/base/tests.py @@ -0,0 +1,16 @@ +"""Tests associés à la conversion de contenu Markdown en HTML.""" + +from django.test import TestCase + +from .models import Markdownizable + + +class TestMarkdownizable(TestCase): + """Vérifie les fonctionnalités associées à la classe Markdownizable. + """ + + def test_to_markdown(self): + """Vérifie qu'un contenu Markdown est correctement convertit en HTML.""" + m = Markdownizable(information="# Title") + + self.assertEqual(m.to_markdown(), "

Title

")