MCPcopy Index your code
hub / github.com/RustPython/RustPython / checkRecvmsgFDs

Method checkRecvmsgFDs

Lib/test/test_socket.py:3983–4008  ·  view source on GitHub ↗
(self, numfds, result, maxcmsgs=1, ignoreflags=0)

Source from the content-addressed store, hash-verified

3981 len(MSG))
3982
3983 def checkRecvmsgFDs(self, numfds, result, maxcmsgs=1, ignoreflags=0):
3984 # Check that constant MSG was received with numfds file
3985 # descriptors in a maximum of maxcmsgs control messages (which
3986 # must contain only complete integers). By default, check
3987 # that MSG_CTRUNC is unset, but ignore any flags in
3988 # ignoreflags.
3989 msg, ancdata, flags, addr = result
3990 self.assertEqual(msg, MSG)
3991 self.checkRecvmsgAddress(addr, self.cli_addr)
3992 self.checkFlags(flags, eor=True, checkunset=socket.MSG_CTRUNC,
3993 ignore=ignoreflags)
3994
3995 self.assertIsInstance(ancdata, list)
3996 self.assertLessEqual(len(ancdata), maxcmsgs)
3997 fds = array.array("i")
3998 for item in ancdata:
3999 self.assertIsInstance(item, tuple)
4000 cmsg_level, cmsg_type, cmsg_data = item
4001 self.assertEqual(cmsg_level, socket.SOL_SOCKET)
4002 self.assertEqual(cmsg_type, socket.SCM_RIGHTS)
4003 self.assertIsInstance(cmsg_data, bytes)
4004 self.assertEqual(len(cmsg_data) % SIZEOF_INT, 0)
4005 fds.frombytes(cmsg_data)
4006
4007 self.assertEqual(len(fds), numfds)
4008 self.checkFDs(fds)
4009
4010 def testFDPassSimple(self):
4011 # Pass a single FD (array read from bytes object).

Callers 7

testFDPassSimpleMethod · 0.95
testMultipleFDPassMethod · 0.95
testFDPassCMSG_SPACEMethod · 0.95
testFDPassCMSG_LENMethod · 0.95
testFDPassSeparateMethod · 0.95
testFDPassEmptyMethod · 0.95

Calls 8

checkFDsMethod · 0.95
lenFunction · 0.85
checkFlagsMethod · 0.80
assertIsInstanceMethod · 0.80
assertLessEqualMethod · 0.80
frombytesMethod · 0.80
assertEqualMethod · 0.45
checkRecvmsgAddressMethod · 0.45

Tested by

no test coverage detected