code: def test_frexp():
      t1 = ones((3, 4, 5), chunk_size=2)
      t2 = empty((3, 4, 5), dtype=np.float_, chunk_size=2)
      op_type = type(t1.op)
  
      o1, o2 = frexp(t1)
  
      assert o1.op is o2.op
      assert o1.dtype != o2.dtype
  
      o1, o2 = frexp(t1, t1)
  
      assert o1 is t1
      assert o1.inputs[0] is not t1
      assert isinstance(o1.inputs[0].op, op_type)
      assert o2.inputs[0] is not t1
  
      o1, o2 = frexp(t1, t2, where=t1 > 0)
  
      op_type = type(t2.op)
      assert o1 is t2
      assert o1.inputs[0] is not t1
      assert isinstance(o1.inputs[0].op, op_type)
      assert o2.inputs[0] is not t1
  
imports: import numpy
  import pytest
  import scipy.sparse
  from ....core import enter_mode, tile
  from ...datasource import array, ones, tensor, empty
  from ...fetch import TensorFetch
  from ...linalg import matmul
  from ...core import Tensor, SparseTensor
  from ..None import add, subtract, truediv, log, frexp, around, isclose, isfinite, negative, cos, tree_add, tree_multiply, TensorAdd, TensorTreeAdd, TensorTreeMultiply, TensorSubtract, TensorLog, TensorIsclose, TensorGreaterThan
label_desc: Use image node_id 12 for calling a global function with example usage: test_frexp() without return types