import PyOrgMode import tempfile import unittest class TestParser(unittest.TestCase): """Test the org file parser with a simple org structure""" def setUp(self): """Parse the org structure from a temporary file""" orgfile = tempfile.NamedTemporaryFile() orgfile.write('\n'.join(( '* one', '* two', '** two point one', '* three', '')).encode('UTF-8')) orgfile.flush() self.tree = PyOrgMode.OrgDataStructure() try: self.tree.load_from_file(orgfile.name) finally: orgfile.close() def test_has_three_top_level_headings(self): """The example has three top-level headings""" self.assertEqual(len(self.tree.root.content), 3) def test_second_item_has_a_subheading(self): """The second top-level heading has one subheading""" self.assertEqual(len(self.tree.root.content[1].content), 1) if __name__ == '__main__': unittest.main()