bpo-31325: Fix usage of namedtuple in RobotFileParser.parse() (GH-452… · python/cpython@ff847d1 (original) (raw)
`@@ -2,7 +2,6 @@
`
2
2
`import os
`
3
3
`import unittest
`
4
4
`import urllib.robotparser
`
5
``
`-
from collections import namedtuple
`
6
5
`from test import support
`
7
6
`from http.server import BaseHTTPRequestHandler, HTTPServer
`
8
7
`try:
`
`@@ -90,6 +89,10 @@ def test_request_rate(self):
`
90
89
`self.parser.crawl_delay(agent), self.crawl_delay
`
91
90
` )
`
92
91
`if self.request_rate:
`
``
92
`+
self.assertIsInstance(
`
``
93
`+
self.parser.request_rate(agent),
`
``
94
`+
urllib.robotparser.RequestRate
`
``
95
`+
)
`
93
96
`self.assertEqual(
`
94
97
`self.parser.request_rate(agent).requests,
`
95
98
`self.request_rate.requests
`
`@@ -111,7 +114,7 @@ class CrawlDelayAndRequestRateTest(BaseRequestRateTest, unittest.TestCase):
`
111
114
`Disallow: /%7ejoe/index.html
`
112
115
` """
`
113
116
`agent = 'figtree'
`
114
``
`-
request_rate = namedtuple('req_rate', 'requests seconds')(9, 30)
`
``
117
`+
request_rate = urllib.robotparser.RequestRate(9, 30)
`
115
118
`crawl_delay = 3
`
116
119
`good = [('figtree', '/foo.html')]
`
117
120
`bad = ['/tmp', '/tmp.html', '/tmp/a.html', '/a%3cd.html', '/a%3Cd.html',
`
`@@ -240,7 +243,7 @@ class DefaultEntryTest(BaseRequestRateTest, unittest.TestCase):
`
240
243
`Request-rate: 3/15
`
241
244
`Disallow: /cyberworld/map/
`
242
245
` """
`
243
``
`-
request_rate = namedtuple('req_rate', 'requests seconds')(3, 15)
`
``
246
`+
request_rate = urllib.robotparser.RequestRate(3, 15)
`
244
247
`crawl_delay = 1
`
245
248
`good = ['/', '/test.html']
`
246
249
`bad = ['/cyberworld/map/index.html']
`