Changeset 15749 in josm


Ignore:
Timestamp:
2020-01-22T20:57:57+01:00 (4 years ago)
Author:
simon04
Message:

SimilarNamedWaysTest: simplify by joining tests

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/test/unit/org/openstreetmap/josm/data/validation/tests/SimilarNamedWaysTest.java

    r15079 r15749  
    44import static org.junit.Assert.assertEquals;
    55import static org.junit.Assert.assertFalse;
    6 import static org.junit.Assert.assertTrue;
    7 
    8 import java.util.List;
    96
    107import org.junit.Before;
    118import org.junit.Test;
    129import org.openstreetmap.josm.JOSMFixture;
    13 import org.openstreetmap.josm.data.coor.LatLon;
    14 import org.openstreetmap.josm.data.osm.DataSet;
    15 import org.openstreetmap.josm.data.osm.Node;
    16 import org.openstreetmap.josm.data.osm.Way;
    17 import org.openstreetmap.josm.data.validation.TestError;
    1810
    1911/**
     
    3224    }
    3325
    34     private static List<TestError> testWays(String namea, String nameb) {
    35         DataSet ds = new DataSet();
    36 
    37         Node n00 = new Node(LatLon.ZERO);
    38         Node n10 = new Node(new LatLon(1, 0));
    39         Node n20 = new Node(new LatLon(2, 0));
    40         Node n30 = new Node(new LatLon(3, 0));
    41         Node n40 = new Node(new LatLon(4, 0));
    42 
    43         ds.addPrimitive(n00);
    44         ds.addPrimitive(n10);
    45         ds.addPrimitive(n20);
    46         ds.addPrimitive(n30);
    47         ds.addPrimitive(n40);
    48 
    49         Way waya = new Way();
    50         waya.addNode(n00);
    51         waya.addNode(n10);
    52         waya.addNode(n20);
    53         waya.put("name", namea);
    54         Way wayb = new Way();
    55         wayb.addNode(n20);
    56         wayb.addNode(n30);
    57         wayb.addNode(n40);
    58         wayb.put("name", nameb);
    59 
    60         ds.addPrimitive(waya);
    61         ds.addPrimitive(wayb);
    62 
    63         assertTrue(waya.isUsable());
    64         assertTrue(wayb.isUsable());
    65 
    66         SimilarNamedWays t = new SimilarNamedWays();
    67         t.startTest(null);
    68         t.visit(waya);
    69         t.visit(wayb);
    70         return t.getErrors();
    71     }
    72 
    73     @Test
    74     public void testCombinations() {
    75         assertTrue(testWays("Church Street", "Water Street").isEmpty());
    76         assertFalse(testWays("Main Street", "Maim Street").isEmpty());
    77         assertFalse(testWays("First Street", "Frist Street").isEmpty());
    78 
    79         assertTrue(testWays("1st Street", "2nd Street").isEmpty());
    80         assertTrue(testWays("First Avenue", "Second Avenue").isEmpty());
    81         assertTrue(testWays("West Main Street", "East Main Street").isEmpty());
    82         assertTrue(testWays("A Street", "B Street").isEmpty());
    83     }
    84 
    8526    private void checkSimilarity(String message, String name1, String name2, boolean expected) {
    8627        boolean actual = test.similaryName(name1, name2);
     
    9637        checkSimilarity("different case", "Testname", "TestName", true);
    9738        checkSimilarity("typo", "Testname", "Testxame", true);
     39        checkSimilarity("typo", "Main Street", "Maim Street", true);
     40        checkSimilarity("typo", "First Street", "Frist Street", true);
    9841        checkSimilarity("missing char", "Testname", "Testame", true);
    9942        checkSimilarity("additional char", "Testname", "Testxname", true);
    10043        checkSimilarity("2 changes", "Testname", "Tostxname", true);
    10144        checkSimilarity("3 changes", "Testname", "Tostxnam", false);
     45        checkSimilarity("many changes", "Church Street", "Water Street", false);
    10246
    10347        // regular expression rule
     
    11660        // synonyms
    11761        checkSimilarity("east and west", "East Foothill Drive", "West Foothill Drive", false);
     62        checkSimilarity("east and west", "East Main Street", "West Main Street", false);
    11863        checkSimilarity("east and west case", "east Foothill Drive", "West Foothill Drive", true);
    11964        checkSimilarity("first and second", "First Street", "Second Street", false);
     
    12368        checkSimilarity("first and second 2 changes", "First Street", "Soconds Street", true);
    12469        checkSimilarity("first and second 3 changes", "First Street", "Soconds Stret", false);
     70        checkSimilarity("A and B", "A Street", "B Street", false);
    12571
    12672        // case only, see #14858
Note: See TracChangeset for help on using the changeset viewer.