code: def test_json_enum(self):
      class MyEnum(Enum):
          A = 1
          B = 2
          C = 3
  
      class Example(Record):
          name = String()
          v = MyEnum
          w = CustomEnum(MyEnum)
          x = CustomEnum(
              MyEnum,
              required=True,
              default=MyEnum.A,
              required_default=True,
          )
  
      topic = "my-json-enum-topic"
  
      client = pulsar.Client(self.serviceUrl)
      producer = client.create_producer(
          topic=topic, schema=JsonSchema(Example)
      )
  
      consumer = client.subscribe(
          topic, "test", schema=JsonSchema(Example)
      )
  
      r = Example(name="test", v=MyEnum.C, w=MyEnum.B)
      producer.send(r)
  
      msg = consumer.receive()
  
      self.assertEqual("test", msg.value().name)
      self.assertEqual(MyEnum.C, MyEnum(msg.value().v))
      self.assertEqual(MyEnum.B, MyEnum(msg.value().w))
      self.assertEqual(MyEnum.A, MyEnum(msg.value().x))
      client.close()
  
imports: import math
  import logging
  import requests
  from typing import List
  from unittest import TestCase, main
  import fastavro
  import pulsar
  from pulsar.schema import *
  from enum import Enum
  import json
  from fastavro.schema import load_schema
label_desc: Use image node_id 21 for calling the SchemaTest obj's underlying member method code with example usage: obj.test_json_enum() without return types