code: def test_lstm_nparams_no_peepholes():
      l_inp = InputLayer((2, 2, 3))
      l_lstm = LSTMLayer(l_inp, 5, peepholes=False, learn_init=False)
  
      # 3*n_gates
      # the 3 is because we have  hid_to_gate, in_to_gate and bias for each gate
      assert (
          len(lasagne.layers.get_all_params(l_lstm, trainable=True))
          == 12
      )
  
      # bias params + init params
      assert (
          len(
              lasagne.layers.get_all_params(l_lstm, regularizable=False)
          )
          == 6
      )
  
imports: import pytest
  from lasagne.layers import RecurrentLayer, LSTMLayer, CustomRecurrentLayer
  from lasagne.layers import InputLayer, DenseLayer, GRULayer, Gate, Layer
  from lasagne.layers import helper
  import theano
  import theano.tensor
  import numpy
  import lasagne
  from mock import Mock
label_desc: Use image node_id 24 for calling a global function with example usage: test_lstm_nparams_no_peepholes() without return types