descList.add(tsd1);
descList.add(tsd2);
descList.add(indexes);
descList.add(priorities);
CAS cas = CasCreationUtils.createCas(descList);
// check that type system has been installed
TypeSystem ts = cas.getTypeSystem();
Type supertypeHandle = ts.getType(supertype.getName());
assertNotNull(supertypeHandle);
assertNotNull(supertypeHandle.getFeatureByBaseName("testfeat"));
Type subtypeHandle = ts.getType(subtype.getName());
assertNotNull(subtypeHandle);
assertNotNull(subtypeHandle.getFeatureByBaseName("testfeat"));
Type fooTypeHandle = ts.getType(fooType.getName());
assertNotNull(fooTypeHandle);
assertNotNull(fooTypeHandle.getFeatureByBaseName("bar"));
// check that index exists
assertNotNull(cas.getIndexRepository().getIndex("MyIndex"));
// test that priorities work
cas.createFS(supertypeHandle);
cas.createFS(subtypeHandle);
FSIterator iter = cas.getAnnotationIndex().iterator();
while (iter.isValid()) {
if (iter.get().getType() == subtypeHandle) // expected
break;
if (iter.get().getType() == supertypeHandle) // unexpected
fail();