Skip to content

Commit 10d2f0b

Browse files
committed
bpo-38243: Update unittest
1 parent 52f2a59 commit 10d2f0b

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

Lib/test/test_docxmlrpc.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from xmlrpc.server import DocXMLRPCServer
22
import http.client
3+
import re
34
import sys
45
import threading
56
import unittest
@@ -193,5 +194,27 @@ def test_annotations(self):
193194
response.read())
194195

195196

197+
class XMLRPCDocGeneratorTest(unittest.TestCase):
198+
def setUp(self):
199+
self.serv = DocXMLRPCServer(("localhost", 0), logRequests=False)
200+
201+
def tearDown(self):
202+
self.serv.server_close()
203+
204+
def test_server_title_escape(self):
205+
self.serv.set_server_title('test_title<script>')
206+
self.serv.set_server_documentation('test_documentation<script>')
207+
self.assertEqual('test_title<script>', self.serv.server_title)
208+
self.assertEqual('test_documentation<script>',
209+
self.serv.server_documentation)
210+
211+
# bpo-38243
212+
generated = self.serv.generate_html_documentation()
213+
title = re.search(r'<title>(.+?)</title>', generated).group()
214+
documentation = re.search(r'<p><tt>(.+?)</tt></p>', generated).group()
215+
self.assertEqual('<title>Python: test_title&lt;script&gt;</title>', title)
216+
self.assertEqual('<p><tt>test_documentation&lt;script&gt;</tt></p>', documentation)
217+
218+
196219
if __name__ == '__main__':
197220
unittest.main()

0 commit comments

Comments
 (0)