From be6860eef9f4cdc8fab85daaca72c202a4e1d4b9 Mon Sep 17 00:00:00 2001 From: AntoineM Date: Mon, 26 Oct 2020 23:35:37 +0100 Subject: [PATCH 1/5] Add Check for document with title of level 3+ but no title of level 2 (#24) How do I check it works ? --- campbot/checkers.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/campbot/checkers.py b/campbot/checkers.py index f5c6ba1..a04b69f 100644 --- a/campbot/checkers.py +++ b/campbot/checkers.py @@ -276,6 +276,7 @@ def get_fixed_tests(lang): RouteTypeTest(), DistanceTest(), QualityTest(), + TitleLevel(), ] @@ -486,3 +487,24 @@ def __init__(self): def test_contribution(self, old_doc, new_doc): return old_doc.quality == new_doc.quality + +class TitleLevel(object): + def __init__(self): + self.name = "Titre de niveau trop élevé" + self.fail_marker = emoji("/uploads/default/original/2X/0/0178043b1b70e669946f609571bd4b8f7d18e820.png", + self.name) + self.success_marker = "" + + def __call__(self, contrib, old_version, new_version): + if old_version is None or new_version is None: + return True, True + + old_doc = old_version.document + new_doc = new_version.document + + if "redirects_to" in old_doc or "redirects_to" in new_doc: + return True, True + + title = not new_doc.search( r"(^|\n)##[^#]") == None + subtitle = not new_doc.search(r"(^|\n)###*" == None + return True, not subtitle or title From 59ae189103b3c6dc61333b8af2d555f2f910042b Mon Sep 17 00:00:00 2001 From: AntoineM Date: Thu, 12 Nov 2020 16:30:50 +0100 Subject: [PATCH 2/5] Update campbot/checkers.py Co-authored-by: Charles de Beauchesne --- campbot/checkers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/campbot/checkers.py b/campbot/checkers.py index a04b69f..7d2f702 100644 --- a/campbot/checkers.py +++ b/campbot/checkers.py @@ -505,6 +505,6 @@ def __call__(self, contrib, old_version, new_version): if "redirects_to" in old_doc or "redirects_to" in new_doc: return True, True - title = not new_doc.search( r"(^|\n)##[^#]") == None + has_level2 = not new_doc.search( r"(^|\n)##[^#]") == None subtitle = not new_doc.search(r"(^|\n)###*" == None return True, not subtitle or title From fcbf6843130bce3197887d861ff4241c6e18de2d Mon Sep 17 00:00:00 2001 From: AntoineM Date: Thu, 12 Nov 2020 16:31:04 +0100 Subject: [PATCH 3/5] Update campbot/checkers.py Co-authored-by: Charles de Beauchesne --- campbot/checkers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/campbot/checkers.py b/campbot/checkers.py index 7d2f702..8ae4c25 100644 --- a/campbot/checkers.py +++ b/campbot/checkers.py @@ -506,5 +506,5 @@ def __call__(self, contrib, old_version, new_version): return True, True has_level2 = not new_doc.search( r"(^|\n)##[^#]") == None - subtitle = not new_doc.search(r"(^|\n)###*" == None + has_level3_or_more = not new_doc.search(r"(^|\n)###*" == None return True, not subtitle or title From 1c8238776aa77ea80b466d1bdf256de1abafd1dc Mon Sep 17 00:00:00 2001 From: AntoineM Date: Thu, 12 Nov 2020 16:31:28 +0100 Subject: [PATCH 4/5] Update campbot/checkers.py Co-authored-by: Charles de Beauchesne --- campbot/checkers.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/campbot/checkers.py b/campbot/checkers.py index 8ae4c25..f35cc0a 100644 --- a/campbot/checkers.py +++ b/campbot/checkers.py @@ -507,4 +507,10 @@ def __call__(self, contrib, old_version, new_version): has_level2 = not new_doc.search( r"(^|\n)##[^#]") == None has_level3_or_more = not new_doc.search(r"(^|\n)###*" == None - return True, not subtitle or title + def check(doc): + has_level2 = doc.search( r"(^|\n)##[^#]") is not None + has_level3_or_more = doc.search(r"(^|\n)###*" is not None + + return not has_level2 and has_level3_or_more + + return check(old_doc), check(new_doc) From 328961ef78f7be583c7d06ebfdf355bc877e284d Mon Sep 17 00:00:00 2001 From: AntoineM Date: Thu, 26 Nov 2020 18:24:01 +0100 Subject: [PATCH 5/5] Update checkers.py --- campbot/checkers.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/campbot/checkers.py b/campbot/checkers.py index f35cc0a..e3d6fae 100644 --- a/campbot/checkers.py +++ b/campbot/checkers.py @@ -491,7 +491,7 @@ def test_contribution(self, old_doc, new_doc): class TitleLevel(object): def __init__(self): self.name = "Titre de niveau trop élevé" - self.fail_marker = emoji("/uploads/default/original/2X/0/0178043b1b70e669946f609571bd4b8f7d18e820.png", + self.fail_marker = emoji("H", self.name) self.success_marker = "" @@ -505,12 +505,10 @@ def __call__(self, contrib, old_version, new_version): if "redirects_to" in old_doc or "redirects_to" in new_doc: return True, True - has_level2 = not new_doc.search( r"(^|\n)##[^#]") == None - has_level3_or_more = not new_doc.search(r"(^|\n)###*" == None - def check(doc): - has_level2 = doc.search( r"(^|\n)##[^#]") is not None - has_level3_or_more = doc.search(r"(^|\n)###*" is not None + def check(doc): + has_level2 = doc.search( r"(^|\n)##[^#]") is not None + has_level3_or_more = doc.search(r"(^|\n)###*" is not None - return not has_level2 and has_level3_or_more + return not has_level2 and has_level3_or_more return check(old_doc), check(new_doc)