(self)
| 1567 | self.assertFalse(reuse == 0, "failed to set reuse mode") |
| 1568 | |
| 1569 | def test_setsockopt_errors(self): |
| 1570 | # See issue #107546. |
| 1571 | sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) |
| 1572 | self.addCleanup(sock.close) |
| 1573 | |
| 1574 | sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) # No error expected. |
| 1575 | |
| 1576 | with self.assertRaises(OverflowError): |
| 1577 | sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 2 ** 100) |
| 1578 | |
| 1579 | with self.assertRaises(OverflowError): |
| 1580 | sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, - 2 ** 100) |
| 1581 | |
| 1582 | with self.assertRaises(OverflowError): |
| 1583 | sock.setsockopt(socket.SOL_SOCKET, 2 ** 100, 1) |
| 1584 | |
| 1585 | with self.assertRaises(OverflowError): |
| 1586 | sock.setsockopt(2 ** 100, socket.SO_REUSEADDR, 1) |
| 1587 | |
| 1588 | with self.assertRaisesRegex(TypeError, "socket option should be int, bytes-like object or None"): |
| 1589 | sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, dict()) |
| 1590 | |
| 1591 | with self.assertRaisesRegex(TypeError, "requires 4 arguments when the third argument is None"): |
| 1592 | sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, None) |
| 1593 | |
| 1594 | with self.assertRaisesRegex(TypeError, "only takes 4 arguments when the third argument is None"): |
| 1595 | sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1, 2) |
| 1596 | |
| 1597 | with self.assertRaisesRegex(TypeError, "takes at least 3 arguments"): |
| 1598 | sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR) |
| 1599 | |
| 1600 | with self.assertRaisesRegex(TypeError, "takes at most 4 arguments"): |
| 1601 | sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1, 2, 3) |
| 1602 | |
| 1603 | def testSendAfterClose(self): |
| 1604 | # testing send() after close() with timeout |
nothing calls this directly
no test coverage detected