package edu.brown.workload; import java.io.File; import java.util.HashSet; import java.util.Set; import org.junit.Test; import org.voltdb.catalog.Procedure; import edu.brown.BaseTestCase; import edu.brown.benchmark.tm1.procedures.GetTableCounts; import edu.brown.statistics.Histogram; import edu.brown.utils.ProjectType; public class TestWorkloadUtil extends BaseTestCase { private static File workload_file; private static Set<String> ignore = new HashSet<String>(); static { ignore.add(GetTableCounts.class.getSimpleName()); // ignore.add(InsertSubscriber.class.getSimpleName()); } @Override protected void setUp() throws Exception { super.setUp(ProjectType.TM1); if (workload_file == null) { workload_file = this.getWorkloadFile(ProjectType.TM1); } assertNotNull(workload_file); } /** * testGetProcedureHistogram */ @Test public void testGetProcedureHistogram() throws Exception { Histogram<String> h = WorkloadUtil.getProcedureHistogram(workload_file); assertNotNull(h); assert(h.getSampleCount() > 0); for (Procedure catalog_proc : catalog_db.getProcedures()) { String proc_name = catalog_proc.getName(); if (catalog_proc.getSystemproc() || ignore.contains(proc_name)) continue; assert(h.get(proc_name, 0) > 0) : "No Entries for " + proc_name; } // FOR System.err.println(h); } }