code: def test_types(self):
      bss1 = BeatStateSpace(1, 4)
      bss2 = BeatStateSpace(2, 6)
      btm1 = BeatTransitionModel(bss1, 100)
      btm2 = BeatTransitionModel(bss2, 100)
      tm = MultiPatternTransitionModel([btm1, btm2])
      self.assertIsInstance(tm, MultiPatternTransitionModel)
      self.assertIsInstance(tm, TransitionModel)
      self.assertIsInstance(tm.transition_models, list)
      self.assertIsNone(tm.transition_prob)
      self.assertIsInstance(tm.states, np.ndarray)
      self.assertIsInstance(tm.pointers, np.ndarray)
      self.assertIsInstance(tm.probabilities, np.ndarray)
      self.assertIsInstance(tm.log_probabilities, np.ndarray)
      self.assertIsInstance(tm.num_states, int)
      self.assertIsInstance(tm.num_transitions, int)
      self.assertTrue(tm.states.dtype == np.uint32)
      self.assertTrue(tm.pointers.dtype == np.uint32)
      self.assertTrue(tm.probabilities.dtype == float)
      self.assertTrue(tm.log_probabilities.dtype == float)
  
imports: from __future__ import absolute_import, division, print_function
  import unittest
  from madmom.features.beats_hmm import *
label_desc: Use image node_id 1 for calling the TestMultiPatternTransitionModelClass obj's underlying member method code with example usage: obj.test_types() without return types