Changeset 10093 in josm


Ignore:
Timestamp:
2016-04-01T15:40:44+02:00 (4 years ago)
Author:
Don-vip
Message:

add more unit tests

Location:
trunk
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/MainApplication.java

    r10055 r10093  
    5252import org.openstreetmap.josm.data.CustomConfigurator;
    5353import org.openstreetmap.josm.data.Version;
     54import org.openstreetmap.josm.gui.SplashScreen.SplashProgressMonitor;
    5455import org.openstreetmap.josm.gui.download.DownloadDialog;
    5556import org.openstreetmap.josm.gui.preferences.server.OAuthAccessTokenHolder;
     
    446447        Collection<PluginInformation> pluginsToLoad = null;
    447448
    448 
    449449        if (!skipLoadingPlugins) {
    450             pluginsToLoad = PluginHandler.buildListOfPluginsToLoad(splash, monitor.createSubTaskMonitor(1, false));
    451             if (!pluginsToLoad.isEmpty() && PluginHandler.checkAndConfirmPluginUpdate(splash)) {
    452                 monitor.subTask(tr("Updating plugins"));
    453                 pluginsToLoad = PluginHandler.updatePlugins(splash, null, monitor.createSubTaskMonitor(1, false), false);
    454             }
    455 
    456             monitor.indeterminateSubTask(tr("Installing updated plugins"));
    457             PluginHandler.installDownloadedPlugins(true);
    458 
    459             monitor.indeterminateSubTask(tr("Loading early plugins"));
    460             PluginHandler.loadEarlyPlugins(splash, pluginsToLoad, monitor.createSubTaskMonitor(1, false));
     450            pluginsToLoad = updateAndLoadEarlyPlugins(splash, monitor);
    461451        }
    462452
     
    468458
    469459        if (!skipLoadingPlugins) {
    470             monitor.indeterminateSubTask(tr("Loading plugins"));
    471             PluginHandler.loadLatePlugins(splash, pluginsToLoad,  monitor.createSubTaskMonitor(1, false));
    472             toolbar.refreshToolbarControl();
     460            loadLatePlugins(splash, monitor, pluginsToLoad);
    473461        }
    474462
     
    525513            RepaintManager.setCurrentManager(new CheckThreadViolationRepaintManager());
    526514        }
     515    }
     516
     517    static Collection<PluginInformation> updateAndLoadEarlyPlugins(SplashScreen splash, SplashProgressMonitor monitor) {
     518        Collection<PluginInformation> pluginsToLoad;
     519        pluginsToLoad = PluginHandler.buildListOfPluginsToLoad(splash, monitor.createSubTaskMonitor(1, false));
     520        if (!pluginsToLoad.isEmpty() && PluginHandler.checkAndConfirmPluginUpdate(splash)) {
     521            monitor.subTask(tr("Updating plugins"));
     522            pluginsToLoad = PluginHandler.updatePlugins(splash, null, monitor.createSubTaskMonitor(1, false), false);
     523        }
     524
     525        monitor.indeterminateSubTask(tr("Installing updated plugins"));
     526        PluginHandler.installDownloadedPlugins(true);
     527
     528        monitor.indeterminateSubTask(tr("Loading early plugins"));
     529        PluginHandler.loadEarlyPlugins(splash, pluginsToLoad, monitor.createSubTaskMonitor(1, false));
     530        return pluginsToLoad;
     531    }
     532
     533    static void loadLatePlugins(SplashScreen splash, SplashProgressMonitor monitor, Collection<PluginInformation> pluginsToLoad) {
     534        monitor.indeterminateSubTask(tr("Loading plugins"));
     535        PluginHandler.loadLatePlugins(splash, pluginsToLoad, monitor.createSubTaskMonitor(1, false));
     536        toolbar.refreshToolbarControl();
    527537    }
    528538
  • trunk/src/org/openstreetmap/josm/gui/SplashScreen.java

    r9543 r10093  
    197197        private SplashProgressMonitor latestSubtask;
    198198
     199        /**
     200         * Constructs a new {@code SplashProgressMonitor}.
     201         * @param name name
     202         * @param listener change listener
     203         */
    199204        public SplashProgressMonitor(String name, ChangeListener listener) {
    200205            this.name = name;
  • trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java

    r10001 r10093  
    88import java.awt.Component;
    99import java.awt.Font;
     10import java.awt.GraphicsEnvironment;
    1011import java.awt.GridBagConstraints;
    1112import java.awt.GridBagLayout;
     
    276277     * @param plugins the collection of plugins
    277278     */
    278     private static void filterDeprecatedPlugins(Component parent, Collection<String> plugins) {
     279    static void filterDeprecatedPlugins(Component parent, Collection<String> plugins) {
    279280        Set<DeprecatedPlugin> removedPlugins = new TreeSet<>();
    280281        for (DeprecatedPlugin depr : DEPRECATED_PLUGINS) {
     
    305306        }
    306307        sb.append("</ul></html>");
    307         JOptionPane.showMessageDialog(
    308                 parent,
    309                 sb.toString(),
    310                 tr("Warning"),
    311                 JOptionPane.WARNING_MESSAGE
    312         );
     308        if (!GraphicsEnvironment.isHeadless()) {
     309            JOptionPane.showMessageDialog(
     310                    parent,
     311                    sb.toString(),
     312                    tr("Warning"),
     313                    JOptionPane.WARNING_MESSAGE
     314            );
     315        }
    313316    }
    314317
     
    323326     * @param plugins the collection of plugins
    324327     */
    325     private static void filterUnmaintainedPlugins(Component parent, Collection<String> plugins) {
     328    static void filterUnmaintainedPlugins(Component parent, Collection<String> plugins) {
    326329        for (String unmaintained : UNMAINTAINED_PLUGINS) {
    327330            if (!plugins.contains(unmaintained)) {
  • trunk/test/unit/org/openstreetmap/josm/plugins/PluginHandlerTest.java

    r9870 r10093  
    22package org.openstreetmap.josm.plugins;
    33
     4import static org.junit.Assert.assertEquals;
     5import static org.junit.Assert.assertFalse;
    46import static org.junit.Assert.assertNotNull;
    57import static org.junit.Assert.assertTrue;
    68
     9import java.util.ArrayList;
    710import java.util.Arrays;
    811import java.util.List;
     
    1114import org.junit.Test;
    1215import org.openstreetmap.josm.JOSMFixture;
     16import org.openstreetmap.josm.Main;
    1317import org.openstreetmap.josm.plugins.PluginHandler.DeprecatedPlugin;
    1418import org.openstreetmap.josm.tools.Utils;
     
    5862        }
    5963    }
     64
     65    /**
     66     * Unit test of {@link PluginHandler#filterDeprecatedPlugins}.
     67     */
     68    @Test
     69    public void testFilterDeprecatedPlugins() {
     70        List<String> plugins = new ArrayList<>(Arrays.asList("foo", "bar", "imagery"));
     71        PluginHandler.filterDeprecatedPlugins(Main.parent, plugins);
     72        assertEquals(2, plugins.size());
     73        assertFalse(plugins.contains("imagery"));
     74    }
     75
     76    /**
     77     * Unit test of {@link PluginHandler#filterUnmaintainedPlugins}.
     78     */
     79    @Test
     80    public void testFilterUnmaintainedPlugins() {
     81        List<String> plugins = new ArrayList<>(Arrays.asList("foo", "bar", "gpsbabelgui"));
     82        PluginHandler.filterUnmaintainedPlugins(Main.parent, plugins);
     83        assertEquals(2, plugins.size());
     84        assertFalse(plugins.contains("gpsbabelgui"));
     85    }
    6086}
Note: See TracChangeset for help on using the changeset viewer.