code: def test_forward(self):
      decoder_layer = TFDecoderLayer()
      in_dec = torch.rand(1, 30, 512)
      out_enc = torch.rand(1, 128, 512)
      out_dec = decoder_layer(in_dec, out_enc)
      self.assertEqual(out_dec.shape, torch.Size([1, 30, 512]))
  
      decoder_layer = TFDecoderLayer(
          operation_order=(
              "self_attn",
              "norm",
              "enc_dec_attn",
              "norm",
              "ffn",
              "norm",
          )
      )
      out_dec = decoder_layer(in_dec, out_enc)
      self.assertEqual(out_dec.shape, torch.Size([1, 30, 512]))
  
file_path: mmocr/tests/test_models/test_common/test_layers/test_transformer_layers.py
imports: from unittest import TestCase
  import torch
  from mmocr.models.common.layers.transformer_layers import TFDecoderLayer, TFEncoderLayer
label_desc: Use image node_id 1 for calling the TestTFDecoderLayer obj's underlying member method code with example usage: obj.test_forward() without return types