code: def test_compile_fit(self):
      model = SessionRecommender(30, 5, [10, 5], 2, True, [6, 3], 5)
      input_data = [
          [
              np.random.randint(1, 30, size=(2)),
              np.random.randint(1, 30, size=(5)),
              np.random.randint(1, 30),
          ]
          for i in range(100)
      ]
      samples = self.sc.parallelize(input_data).map(
          lambda x: Sample.from_ndarray((x[0], x[1]), np.array(x[2]))
      )
      train, test = samples.randomSplit([0.8, 0.2], seed=1)
      model.compile(
          loss="sparse_categorical_crossentropy",
          optimizer="rmsprop",
          metrics=["top5Accuracy"],
      )
      model.fit(train, batch_size=4, nb_epoch=1, validation_data=test)
  
file_path: analytics-zoo/pyzoo/test/zoo/models/recommendation/test_sessionrecommender.py
imports: import pytest
  import random
  from zoo.pipeline.api.keras.layers import *
  from zoo.models.recommendation import SessionRecommender
  from test.zoo.pipeline.utils.test_utils import ZooTestCase
label_desc: Use image node_id 4 for calling the TestSessionRecommender obj's underlying member method code with example usage: obj.test_compile_fit() without return types