Skip to content

Commit

Permalink
Update evaluate _title_rule function to use normalize helper function…
Browse files Browse the repository at this point in the history
…; add regression test_title_rule
  • Loading branch information
servilla committed Feb 17, 2024
1 parent 99579d9 commit f0fe4b0
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 1 deletion.
3 changes: 2 additions & 1 deletion src/metapype/eml/evaluate.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

from metapype.eml import names
from metapype.model.node import Node
from metapype.model.normalize import normalize
from metapype.eml.evaluation_warnings import EvaluationWarning


Expand Down Expand Up @@ -350,7 +351,7 @@ def _title_rule(node: Node) -> list:
title = node.content
if title is not None:
if node.parent is not None and node.parent.name == names.DATASET:
length = len(title.strip().split(" "))
length = len(normalize(title).split(" "))
if length < 5:
evaluation.append((
EvaluationWarning.TITLE_TOO_SHORT,
Expand Down
33 changes: 33 additions & 0 deletions tests/test_evaluate.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
:Mod:
test_evaluate
:Synopsis:
:Author:
servilla
:Created:
2/17/24
"""
import daiquiri


from metapype.eml import evaluate
from metapype.eml import names
from metapype.model.node import Node


logger = daiquiri.getLogger(__name__)


def test_title_rule():
dataset = Node(names.DATASET)
title = Node(names.TITLE, parent=dataset)
title.content = "Test Title too short"
assert len(evaluate._title_rule(title)) != 0
title.content = "This test title is long enough so that it should not fail the tile rule"
assert len(evaluate._title_rule(title)) == 0

0 comments on commit f0fe4b0

Please sign in to comment.