code: def test_op(self, opname, cases, test_length):
      xloc, xlen, yloc, ylen, _, _ = cases
      sparse_op = getattr(splib, f"sparse_{opname}_float64")
      python_op = getattr(operator, opname)
  
      xindex = BlockIndex(test_length, xloc, xlen)
      yindex = BlockIndex(test_length, yloc, ylen)
  
      xdindex = xindex.to_int_index()
      ydindex = yindex.to_int_index()
  
      x = np.arange(xindex.npoints) * 10.0 + 1
      y = np.arange(yindex.npoints) * 100.0 + 1
  
      xfill = 0
      yfill = 2
  
      result_block_vals, rb_index, bfill = sparse_op(
          x, xindex, xfill, y, yindex, yfill
      )
      result_int_vals, ri_index, ifill = sparse_op(
          x, xdindex, xfill, y, ydindex, yfill
      )
  
      assert rb_index.to_int_index().equals(ri_index)
      tm.assert_numpy_array_equal(result_block_vals, result_int_vals)
      assert bfill == ifill
  
      # check versus Series...
      xseries = Series(x, xdindex.indices)
      xseries = xseries.reindex(np.arange(test_length)).fillna(xfill)
  
      yseries = Series(y, ydindex.indices)
      yseries = yseries.reindex(np.arange(test_length)).fillna(yfill)
  
      series_result = python_op(xseries, yseries)
      series_result = series_result.reindex(ri_index.indices)
  
      tm.assert_numpy_array_equal(
          result_block_vals, series_result.values
      )
      tm.assert_numpy_array_equal(result_int_vals, series_result.values)
  
imports: import operator
  import numpy
  import pytest
  import pandas._libs.sparse
  import pandas.util._test_decorators
  from pandas import Series
  import pandas._testing
  from pandas.core.arrays.sparse import BlockIndex, IntIndex, make_sparse_index
label_desc: Use image node_id 1 for calling the TestSparseOperators obj's underlying member method code with example usage: obj.test_op(opname, cases, test_length) without return types