// lang-fr.el - French NLG tests: assertion, question inversion, description.
//
// Tests SVO declarative order and subject-verb inversion for questions
// (strategy="inversion" for French in gram_question_strategy).
//
// Expected outputs (approximate):
//   assert:      "Le chat mange le poisson."
//   question:    "Mange le chat le poisson?"   (verb-subject inversion)
//   description: "Le chat est grand."

fn test_assert() -> String {
    let frame: [String] = sem_frame_lang("assert", "le chat", "manger", "", "fr")
    return sem_realize(frame)
}

fn test_question() -> String {
    // French question: inversion strategy — verb fronts before subject
    let frame: [String] = sem_frame_lang("query", "le chat", "manger", "", "fr")
    return sem_realize(frame)
}

fn test_description() -> String {
    let frame: [String] = sem_frame_lang("describe", "le chat", "grand", "", "fr")
    return sem_realize(frame)
}

println(test_assert())
println(test_question())
println(test_description())
