def test_linear_quantizer_compression_blockwise_corner_case(self):
        """
        When the input data is [-2, -10, 6, -3], the
            np.round(quantized_data / scale) + np.round(zero_point)
        AND
            np.round(quantized_data / scale + zero_point)
        is different ([-1, -8, 7, -2] vs [0, -8, 7, -1]), while we follow PyTorch to use the former.
        """
        original_data = np.array([-2, -10, 6, -3]).astype(np.float32)
        params = quantization.linear_quantize_weights.blockwise_compress(
            original_data,
            nbits=4,
            block_sizes=[4],
            mode="LINEAR",
            signed=True,
        )
        expected_quantized_data = np.array([-1, -8, 7, -2], dtype=np.int8)
        np.testing.assert_equal(params.data, expected_quantized_data)

        When the input data is [-2, -10, 6, -3], the
            np.round(quantized_data / scale) + np.round(zero_point)
        AND
            np.round(quantized_data / scale + zero_point)
        is different ([-1, -8, 7, -2] vs [0, -8, 7, -1]), while we follow PyTorch to use the former.
        
coremltools/test/optimize/coreml/test_passes.py