import unittest from prompt_tools.export import validate, wrap class ExportTests(unittest.TestCase): def test_bad_bundle(self): for bundle in [{}, {"version": 1, "slides": []}, {"version": 1, "slides": [{}]}]: with self.assertRaises(ValueError): validate(bundle) def test_wrap_preserves_content(self): class Draw: def textlength(self, text, font): return len(text) self.assertEqual(wrap(Draw(), "中文内容测试", None, 3), ["中文内", "容测试"]) def test_valid_bundle(self): slides = [{"heading": "标题", "body": "正文", "color": "#fff"}] self.assertEqual(validate({"version": 1, "slides": slides}), slides)