25 lines
647 B
Python
25 lines
647 B
Python
from didactopus.course_ingest import parse_markdown_course, extract_concept_candidates
|
|
from didactopus.rule_policy import RuleContext, build_default_rules, run_rules
|
|
|
|
SAMPLE = '''
|
|
# Sample Course
|
|
|
|
## Module 1
|
|
### Lesson A
|
|
- Objective: Explain Topic A.
|
|
- Exercise: Do task A.
|
|
Topic A body.
|
|
|
|
### Lesson B
|
|
- Objective: Explain Topic B.
|
|
- Exercise: Do task B.
|
|
Topic B body.
|
|
'''
|
|
|
|
def test_rules_run() -> None:
|
|
course = parse_markdown_course(SAMPLE, "Sample Course")
|
|
concepts = extract_concept_candidates(course)
|
|
ctx = RuleContext(course=course, concepts=concepts)
|
|
run_rules(ctx, build_default_rules())
|
|
assert len(ctx.concepts) >= 2
|