### Question:
AbstractInstallSetup implements InstallSetup { @Override public boolean isAbleToScan(TargetType type) { if (type==null) { return false; } ensureInfo(); if (isIntranet(type)) { return info.canScanIntranet; }else if (isInternet(type)) { return info.canScanInternet; }else if (isCode(type)){ return true; }else { return false; } }  @Override boolean isAbleToScan(TargetType type);  }### Answer:
@Test public void isabletoscan_returns_false_when_a_target_has_type_intranet_and_not_able_to_scanDaimmler_intranet() { assertFalse(setupToTest.isAbleToScan(TargetType.INTRANET)); }
@Test public void isabletoscan_returns_true_when_a_target_has_type_intranet_and_is_able_to_scanDaimmler_intranet() { setupToTest.canScanDaimlerIntranet = true; assertTrue(setupToTest.isAbleToScan(TargetType.INTRANET)); }
@Test public void isabletoscan_returns_false_when_a_target_has_type_internet_and_not_able_to_scanInternet() { assertFalse(setupToTest.isAbleToScan(TargetType.INTERNET)); }
@Test public void isabletoscan_returns_truee_when_a_target_has_type_internet_and_is_able_to_scanInternet() { setupToTest.canScanInternet = true; assertTrue(setupToTest.isAbleToScan(TargetType.INTERNET)); }