Loader { int loadNave() { LOGGER.debug("Indexing nave subjects"); this.addUpdate("install_subject_search"); final EntityIndexWriterImpl writer = this.entityManager.getNewWriter("nave"); final HeadwordLineBasedLoader loader = new HeadwordLineBasedLoader(writer, this.coreProperties.getProperty("test.data.path.subjects.nave")); loader.init(this); LOGGER.debug("Writing Nave index"); final int close = writer.close(); LOGGER.debug("End Nave"); this.addUpdate("install_subject_search_complete", close); return close; } @Inject  Loader(final JSwordPassageService jsword, final JSwordModuleService jswordModule,
                  @Named("StepCoreProperties") final Properties coreProperties, final EntityManager entityManager,
                  final Provider<ClientSession> clientSessionProvider,
                  AppManagerService appManager
    ); void init(); List<String> readOnceProgress(); int getTotalProgress(); boolean isComplete();  }
@Test public void testNaveLoader() { getLoader("test.data.path.subjects.nave", "nave.txt").loadNave(); assertExists("nave", "root", "AARON"); }