code: def testCrossBelowOnce(self):
      values1 = self.__buildSeqDS([2, 2, 2, 2, 2, 2, 2])
      values2 = self.__buildSeqDS([1, 1, 1, 10, 1, 1, 1])
  
      # Check every 2 values.
      self.assertEqual(cross.cross_below(values1, values2, 0, 2), 0)
      self.assertEqual(cross.cross_below(values1, values2, 1, 3), 0)
      self.assertEqual(cross.cross_below(values1, values2, 2, 4), 1)
      self.assertEqual(cross.cross_below(values1, values2, 3, 5), 0)
      self.assertEqual(cross.cross_below(values1, values2, 4, 6), 0)
      self.assertEqual(cross.cross_below(values1, values2, 5, 7), 0)
  
      # Check every 3 values.
      self.assertEqual(cross.cross_below(values1, values2, 0, 3), 0)
      self.assertEqual(cross.cross_below(values1, values2, 1, 4), 1)
      self.assertEqual(cross.cross_below(values1, values2, 2, 5), 1)
      self.assertEqual(cross.cross_below(values1, values2, 3, 6), 0)
      self.assertEqual(cross.cross_below(values1, values2, 4, 7), 0)
  
      # Check for all values.
      self.assertEqual(cross.cross_below(values1, values2, 0, 7), 1)
      self.assertEqual(cross.cross_below(values1, values2, 0, -1), 1)
  
file_path: pyalgotrade/testcases/technical_cross_test.py
imports: from .None import common
  from pyalgotrade.technical import cross
  from pyalgotrade.technical import ma
  from pyalgotrade import dataseries
label_desc: Use image node_id 4 for calling the TestCase obj's underlying member method code with example usage: obj.testCrossBelowOnce() without return types