Add category attribute to <test-case>; skip slow tests.
diff --git a/asterix-test-framework/src/main/java/edu/uci/ics/asterix/testframework/context/TestCaseContext.java b/asterix-test-framework/src/main/java/edu/uci/ics/asterix/testframework/context/TestCaseContext.java
index cee292e..a52ede0 100644
--- a/asterix-test-framework/src/main/java/edu/uci/ics/asterix/testframework/context/TestCaseContext.java
+++ b/asterix-test-framework/src/main/java/edu/uci/ics/asterix/testframework/context/TestCaseContext.java
@@ -19,6 +19,7 @@
import java.util.Collections;
import java.util.List;
+import edu.uci.ics.asterix.testframework.xml.CategoryEnum;
import edu.uci.ics.asterix.testframework.xml.TestCase;
import edu.uci.ics.asterix.testframework.xml.TestCase.CompilationUnit;
import edu.uci.ics.asterix.testframework.xml.TestGroup;
@@ -158,9 +159,11 @@
private void addContexts(File tsRoot, TestSuite ts, List<TestGroup> tgPath, List<TestCaseContext> tccs) {
TestGroup tg = tgPath.get(tgPath.size() - 1);
for (TestCase tc : tg.getTestCase()) {
- tccs.add(new TestCaseContext(tsRoot, ts, tgPath.toArray(new TestGroup[tgPath.size()]), tc));
+ if (tc.getCategory() != CategoryEnum.SLOW) {
+ tccs.add(new TestCaseContext(tsRoot, ts, tgPath.toArray(new TestGroup[tgPath.size()]), tc));
+ }
}
addContexts(tsRoot, ts, tgPath, tg.getTestGroup(), tccs);
}
}
-}
\ No newline at end of file
+}
diff --git a/asterix-test-framework/src/main/resources/Catalog.xsd b/asterix-test-framework/src/main/resources/Catalog.xsd
index 632d6ad..763309e 100644
--- a/asterix-test-framework/src/main/resources/Catalog.xsd
+++ b/asterix-test-framework/src/main/resources/Catalog.xsd
@@ -135,6 +135,7 @@
<!-- This name is always equal to the name of the test case -->
<xs:attribute name="name" type="xs:string" use="required"/>
+
</xs:complexType>
</xs:element>
@@ -150,8 +151,24 @@
<xs:attribute name="FilePath" type="test:SimplifiedRelativeFilePath" use="required"/>
<xs:attribute name="date" type="xs:date" use="required"/>
+ <xs:attribute name="category" type="test:category-enum"/>
</xs:complexType>
+ <!-- category-enum type -->
+ <!-- Identify which category of test this is. Currently only "slow". -->
+
+ <xs:simpleType name="category-enum">
+ <xs:annotation>
+ <xs:documentation>
+ Identify the category of test, for limiting when it is run.
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="slow"/>
+ </xs:restriction>
+ </xs:simpleType>
+
<!-- comparison-enum type -->
<!-- Identify the type of comparison used to determine whether an -->
<!-- expected result and an actual result match. -->