code: def test_fprop_stride(self):
      conv_layer = layers.Conv1D(
          kernel=self.conv_W,
          bias=self.conv_b,
          stride=2,
          padding=PaddingMode.valid,
          conv_mxts_mode="Linear",
      )
      self.create_small_net_with_conv_layer(
          conv_layer, outputs_per_channel=2
      )
      func = compile_func(
          [self.input_layer.get_activation_vars()],
          self.conv_layer.get_activation_vars(),
      )
      print(self.inp)
      print(self.conv_W)
      print(func(self.inp))
      # input:
      #      [[[-8,-7,-6,-5],
      #        [-4,-3,-2,-1]],
      #       [[ 0, 1, 2, 3],
      #        [ 4, 5, 6, 7]]]
      # W:
      # [-2,-1
      #   0, 1]
      # 16+7+0+-3 = 20 - bias (1.0) = 19
      # 0+-1+0+5 = 4 - bias (1.0) = 3
      np.testing.assert_almost_equal(
          func(self.inp),
          np.array(
              [[[19, 15], [-19, -15]], [[3, -1], [-3, 1]]]
          ).transpose((0, 2, 1)),
      )
  
imports: from __future__ import division
  from __future__ import print_function
  from __future__ import absolute_import
  import unittest
  from unittest import skip
  import sys
  import os
  import numpy
  import deeplift.layers
  from deeplift.layers import DenseMxtsMode
  from deeplift.layers.convolutional import PoolMode, PaddingMode
  from deeplift.util import compile_func
  import itertools
label_desc: Use image node_id 6 for calling the TestConv obj's underlying member method code with example usage: obj.test_fprop_stride() without return types