@Test
  public void testTablePropsDefinedAtCatalogLevel() {
    Schema schema = getTestSchema();
    TableIdentifier tableIdent = TableIdentifier.of(DB_NAME, "tbl");

    ImmutableMap<String, String> catalogProps =
        ImmutableMap.of(
            "table-default.key1", "catalog-default-key1",
            "table-default.key2", "catalog-default-key2",
            "table-default.key3", "catalog-default-key3",
            "table-override.key3", "catalog-override-key3",
            "table-override.key4", "catalog-override-key4");
    Catalog hiveCatalog =
        CatalogUtil.loadCatalog(
            HiveCatalog.class.getName(),
            CatalogUtil.ICEBERG_CATALOG_TYPE_HIVE,
            catalogProps,
            HIVE_METASTORE_EXTENSION.hiveConf());

    try {
      Table table =
          hiveCatalog
              .buildTable(tableIdent, schema)
              .withProperty("key2", "table-key2")
              .withProperty("key3", "table-key3")
              .withProperty("key5", "table-key5")
              .create();

      assertThat(table.properties())
          .as("Table defaults set for the catalog must be added to the table properties.")
          .containsEntry("key1", "catalog-default-key1");
      assertThat(table.properties())
          .as("Table property must override table default properties set at catalog level.")
          .containsEntry("key2", "table-key2");
      assertThat(table.properties())
          .as("Table property override set at catalog level must override table default" +
                  " properties set at catalog level and table property specified.")
          .containsEntry("key3", "catalog-override-key3");
      assertThat(table.properties())
          .as("Table override not in table props or defaults should be added to table properties")
          .containsEntry("key4", "catalog-override-key4");
      assertThat(table.properties())
          .as("Table properties without any catalog level default or override should be added to table" +
                  " properties.")
          .containsEntry("key5", "table-key5");
    } finally {
      hiveCatalog.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