pull/13/head
Mike Fährmann 9 years ago
parent 99b4fbb081
commit eeae580781
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88

@ -89,5 +89,37 @@ class TestText(unittest.TestCase):
self.assertEqual(text.shorten_filename(case), result)
self.assertTrue(len(text.shorten_filename(case).encode(enc)) <= 255)
def test_extract(self):
cases = {
("<a><b>", "<", ">") : ("a", 3),
("<a><b>", "X", ">") : (None, 0),
("<a><b>", "<", "X") : (None, 0),
("<a><b>", "<", ">", 3): ("b", 6),
("<a><b>", "X", ">", 3): (None, 3),
("<a><b>", "<", "X", 3): (None, 3),
}
for case, result in cases.items():
self.assertEqual(text.extract(*case), result)
def test_extract_all(self):
txt = "[c][b][a]: xyz! [d][e"
result = ({
"A": "a",
"B": "b",
"X": "xyz",
"E": "xtra",
}, 15)
self.assertEqual(text.extract_all(txt, (
(None, "[", "]"),
("B" , "[", "]"),
("A" , "[", "]"),
("X" , ": ", "!"),
), values={"E": "xtra"}), result)
def test_extract_iter(self):
txt = "[c][b][a]: xyz! [d][e"
result = ["c", "b", "a", "d"]
self.assertEqual(list(text.extract_iter(txt, "[", "]")), result)
if __name__ == '__main__':
unittest.main()

Loading…
Cancel
Save