code: def test_list_assets():
      class SomeModel(Asset):
          CONFIGURATIONS = {"model0": {"asset": "some/asset"}}
  
      class SomeOtherModel(Asset):
          CONFIGURATIONS = {"model1": {"asset": "some/asset"}}
  
      assert {"some/asset"} == list_assets(SomeModel)
      assert {"some/asset"} == list_assets([SomeModel, SomeOtherModel])
      assert {"some/asset", "some/otherasset"} == list_assets(
          [SomeModel, SomeOtherModel],
          configuration={"model1": {"asset": "some/otherasset"}},
      )
      assert {"some/asset"} == list_assets(
          [SomeModel, SomeOtherModel],
          required_models=["model0"],
          configuration={"model1": {"asset": "some/otherasset"}},
      )
  
imports: import asyncio
  import os
  import pytest
  from modelkit.assets.errors import AssetDoesNotExistError, InvalidAssetSpecError
  from modelkit.core import errors
  from modelkit.core.library import ConfigurationNotFoundException, ModelLibrary, download_assets, load_model
  from modelkit.core.model import Asset, AsyncModel, Model
  from modelkit.core.model_configuration import ModelConfiguration, _configurations_from_objects, configure, list_assets
  from modelkit.core.settings import LibrarySettings
  from tests import TEST_DIR, testmodels
  from tests.assets.test_versioning import test_versioning
label_desc: Use image node_id 10 for calling a global function with example usage: test_list_assets() without return types