code: def test_au_e_enc_full(self):
      g = graphistry.bind(
          source="s",
          destination="d",
          edge_color="c",
          edge_title="t",
          edge_label="l",
          edge_weight="w",
          edge_opacity="o",
          edge_icon="i",
          edge_size="s",
          edge_source_color="sc",
          edge_destination_color="dc",
      )
      g = g.encode_edge_color("c", ["green"], as_categorical=True)
      au = ArrowUploader()
      assert au.g_to_edge_encodings(g) == {
          "bindings": {
              "source": "s",
              "destination": "d",
              "edge_color": "c",
              "edge_title": "t",
              "edge_label": "l",
              "edge_weight": "w",
              "edge_opacity": "o",
              "edge_icon": "i",
              "edge_size": "s",
              "edge_source_color": "sc",
              "edge_destination_color": "dc",
          },
          "complex": {
              "default": {
                  "edgeColorEncoding": {
                      "graphType": "edge",
                      "encodingType": "color",
                      "attribute": "c",
                      "variation": "categorical",
                      "colors": ["green"],
                  }
              }
          },
      }
  
imports: import graphistry, mock, pandas, pytest, unittest
  from graphistry import ArrowUploader
  from graphistry.pygraphistry import PyGraphistry
label_desc: Use image node_id 6 for calling the TestArrowUploader_Core obj's underlying member method code with example usage: obj.test_au_e_enc_full() without return types