Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions Lib/platform.py
Original file line number Diff line number Diff line change
Expand Up @@ -798,9 +798,10 @@ def __iter__(self):
)

def __getitem__(self, key):
if key == 5:
return self.processor
return super().__getitem__(key)
return tuple(iter(self))[key]

def __len__(self):
return len(tuple(iter(self)))


_uname_cache = None
Expand Down
7 changes: 7 additions & 0 deletions Lib/test/test_platform.py
Original file line number Diff line number Diff line change
Expand Up @@ -154,11 +154,18 @@ def test_uname(self):
res = platform.uname()
self.assertTrue(any(res))
self.assertEqual(res[0], res.system)
self.assertEqual(res[-6], res.system)
self.assertEqual(res[1], res.node)
self.assertEqual(res[-5], res.node)
self.assertEqual(res[2], res.release)
self.assertEqual(res[-4], res.release)
self.assertEqual(res[3], res.version)
self.assertEqual(res[-3], res.version)
self.assertEqual(res[4], res.machine)
self.assertEqual(res[-2], res.machine)
self.assertEqual(res[5], res.processor)
self.assertEqual(res[-1], res.processor)
self.assertEqual(len(res), 6)

@unittest.skipIf(sys.platform in ['win32', 'OpenVMS'], "uname -p not used")
def test_uname_processor(self):
Expand Down