code: def setup_method(self) -> None:
      root_metadata = {
          "name": "root-card",
          "field3": 3,
      }
  
      root_card = AssetCard(root_metadata)
  
      base_metadata = {
          "name": "base-card",
          "field1": "base-foo1",
          "field2": {"sub-field1": "sub-foo1"},
          "field8": [1, "b", 3],
      }
  
      base_card = AssetCard(base_metadata, root_card)
  
      metadata = {
          "name": "test-card",
          "field1": "foo1",
          "field2": {
              "sub-field2": "sub-foo2",
          },
          "field4": "",
          "field5": [],
          "field6": "invalid/filename",
          "field7": [1, 2, 3, 2],
          "field9": "http://foo.com",
      }
  
      self.card = AssetCard(metadata, base_card)
  
imports: from os import PathLike
  from pathlib import Path
  import pytest
  from fairseq2.assets import AssetCard, AssetCardError, AssetCardFieldNotFoundError
label_desc: Use image node_id 1 for calling the TestAssetCard obj's underlying member method code with example usage: obj.setup_method() without return types