@Test
  public void testCreateTableCustomSortOrder() throws Exception {
    Schema schema = getTestSchema();
    PartitionSpec spec = PartitionSpec.builderFor(schema).bucket("data", 16).build();
    SortOrder order = SortOrder.builderFor(schema).asc("id", NULLS_FIRST).build();
    TableIdentifier tableIdent = TableIdentifier.of(DB_NAME, "tbl");

    try {
      Table table = catalog.buildTable(tableIdent, schema)
          .withPartitionSpec(spec)
          .withSortOrder(order)
          .create();
      SortOrder sortOrder = table.sortOrder();
      assertThat(sortOrder.orderId()).as("Order ID must match").isEqualTo(1);
      assertThat(sortOrder.fields()).as("Order must have 1 field").hasSize(1);
      assertThat(sortOrder.fields().get(0).direction()).as("Direction must match ").isEqualTo(ASC);
      assertThat(sortOrder.fields().get(0).nullOrder())
          .as("Null order must match ")
          .isEqualTo(NULLS_FIRST);
      Transform<?, ?> transform = Transforms.identity(Types.IntegerType.get());
      assertThat(sortOrder.fields().get(0).transform())
          .as("Transform must match")
          .isEqualTo(transform);

      assertThat(hmsTableParameters())
          .containsEntry(DEFAULT_SORT_ORDER, SortOrderParser.toJson(table.sortOrder()));
    } finally {
      catalog.dropTable(tableIdent);
    }
  }
Run all the tests from abstract of {@link CatalogTests} with few specific tests related to HIVE.
iceberg/iceberg-catalog/src/test/java/org/apache/iceberg/hive/TestHiveCatalog.java