### Question:
IntentFilterFactory { public List<org.androidtransfuse.model.manifest.IntentFilter> buildIntentFilters(ASTType astType) { IntentFilters intentFilters = astType.getAnnotation(IntentFilters.class); IntentFilter intentFilter = astType.getAnnotation(IntentFilter.class); Intent intent = astType.getAnnotation(Intent.class); Data data = astType.getAnnotation(Data.class); List<org.androidtransfuse.model.manifest.IntentFilter> convertedIntentFilters = new ArrayList<org.androidtransfuse.model.manifest.IntentFilter>(); if(intentFilters != null){ for (IntentFilter filter : intentFilters.value()) { convertedIntentFilters.add(convertIntentFilter(filter)); } } org.androidtransfuse.model.manifest.IntentFilter resultIntentFilter = null; if (intentFilter != null) { resultIntentFilter = convertIntentFilter(intentFilter); convertedIntentFilters.add(resultIntentFilter); } if (intent != null) { if (resultIntentFilter == null) { resultIntentFilter = intentFilterProvider.get(); convertedIntentFilters.add(resultIntentFilter); } addIntent(intent, resultIntentFilter); } if(data != null){ if(resultIntentFilter == null){ resultIntentFilter = intentFilterProvider.get(); convertedIntentFilters.add(resultIntentFilter); } addData(data, resultIntentFilter); } return convertedIntentFilters; } @Inject  IntentFilterFactory(Provider<org.androidtransfuse.model.manifest.IntentFilter> intentFilterProvider, Provider<Action> actionProvider, Provider<Category> categoryProvider, Provider<org.androidtransfuse.model.manifest.Data> dataProvider); List<org.androidtransfuse.model.manifest.IntentFilter> buildIntentFilters(ASTType astType);  }### Answer:
@Test public void testIntent() { ASTType intentAstType = astClassFactory.getType(IntentTarget.class); List<org.androidtransfuse.model.manifest.IntentFilter> intentFilters = intentFilterBuilder.buildIntentFilters(intentAstType); assertEquals(1, intentFilters.size()); assertEquals(TEST_INTENT, intentFilters.get(0).getActions().get(0).getName()); }
@Test public void testIntentFilter() { ASTType intentAstType = astClassFactory.getType(IntentFilerTarget.class); List<org.androidtransfuse.model.manifest.IntentFilter> intentFilters = intentFilterBuilder.buildIntentFilters(intentAstType); assertEquals(1, intentFilters.size()); assertEquals(TEST_INTENT, intentFilters.get(0).getActions().get(0).getName()); assertEquals(TEST_INTENT, intentFilters.get(0).getCategories().get(0).getName()); }
@Test public void testIntentFilters() { ASTType intentAstType = astClassFactory.getType(IntentFiltersTarget.class); List<org.androidtransfuse.model.manifest.IntentFilter> intentFilters = intentFilterBuilder.buildIntentFilters(intentAstType); assertEquals(2, intentFilters.size()); assertEquals(TEST_INTENT, intentFilters.get(0).getActions().get(0).getName()); assertEquals(TEST_INTENT, intentFilters.get(1).getCategories().get(0).getName()); }