code: def testCohesiveBlocks1(self):
      # Taken from the igraph R manual
      g = Graph.Full(4) + Graph(2) + [(3, 4), (4, 5), (4, 2)]
      g *= 3
      g += [(0, 6), (1, 7), (0, 12), (4, 0), (4, 1)]
  
      cbs = g.cohesive_blocks()
      self.genericTests(cbs)
      self.assertEqual(
          sorted(cbs),
          [
              list(range(0, 5)),
              list(range(18)),
              [0, 1, 2, 3, 4, 6, 7, 8, 9, 10],
              list(range(6, 10)),
              list(range(12, 16)),
              list(range(12, 17)),
          ],
      )
      self.assertEqual(cbs.cohesions(), [1, 2, 2, 4, 3, 3])
      self.assertEqual(
          cbs.max_cohesions(),
          [4, 4, 4, 4, 4, 1, 3, 3, 3, 3, 2, 1, 3, 3, 3, 3, 2, 1],
      )
      self.assertEqual(cbs.parents(), [None, 0, 0, 1, 2, 1])
  
imports: import math
  import random
  import unittest
  from igraph import Clustering, CohesiveBlocks, Cover, Graph, Histogram, InternalError, UniqueIdGenerator, VertexClustering, compare_communities, split_join_distance, set_random_number_generator
label_desc: Use image node_id 2 for calling the CohesiveBlocksTests obj's underlying member method code with example usage: obj.testCohesiveBlocks1() without return types