code: def testBoundaries(self):
      layout = Layout([(0, 0, 1), (0, 1, 0), (1, 0, 0), (2, 1, 3)])
      self.assertEqual(layout.boundaries(), ([0, 0, 0], [2, 1, 3]))
      self.assertEqual(layout.boundaries(1), ([-1, -1, -1], [3, 2, 4]))
  
      layout = Layout([])
      self.assertRaises(ValueError, layout.boundaries)
      layout = Layout([], dim=3)
      self.assertRaises(ValueError, layout.boundaries)
  
imports: import unittest
  from math import hypot
  from igraph import Graph, Layout, BoundingBox, InternalError
  from igraph import umap_compute_weights
label_desc: Use image node_id 6 for calling the LayoutTests obj's underlying member method code with example usage: obj.testBoundaries() without return types