def METHOD_NAME(self):
    r = 2
    sphere = Sphered(r)
    # Fully below
    plane = Planed(Vector3d(0, 0, 1), Vector2d(4, 4), 2*r)
    self.assertAlmostEqual(sphere.volume(), sphere.volume_below(plane), delta=1e-3)
    # Fully below (because plane is rotated down)
    plane = Planed(Vector3d(0, 0, -1), Vector2d(4, 4), 2*r)
    self.assertAlmostEqual(sphere.volume(), sphere.volume_below(plane), delta=1e-3)
    # Fully above
    plane = Planed(Vector3d(0, 0, 1), Vector2d(4, 4), -2*r)
    self.assertAlmostEqual(sphere.volume_below(plane), 0, 1e-3)
    # Hemisphere
    plane = Planed(Vector3d(0, 0, 1), 0)
    self.assertAlmostEqual(sphere.volume() / 2, sphere.volume_below(plane), delta=1e-3)
    # Vertical plane
    plane = Planed(Vector3d(1, 0, 0), 0)
    self.assertAlmostEqual(sphere.volume() / 2, sphere.volume_below(plane), delta=1e-3)
    # Expectations from https:#planetcalc.com/283/
    plane = Planed(Vector3d(0, 0, 1), 0.5)
    self.assertAlmostEqual(22.90745, sphere.volume_below(plane), delta=1e-3)
    plane = Planed(Vector3d(0, 0, 1), -0.5)
    self.assertAlmostEqual(10.60288, sphere.volume_below(plane), delta=1e-3)