plint

French poetry validator (local mirror of https://gitlab.com/a3nm/plint)
git clone https://a3nm.net/git/plint/
Log | Files | Refs | README

test_hiatus.py (1318B)


      1 import unittest
      2 
      3 import plint.pattern
      4 from plint import verse, template
      5 
      6 
      7 class Hiatus(unittest.TestCase):
      8     def testBadVowel(self):
      9         v = verse.Verse("patati patata patata arbrisseau", template.Template(), plint.pattern.Pattern("12"))
     10         v.parse()
     11         self.assertFalse(v.valid())
     12 
     13     def testBadUnaspirated(self):
     14         v = verse.Verse("patati patata patata hirondelle", template.Template(), plint.pattern.Pattern("12"))
     15         v.parse()
     16         self.assertFalse(v.valid())
     17 
     18     def testGoodAspirated(self):
     19         v = verse.Verse("patati patata patata tata hache", template.Template(), plint.pattern.Pattern("12"))
     20         v.parse()
     21         self.assertTrue(v.valid())
     22 
     23     def testGoodConsonant(self):
     24         v = verse.Verse("patati patata patatah arbrisseau", template.Template(), plint.pattern.Pattern("12"))
     25         v.parse()
     26         self.assertTrue(v.valid())
     27 
     28     def testGoodMuteE(self):
     29         v = verse.Verse("patati patata patatue arbrisseau", template.Template(), plint.pattern.Pattern("12"))
     30         v.parse()
     31         self.assertTrue(v.valid())
     32 
     33     def testBadEt(self):
     34         v = verse.Verse("patati patata patata et avant", template.Template(), plint.pattern.Pattern("12"))
     35         v.parse()
     36         self.assertFalse(v.valid())
     37 
     38 
     39 if __name__ == "__main__":
     40     unittest.main()