### Question:
Loader { public abstract void load() throws Exception; Loader(final String databaseName, final SparkSession spark, final DatabaseStatistics statistics); abstract void load();  }### Answer:
@Test void propertyTableTest() { final Settings settings = new Settings.Builder("testingDB").build(); final DatabaseStatistics statistics = new DatabaseStatistics("testingDB"); final WidePropertyTableLoader pt_loader = new WidePropertyTableLoader(settings, spark, statistics); pt_loader.load(); final Dataset<Row> propertyTable = spark.sql("SELECT * FROM property_table"); final long ptNumberRows = propertyTable.count(); assert (ptNumberRows == numberSubjects); final long ptNumberColumns = propertyTable.columns().length - 1; assertEquals(numberPredicates, ptNumberColumns, "Number of columns must be " + numberPredicates); }
@Test void verticalPartitioningTest() { final Settings settings = new Settings.Builder("testingDB").build(); final DatabaseStatistics statistics = new DatabaseStatistics("testingDB"); final VerticalPartitioningLoader vp_loader = new VerticalPartitioningLoader(settings, spark, statistics); vp_loader.load(); final Dataset<Row> tables_list = spark.sql("SHOW tables"); final long tables_count = tables_list.count(); assert (tables_count > numberPredicates); }