code: def test_fit_fail_on_bad_dims(self):
      interactions, user_features, item_features = generate_dummy_data(
          num_users=15,
          num_items=30,
          interaction_density=0.5,
          num_user_features=30,
          num_item_features=20,
          n_features_per_user=20,
          n_features_per_item=20,
          pos_int_ratio=0.5,
      )
  
      with self.assertRaises(ValueError):
          model = TensorRec(
              n_components=25,
              user_repr_graph=FeaturePassThroughRepresentationGraph(),
              item_repr_graph=LinearRepresentationGraph(),
          )
          model.fit(
              interactions, user_features, item_features, epochs=10
          )
  
      with self.assertRaises(ValueError):
          model = TensorRec(
              n_components=25,
              user_repr_graph=LinearRepresentationGraph(),
              item_repr_graph=FeaturePassThroughRepresentationGraph(),
          )
          model.fit(
              interactions, user_features, item_features, epochs=10
          )
  
file_path: tensorrec/test/test_representation_graphs.py
imports: from nose_parameterized import parameterized
  from unittest import TestCase
  from tensorrec import TensorRec
  from tensorrec.representation_graphs import LinearRepresentationGraph, NormalizedLinearRepresentationGraph, FeaturePassThroughRepresentationGraph, WeightedFeaturePassThroughRepresentationGraph, ReLURepresentationGraph
  from tensorrec.util import generate_dummy_data
label_desc: Use image node_id 1 for calling the IdentityRepresentationGraphTestCase obj's underlying member method code with example usage: obj.test_fit_fail_on_bad_dims() without return types