code: def test_normalize_integrate_contraction():
      data = random_tensor(
          OrderedDict([("i", Bint[2]), ("j", Bint[3])])
      )
      point = random_tensor(OrderedDict([("j", Bint[3])]))
      log_measure = Delta("x", point) + Constant(
          (("i", Bint[2]), ("j", Bint[3])), Number(0.0)
      )
      integrand = Constant((("x", Real),), data)
      with reflect:
          term = Integrate(log_measure, integrand, "x")
          result = term.reduce(ops.add, {"i", "j"})
  
      with eager:
          expected = reinterpret(result)
  
      actual = apply_optimizer(result)
      assert_close(actual, expected)
  
imports: import itertools
  from collections import OrderedDict
  import numpy
  import pytest
  from funsor import ops
  from funsor.cnf import BACKEND_TO_EINSUM_BACKEND, BACKEND_TO_LOGSUMEXP_BACKEND, Contraction
  from funsor.constant import Constant
  from funsor.delta import Delta
  from funsor.domains import Array, Bint, Real, Reals
  from funsor.einsum import einsum, naive_plated_einsum
  from funsor.integrate import Integrate
  from funsor.interpretations import eager, normalize, reflect
  from funsor.interpreter import reinterpret
  from funsor.optimizer import apply_optimizer
  from funsor.tensor import Tensor
  from funsor.terms import Number
  from funsor.testing import assert_close, check_funsor, make_einsum_example, random_tensor
  from funsor.util import get_backend, quote
label_desc: Use image node_id 3 for calling a global function with example usage: test_normalize_integrate_contraction() without return types