### Question:
SortOrderParser { public static SortOrder fromJson(Schema schema, String json) { try { return fromJson(schema, JsonUtil.mapper().readValue(json, JsonNode.class)); } catch (IOException e) { throw new UncheckedIOException(e); } } private  SortOrderParser(); static void toJson(SortOrder sortOrder, JsonGenerator generator); static SortOrder fromJson(Schema schema, String json); static SortOrder fromJson(Schema schema, JsonNode json);  }### Answer:
@Test public void testUnknownTransforms() { String jsonString = "{\n" + " \"order-id\" : 10,\n" + " \"fields\" : [ {\n" + " \"transform\" : \"custom_transform\",\n" + " \"source-id\" : 2,\n" + " \"direction\" : \"desc\",\n" + " \"null-order\" : \"nulls-first\"\n" + " } ]\n" + "}"; SortOrder order = SortOrderParser.fromJson(table.schema(), jsonString); Assert.assertEquals(10, order.orderId()); Assert.assertEquals(1, order.fields().size()); Assert.assertTrue(order.fields().get(0).transform() instanceof UnknownTransform); Assert.assertEquals("custom_transform", order.fields().get(0).transform().toString()); Assert.assertEquals(2, order.fields().get(0).sourceId()); Assert.assertEquals(DESC, order.fields().get(0).direction()); Assert.assertEquals(NULLS_FIRST, order.fields().get(0).nullOrder()); }