### Question:
MetaInfRequireJson implements IRequireJsPackage { @Override public String getModuleMainFile( String moduleId ) { return this.packages.get( moduleId ); } MetaInfRequireJson( Map<String, Object> requireJsonObject ); @Override String getName(); @Override String getVersion(); @Override String getWebRootPath(); @Override boolean preferGlobal(); @Override Map<String, String> getModules(); @Override String getModuleMainFile( String moduleId ); @Override Map<String, String> getDependencies(); @Override boolean hasScript( String name ); URL getScriptResource( String name ); @Override Map<String, Map<String, ?>> getConfig(); @Override Map<String, Map<String, String>> getMap(); @Override Map<String, Map<String, ?>> getShim(); boolean isAmdPackage(); String getExports();  }### Answer:
@Test public void getModuleMainFile() { MetaInfRequireJson requireJson = new MetaInfRequireJson( requireMeta ); assertNull( requireJson.getModuleMainFile( "angular" ) ); assertNull( requireJson.getModuleMainFile( "smart-table-min" ) ); assertNull( requireJson.getModuleMainFile( "smart-table" ) ); assertEquals( "statehelper", requireJson.getModuleMainFile( "angular-ui-router.stateHelper" ) ); assertEquals( "main", requireJson.getModuleMainFile( "other" ) ); assertEquals( "main", requireJson.getModuleMainFile( "simple" ) ); }