source: josm/trunk/test/unit/org/openstreetmap/josm/io/OsmApiTest.java@ 17360

Last change on this file since 17360 was 17275, checked in by Don-vip, 3 years ago

see #16567 - upgrade almost all tests to JUnit 5, except those depending on WiremockRule

See https://github.com/tomakehurst/wiremock/issues/684

  • Property svn:eol-style set to native
File size: 1.7 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.io;
3
4import static org.junit.jupiter.api.Assertions.assertEquals;
5
6import java.io.ByteArrayInputStream;
7import java.nio.charset.StandardCharsets;
8
9import org.junit.jupiter.api.BeforeAll;
10import org.junit.jupiter.api.Test;
11import org.openstreetmap.josm.JOSMFixture;
12import org.openstreetmap.josm.data.osm.Changeset;
13import org.openstreetmap.josm.data.osm.User;
14import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
15
16/**
17 * Unit tests of {@link OsmApi} class.
18 */
19class OsmApiTest {
20
21 /**
22 * Setup test.
23 */
24 @BeforeAll
25 public static void setUp() {
26 JOSMFixture.createUnitTestFixture().init();
27 }
28
29 /**
30 * Non-regression test for <a href="https://josm.openstreetmap.de/ticket/12675">Bug #12675</a>.
31 * @throws IllegalDataException if an error occurs
32 */
33 @Test
34 void testTicket12675() throws IllegalDataException {
35 OsmApi api = OsmApi.getOsmApi();
36 Changeset cs = new Changeset();
37 cs.setUser(User.getAnonymous());
38 cs.setId(38038262);
39 String xml = api.toXml(cs);
40 assertEquals("<?xml version='1.0' encoding='UTF-8'?>\n"+
41 "<osm version='0.6' generator='JOSM'>\n"+
42 " <changeset id='38038262' user='&lt;anonymous&gt;' uid='-1' open='false'>\n"+
43 " </changeset>\n"+
44 "</osm>\n", xml.replace("\r", ""));
45 Changeset cs2 = OsmChangesetParser.parse(
46 new ByteArrayInputStream(xml.getBytes(StandardCharsets.UTF_8)),
47 NullProgressMonitor.INSTANCE).iterator().next();
48 assertEquals(User.getAnonymous(), cs2.getUser());
49 }
50}
Note: See TracBrowser for help on using the repository browser.