From 62d0aa159fc046a27bed47e337d787a08f4687d0 Mon Sep 17 00:00:00 2001 From: Sunaina Pai Date: Sat, 17 Mar 2018 14:45:21 +0530 Subject: Add makesite: A simple static site generator --- test/test_headers.py | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 test/test_headers.py (limited to 'test/test_headers.py') diff --git a/test/test_headers.py b/test/test_headers.py new file mode 100644 index 0000000..56eeb4a --- /dev/null +++ b/test/test_headers.py @@ -0,0 +1,43 @@ +import unittest +import makesite + + +class HeaderTest(unittest.TestCase): + """Tests for read_headers() function.""" + + def test_single_header(self): + text = '' + headers = list(makesite.read_headers(text)) + self.assertEqual(headers, [('key1', 'val1', 19)]) + + def test_multiple_headers(self): + text = '\n' + headers = list(makesite.read_headers(text)) + self.assertEqual(headers, [('key1', 'val1', 20), ('key2', 'val2', 38)]) + + def test_headers_and_text(self): + text = '\n\nFoo\n' + headers = list(makesite.read_headers(text)) + self.assertEqual(headers, [('a', '1', 14), ('b', '2', 28)]) + + def test_headers_and_blank_line(self): + text = '\n\n\n\n' + headers = list(makesite.read_headers(text)) + self.assertEqual(headers, [('a', '1', 14), + ('b', '2', 29), + ('c', '3', 43)]) + + def test_multiline_header(self): + text = '\n' + headers = list(makesite.read_headers(text)) + self.assertEqual(headers, [('a', '1', 13), + ('b', '2', 27), + ('c', '3', 40)]) + + def test_no_header(self): + headers = list(makesite.read_headers('Foo')) + self.assertEqual(headers, []) + + def test_empty_string(self): + headers = list(makesite.read_headers('')) + self.assertEqual(headers, []) -- cgit v1.2.3