code: def test_no_partition_servers(self) -> None:
      ranks = ProcessRanks.from_num_invocations(4, 0)
      self.assertEqual(ranks.trainers, [0, 1, 2, 3])
      self.assertEqual(ranks.parameter_servers, [4, 5, 6, 7])
      self.assertEqual(ranks.parameter_clients, [8, 9, 10, 11])
      self.assertEqual(ranks.lock_server, 12)
      self.assertEqual(ranks.partition_servers, [])
  
imports: from unittest import main, TestCase
  from torchbiggraph.distributed import ProcessRanks
label_desc: Use image node_id 2 for calling the TestProcessRanks obj's underlying member method code with example usage: obj.test_no_partition_servers() without return types