code: def _check_numeric_ops(self, a, b, a_dense, b_dense, mix: bool, op):
      # Check that arithmetic behavior matches non-Sparse Series arithmetic
  
      if isinstance(a_dense, np.ndarray):
          expected = op(pd.Series(a_dense), b_dense).values
      elif isinstance(b_dense, np.ndarray):
          expected = op(a_dense, pd.Series(b_dense)).values
      else:
          raise NotImplementedError
  
      with np.errstate(invalid="ignore", divide="ignore"):
          if mix:
              result = op(a, b_dense).to_dense()
          else:
              result = op(a, b).to_dense()
  
      self._assert(result, expected)
  
imports: import operator
  import numpy
  import pytest
  import pandas
  from pandas import SparseDtype
  import pandas._testing
  from pandas.core.arrays.sparse import SparseArray
label_desc: Use image node_id 2 for calling the TestSparseArrayArithmetics obj's underlying member method code with example usage: obj._check_numeric_ops(a, b, a_dense, b_dense, mix, op) without return types