code: def test_add_single_factor_raises_error(self):
      self.graph.add_node(("a", "b"))
      phi1 = DiscreteFactor(["b", "c"], [2, 2], np.random.rand(4))
      self.assertRaises(ValueError, self.graph.add_factors, phi1)
  
imports: import unittest
  import numpy
  from pgmpy.factors.discrete import DiscreteFactor
  from pgmpy.models import ClusterGraph
  from pgmpy.tests import help_functions
label_desc: Use image node_id 3 for calling the TestClusterGraphFactorOperations obj's underlying member method code with example usage: obj.test_add_single_factor_raises_error() without return types