code: def testFitForwardFilter(self):
      self.dlm1.fitForwardFilter(useRollingWindow=False)
      self.assertEqual(self.dlm1.result.filteredSteps, [0, 19])
      self.assertAlmostEqual(
          np.sum(self.dlm1.result.filteredObs[0:9]), 0
      )
      self.assertAlmostEqual(
          self.dlm1.result.filteredObs[9][0, 0], 1.0 / 11
      )
      self.assertAlmostEqual(
          self.dlm1.result.filteredObs[19][0, 0], 1.0 / 21
      )
  
      self.dlm2.fitForwardFilter(useRollingWindow=False)
      self.assertAlmostEqual(
          np.sum(self.dlm2.result.filteredObs[0:9]), 0.0
      )
      self.assertAlmostEqual(self.dlm2.result.filteredObs[9][0, 0], 1.0)
      self.assertAlmostEqual(
          self.dlm2.result.filteredObs[19][0, 0], 0.0
      )
  
imports: import numpy
  import unittest
  from pydlm.modeler.trends import trend
  from pydlm.modeler.seasonality import seasonality
  from pydlm.modeler.dynamic import dynamic
  from pydlm.modeler.autoReg import autoReg
  from pydlm.dlm import dlm
label_desc: Use image node_id 4 for calling the testDlm obj's underlying member method code with example usage: obj.testFitForwardFilter() without return types