### Question:
EntityMetaReaderImpl implements EntityMetaReader { public List<EntityMeta> read() { final List<EntityMeta> entityMetaList = new ArrayList<EntityMeta>(); ClassTraversal.forEach(classpathDir, new ClassHandler() { public void processClass(String packageName, String shortClassName) { if (isTargetPackage(packageName) && isTargetClass(shortClassName)) { String className = ClassUtil.concatName(packageName, shortClassName); Class<?> clazz = ClassUtil.forName(className); if (clazz.isAnnotationPresent(Entity.class)) { EntityMeta entityMeta = entityMetaFactory .getEntityMeta(clazz); entityMetaList.add(entityMeta); } } } }); if (entityMetaList.isEmpty()) { throw new EntityClassNotFoundRuntimeException(classpathDir, packageName, shortClassNamePattern.pattern(), ignoreShortClassNamePattern.pattern()); } if (readComment) { readComment(entityMetaList); } return entityMetaList; } EntityMetaReaderImpl(File classpathDir, String packageName,
            EntityMetaFactory entityMetaFactory, String shortClassNamePattern,
            String ignoreShortClassNamePattern, boolean readComment,
            List<File> javaFileSrcDirList, String javaFileEncoding); List<EntityMeta> read(); boolean isFiltered();  }### Answer:
@Test public void testRead() throws Exception { EntityMetaReaderImpl reader = new EntityMetaReaderImpl(rootDir, packageName, entityMetaFactory, "A.*", "Ab.*", false, null, null); List<EntityMeta> list = reader.read(); assertEquals(1, list.size()); assertEquals(Aaa.class, list.get(0).getEntityClass()); }