def testBoldBetweenCRs(self): # Serves for all marker-based formatters s = u"abc\n*2*2=4*\ndef" f = Boldfacer(s, 0) frags, next = f.apply() self.assertTrue(u"".join(frags).startswith(u"abc\n<b>2*2=4</b>")) self.assertEqual(next, s.index("\ndef"))
def testBoldBackslash(self): # Serves for all marker-based formatters s = ur"a *\\* b" f = Boldfacer(s, 0) frags, next = f.apply() self.assertEqual(u"".join(frags), ur"a <b>\</b>") # double backslash formatted recursively self.assertEqual(next, s.index(" b"))
def testBoldBOL(self): # Serves for all marker-based formatters s = u"*2*2=4* abc" f = Boldfacer(s, 0) frags, next = f.apply() self.assertTrue(u"".join(frags).startswith(u"<b>2*2=4</b>")) self.assertEqual(next, s.index(" a"))
def testBoldOnlyThing(self): # Serves for all marker-based formatters s = u"*2*2=4*" f = Boldfacer(s, 0) frags, next = f.apply() self.assertEqual(u"".join(frags), u"<b>2*2=4</b>") self.assertEqual(next, len(s))
def testBoldEndingEOL(self): # Serves for all marker-based formatters s = u"abc *2*2=4*" f = Boldfacer(s, 0) frags, next = f.apply() self.assertTrue(u"".join(frags).startswith(u"abc <b>2*2=4</b>")) self.assertEqual(next, len(s))
def testBoldEndingNonWord(self): # Serves for all marker-based formatters s = u"abc *2*2=4*. yeah" f = Boldfacer(s, 0) frags, next = f.apply() self.assertTrue(u"".join(frags).startswith(u"abc <b>2*2=4</b>")) self.assertEqual(next, s.index("."))
def testBold(self): s = u"abc *def* ghi" f = Boldfacer(s, 0) frags, next = f.apply() self.assertTrue(u"".join(frags).startswith(u"abc <b>def</b>")) self.assertEqual(next, s.index(" g"))
def testNonStart(self): s = ur"ab*cd* ef" f = Boldfacer(s, 0) frags, next = f.apply() self.assertEqual(frags, []) self.assertEqual(next, 0)
def testMarkedEscapeInside(self): s = ur"a *bc\* def* ghi" f = Boldfacer(s, 0) frags, next = f.apply() self.assertEqual(u"".join(frags), u"a <b>bc* def</b>") self.assertEqual(next, s.index(" g"))