def METHOD_NAME(self):
    op = OpSplitRequestsBlockwise(False, graph=self.g)
    op.Input.connect(self.piper.Output)
    op.BlockShape.setValue((10, 15, 20))
    op.Output[0:20, 30:45, 10:30].wait()
    slot = self.piper.Output
    expected = [
        SubRegion(slot, (0, 30, 10), (10, 45, 20)),
        SubRegion(slot, (0, 30, 20), (10, 45, 30)),
        SubRegion(slot, (10, 30, 10), (20, 45, 20)),
        SubRegion(slot, (10, 30, 20), (20, 45, 30)),
    ]
    for roi in expected:
        filtered = [x for x in self.piper.requests if x == roi]
        assert len(filtered) == 1, "missing roi {}".format(roi)
    self.piper.requests = []
    op.Output[5:14, 32:44, 17:21].wait()
    expected = [
        SubRegion(slot, (5, 32, 17), (10, 44, 20)),
        SubRegion(slot, (5, 32, 20), (10, 44, 21)),
        SubRegion(slot, (10, 32, 17), (14, 44, 20)),
        SubRegion(slot, (10, 32, 20), (14, 44, 21)),
    ]
    for roi in expected:
        filtered = [x for x in self.piper.requests if x == roi]
        assert len(filtered) == 1, "missing roi {}".format(roi)