code: def test_estimate_fail_no_adjustment(self):
      model = BayesianNetwork(
          [("X", "Y"), ("U", "X"), ("U", "Y")], latents=["U"]
      )
  
      U = np.random.randn(10000)
      X = 0.3 * U + np.random.randn(10000)
      Z = 0.8 * X + 0.3 * np.random.randn(10000)
      Y = 0.5 * U + 0.9 * Z + 0.4 * np.random.randn(10000)
      data = pd.DataFrame({"X": X, "Y": Y, "Z": Z})
  
      infer = CausalInference(model=model)
      self.assertRaises(ValueError, infer.estimate_ate, "X", "Y", data)
  
imports: import unittest
  import numpy
  import numpy.testing
  import pandas
  from pgmpy.factors.discrete import TabularCPD
  from pgmpy.inference.CausalInference import CausalInference
  from pgmpy.models import BayesianNetwork
label_desc: Use image node_id 3 for calling the TestEstimator obj's underlying member method code with example usage: obj.test_estimate_fail_no_adjustment() without return types