source: josm/trunk/test/functional/org/openstreetmap/josm/gui/history/HistoryBrowserTest.java@ 6289

Last change on this file since 6289 was 6289, checked in by Don-vip, 11 years ago

Sonar/Findbugs - fix various problems

File size: 3.6 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.history;
3
4import static org.junit.Assert.fail;
5
6import java.awt.BorderLayout;
7import java.io.File;
8import java.io.InputStream;
9import java.text.MessageFormat;
10import java.util.Properties;
11import java.util.logging.Level;
12import java.util.logging.Logger;
13
14import javax.swing.JFrame;
15
16import org.junit.BeforeClass;
17import org.openstreetmap.josm.Main;
18import org.openstreetmap.josm.data.osm.OsmPrimitiveType;
19import org.openstreetmap.josm.data.osm.SimplePrimitiveId;
20import org.openstreetmap.josm.data.osm.history.History;
21import org.openstreetmap.josm.data.osm.history.HistoryDataSet;
22import org.openstreetmap.josm.data.projection.Projections;
23import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
24import org.openstreetmap.josm.io.OsmServerHistoryReader;
25import org.openstreetmap.josm.io.OsmTransferException;
26
27public class HistoryBrowserTest extends JFrame {
28
29 static private Logger logger = Logger.getLogger(HistoryBrowserTest.class.getName());
30
31 static Properties testProperties;
32
33 @BeforeClass
34 static public void init() {
35 testProperties = new Properties();
36
37 // load properties
38 //
39 try {
40 InputStream is = HistoryBrowserTest.class.getResourceAsStream("/test-functional-env.properties");
41 try {
42 testProperties.load(is);
43 } finally {
44 is.close();
45 }
46 } catch(Exception e){
47 logger.log(Level.SEVERE, MessageFormat.format("failed to load property file ''{0}''", "test-functional-env.properties"));
48 fail(MessageFormat.format("failed to load property file ''{0}''", "test-functional-env.properties"));
49 }
50
51 // check josm.home
52 //
53 String josmHome = testProperties.getProperty("josm.home");
54 if (josmHome == null) {
55 fail(MessageFormat.format("property ''{0}'' not set in test environment", "josm.home"));
56 } else {
57 File f = new File(josmHome);
58 if (! f.exists() || ! f.canRead()) {
59 fail(MessageFormat.format("property ''{0}'' points to ''{1}'' which is either not existing or not readable", "josm.home", josmHome));
60 }
61 }
62 System.setProperty("josm.home", josmHome);
63 Main.pref.init(false);
64
65 // init projection
66 Main.setProjection(Projections.getProjectionByCode("EPSG:3857")); // Mercator
67 }
68
69 private HistoryBrowser browser;
70
71 protected void build() {
72 setSize(500,500);
73 getContentPane().setLayout(new BorderLayout());
74 browser = new HistoryBrowser();
75 getContentPane().add(browser, BorderLayout.CENTER);
76 }
77
78 protected void populate(OsmPrimitiveType type, long id) {
79 OsmServerHistoryReader reader = new OsmServerHistoryReader(type, id);
80 HistoryDataSet ds = null;
81 try {
82 ds = reader.parseHistory(NullProgressMonitor.INSTANCE);
83 } catch(OsmTransferException e) {
84 e.printStackTrace();
85 return;
86 }
87 History h = ds.getHistory(new SimplePrimitiveId(id, type));
88 browser.populate(h);
89 }
90
91 /**
92 * Constructs a new {@code HistoryBrowserTest}.
93 */
94 public HistoryBrowserTest(){
95 build();
96 //populate(OsmPrimitiveType.NODE,354117);
97 //populate(OsmPrimitiveType.WAY,37951);
98 populate(OsmPrimitiveType.RELATION,5055);
99
100 }
101
102 static public void main(String args[]) {
103 HistoryBrowserTest.init();
104 new HistoryBrowserTest().setVisible(true);
105 }
106}
Note: See TracBrowser for help on using the repository browser.