Ignore:
Timestamp:
2018-11-25T15:00:02+01:00 (6 years ago)
Author:
Don-vip
Message:

fix #17027 - clean output of TaggingPresetPreferenceTestIT

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/test/unit/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreferenceTestIT.java

    r14235 r14449  
    88import java.util.Collection;
    99import java.util.HashMap;
    10 import java.util.HashSet;
    1110import java.util.Map;
     11import java.util.Objects;
    1212import java.util.Set;
     13import java.util.TreeSet;
     14import java.util.concurrent.ExecutionException;
     15import java.util.concurrent.TimeUnit;
     16import java.util.concurrent.TimeoutException;
    1317
    1418import org.junit.Rule;
     
    5054        Config.getPref().putInt("socket.timeout.connect", 30);
    5155        Config.getPref().putInt("socket.timeout.read", 60);
    52         Map<Object, Throwable> allErrors = new HashMap<>();
    53         Set<String> allMessages = new HashSet<>();
     56        Map<String, Throwable> allErrors = new HashMap<>();
     57        Map<String, Set<String>> allMessages = new HashMap<>();
    5458        for (ExtendedSourceEntry source : sources) {
    5559            System.out.println(source.url);
     
    8387    }
    8488
    85     private static void testPresets(Set<String> allMessages, ExtendedSourceEntry source) throws SAXException, IOException {
     89    private static void testPresets(Map<String, Set<String>> allMessages, ExtendedSourceEntry source) throws SAXException, IOException {
    8690        Collection<TaggingPreset> presets = TaggingPresetReader.readAll(source.url, true);
    8791        assertFalse(presets.isEmpty());
     92        // wait for asynchronous icon loading
     93        presets.stream().map(TaggingPreset::getIconLoadingTask).filter(Objects::nonNull).forEach(t -> {
     94            try {
     95                t.get(30, TimeUnit.SECONDS);
     96            } catch (InterruptedException | ExecutionException | TimeoutException e) {
     97                Logging.error(e);
     98            }
     99        });
    88100        Collection<String> errorsAndWarnings = Logging.getLastErrorAndWarnings();
    89101        boolean error = false;
     
    93105                // ignore https://github.com/yopaseopor/traffic_signs_preset_JOSM because of far too frequent missing icons errors
    94106                if (!source.url.contains("yopaseopor/traffic_signs")) {
    95                     allMessages.add(message);
     107                    allMessages.computeIfAbsent(source.url, x -> new TreeSet<>()).add(message);
    96108                }
    97109            }
Note: See TracChangeset for help on using the changeset viewer.