code: def testIsArtifactVersionOlderThan(self):
      examples = standard_artifacts.Examples()
      self.assertFalse(
          artifact_utils.is_artifact_version_older_than(examples, "0.1")
      )
      examples.mlmd_artifact.state = metadata_store_pb2.Artifact.LIVE
      self.assertTrue(
          artifact_utils.is_artifact_version_older_than(examples, "0.1")
      )
      examples.set_string_custom_property(
          artifact_utils.ARTIFACT_TFX_VERSION_CUSTOM_PROPERTY_KEY, "0.2"
      )
      self.assertTrue(
          artifact_utils.is_artifact_version_older_than(
              examples, "0.10"
          )
      )
      self.assertTrue(
          artifact_utils.is_artifact_version_older_than(examples, "0.3")
      )
      self.assertFalse(
          artifact_utils.is_artifact_version_older_than(examples, "0.2")
      )
      self.assertFalse(
          artifact_utils.is_artifact_version_older_than(examples, "0.1")
      )
  
imports: import copy
  from unittest import mock
  from absl import logging
  import tensorflow
  from tfx.types import artifact
  from tfx.types import artifact_utils
  from tfx.types import standard_artifacts
  from tfx.types import system_artifacts
  from tfx.types import value_artifact
  from ml_metadata.proto import metadata_store_pb2
label_desc: Use image node_id 8 for calling the ArtifactUtilsTest obj's underlying member method code with example usage: obj.testIsArtifactVersionOlderThan() without return types