%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
# Copyright (c) Twisted Matrix Laboratories. # See LICENSE for details. """ Tests for implementations of L{inetdconf}. """ from twisted.runner import inetdconf from twisted.trial import unittest class ServicesConfTests(unittest.TestCase): """ Tests for L{inetdconf.ServicesConf} """ servicesFilename1 = None servicesFilename2 = None def setUp(self): self.servicesFilename1 = self.mktemp() with open(self.servicesFilename1, "w") as f: f.write(""" # This is a comment http 80/tcp www www-http # WorldWideWeb HTTP http 80/udp www www-http http 80/sctp """) self.servicesFilename2 = self.mktemp() with open(self.servicesFilename2, "w") as f: f.write(""" https 443/tcp # http protocol over TLS/SSL """) def test_parseDefaultFilename(self): """ Services are parsed from default filename. """ conf = inetdconf.ServicesConf() conf.defaultFilename = self.servicesFilename1 conf.parseFile() self.assertEqual(conf.services, { ("http", "tcp"): 80, ("http", "udp"): 80, ("http", "sctp"): 80, ("www", "tcp"): 80, ("www", "udp"): 80, ("www-http", "tcp"): 80, ("www-http", "udp"): 80, }) def test_parseFile(self): """ Services are parsed from given C{file}. """ conf = inetdconf.ServicesConf() with open(self.servicesFilename2) as f: conf.parseFile(f) self.assertEqual(conf.services, { ("https", "tcp"): 443, })