Changeset 142176e in osmose-backend


Ignore:
Timestamp:
Nov 9, 2014 2:56:30 PM (5 years ago)
Author:
Jocelyn Jaubert <jocelyn.jaubert@…>
Branches:
master
Children:
900f3c8
Parents:
e43d097
Message:

Increase coverage of tests in plugins

Location:
plugins
Files:
19 edited

Legend:

Unmodified
Added
Removed
  • plugins/Name_Dictionary.py

    rc8909eb r142176e  
    152152                    err.append((703, abs(hash(WordComplet)), {"fix": {"name": initialName.replace(WordComplet, self.DictCorrections[WordComplet])} })) 
    153153                else: 
    154                     err.append((703, abs(hash(WordComplet)), {"en": WordComplet})) 
     154                    raise Exception("Could not find correction for %s" % WordComplet) 
    155155            else: 
    156156                PbEncodage = False 
     
    214214        a = Name_Dictionary(father()) 
    215215        a.init(None) 
     216        assert not a.node(None, {"highway": "Pont des Anes"}) 
    216217        name = [(u"Pont des Anes", u"Pont des Ânes"), 
    217218                (u"Pont des Ânes", None), 
     
    231232                self.check_err(rdp, ("name='%s'" % n)) 
    232233                fix = rdp[0][2]["fix"]["name"] 
    233                 print u'\u2713'.encode('utf-8') 
    234                 print fix.encode('utf-8') 
    235234                self.assertEquals(fix, f, u"name='%s' - fix = wanted='%s' / got='%s'" % (n, f, fix)) 
    236235            else: 
    237236                assert not rdp, ("name='%s'" % n) 
     237 
     238        assert not a.way(None, {"highway": u"Rue Saint-André"}, None) 
     239        assert not a.relation(None, {"highway": u"Rue Saint-André"}, None) 
     240        assert not a.way(None, {"name": u"Rue Saint-André"}, None) 
     241        assert not a.relation(None, {"name": u"Rue Saint-André"}, None) 
     242        self.check_err(a.way(None, {"name": u"Rue Saint-André"}, None)) 
     243        self.check_err(a.relation(None, {"name": u"Rue Saint-André"}, None)) 
     244 
     245        # code that is not reachable in normal cases 
     246        from nose.tools import assert_raises 
     247        a.DictCorrections["buebdgxrtsuei"] = None 
     248        assert_raises(Exception, a.node, None, {"name": "ceci est buebdgxrtsuei"}) 
  • plugins/Name_MisspelledWordByRegex.py

    r5116a9a r142176e  
    8181            self.check_err(a.node(None, {"name": d}), ("name='%s'" % d)) 
    8282            self.assertEquals(a.node(None, {"name": d})[0][2]["fix"]["name"], f) 
     83            assert not a.node(None, {"name": f}), ("name='%s'" % f) 
     84 
     85            self.check_err(a.way(None, {"name": d}, None), ("name='%s'" % d)) 
     86            self.check_err(a.relation(None, {"name": d}, None), ("name='%s'" % d)) 
     87            assert not a.node(None, {"amenity": f}), ("amenity='%s'" % f) 
  • plugins/Name_Multiple.py

    r96713d7 r142176e  
    6565        self.check_err(self.p.way(None, {"name": "aueuie / ueuaeuie"}, None)) 
    6666        self.check_err(self.p.way(None, {"name": "aueuie + ueuaeuie"}, None)) 
     67        assert not self.p.way(None, {"amenity": "aueuie + ueuaeuie"}, None) 
    6768        assert not self.p.way(None, {"name": "aueuie + ueuaeuie", "aeroway": "yes"}, None) 
    6869        assert not self.p.way(None, {"name": "Profil+"}, None) 
  • plugins/Name_PoorlyWrittenWayType.py

    ra781dcf r142176e  
    9191        for d in [u"ALLÉE ", u"AllÉes grandioses", u"BOUleVARD ", "Av. ", "Av ", "Bvd. ", "Rte ", "Rt. ", "Rond Point O", "RF "]: 
    9292            self.check_err(a.node(None, {"name": d}), ("name='%s'" % d)) 
     93            self.check_err(a.way(None, {"name": d}, None), ("name='%s'" % d)) 
     94            self.check_err(a.relation(None, {"name": d}, None), ("name='%s'" % d)) 
     95            assert not a.node(None, {"highway": d}), ("highway='%s'" % d) 
    9396 
    9497        for d in [u"Allée ", u"Allées fleuries", u"Boulevard ", "Rte"]: 
  • plugins/Name_Spaces.py

    r959f4e0 r142176e  
    6868                     u"éeuguiqe", 
    6969                    ]: 
    70             assert not a.way(None, {"name": name}, None), name 
     70            assert not a.node(None, {"name": name}), name 
    7171 
    7272        for name in [u"    uertaue u   ", 
     
    7676                     u"a  b", 
    7777                    ]: 
     78            assert not a.node(None, {"highway": name}), name 
     79            self.check_err(a.node(None, {"name": name}), name) 
    7880            self.check_err(a.way(None, {"name": name}, None), name) 
     81            self.check_err(a.relation(None, {"name": name}, None), name) 
  • plugins/Name_Toponymy.py

    r14f8392 r142176e  
    130130 
    131131        name = tags[u"name"] 
     132        print name 
    132133        name_subst = self.apply_special_subst(name) 
    133134        split = self._split(name_subst) 
     
    165166        a = Name_Toponymy(None) 
    166167        a.init(None) 
     168        assert not a.node(None, {"place": "yep"}) 
     169        assert not a.node(None, {"amenity": "baker", "name": "tio tio tiotio de  tio &apos;tio-tio &amp;tio! "}) 
     170 
     171        self.check_err(a.node(None, {"highway": "trunk", "name": "Rue des pommiers"})) 
     172        self.check_err(a.way(None, {"highway": "trunk", "name": "Rue des pommiers"}, None)) 
     173        self.check_err(a.relation(None, {"highway": "trunk", "name": "Rue des pommiers"}, None)) 
     174        assert not a.node(None, {"highway": "trunk", "name": "Rue des Pommiers"}) 
     175 
    167176        e = a.node(None, {"place": "yep", "name": "tio tio tiotio de  tio &apos;tio-tio &amp;tio! "}) 
    168177        self.check_err(e) 
  • plugins/Number.py

    r4187d41 r142176e  
    6363        for d in ["3,75", "foo", "18,4m", "4810"]: 
    6464            self.check_err(a.node(None, {"height":d}), ("height='%s'" % d)) 
     65            self.check_err(a.way(None, {"height":d}, None), ("height='%s'" % d)) 
     66            self.check_err(a.relation(None, {"height":d}, None), ("height='%s'" % d)) 
    6567 
    6668        for d in ["foo", "18kph", "1", "30 km/h", "30 c"]: 
  • plugins/TagFix_MultipleTag.py

    r975f5ab r142176e  
    115115        for t in [{"highway":"", "cycleway": "opposite"}, 
    116116                  {"highway":"primary", "tunnel": "yes"}, 
     117                  {"highway":"primary", "fee": "yes"}, 
     118                  {"junction":"roundabout", "waterway": "river"}, 
     119                  {"oneway":"yes", "building": "yes"}, 
    117120#                  {"power":"line", "voltage": "1"}, 
    118121                 ]: 
     
    124127 
    125128        assert a.node(None, {"name": "foo"}) 
     129        assert a.way(None, {"name": "foo"}, None) 
     130        assert a.relation(None, {"name": "foo"}, None) 
  • plugins/TagFix_MultipleTag_FR.py

    rb2ecb40 r142176e  
    110110 
    111111class Test(TestPluginCommon): 
    112     def test(self): 
     112    def test_FR(self): 
    113113        a = TagFix_MultipleTag_FR(None) 
    114114        class _config: 
     
    128128                  {"amenity":"pharmacy"}, 
    129129                  {"ref:FR:FANTOIR":"90123D123D", "highway": "residential"}, 
     130                  {"ref:FR:FANTOIR":"901230123D", "place": "hamlet"}, 
     131                  {"ref:FR:FANTOIR":"901230123D", "type": "multipolygon"}, 
     132                 ]: 
     133            self.check_err(a.way(None, t, None), t) 
     134            self.check_err(a.relation(None, t, None), t) 
     135 
     136        for t in [{"highway":"trunk", "ref": u"D\u20073"}, 
     137                  {"highway":"primary", "zone:maxspeed": "FR:50"}, 
     138                  {"highway":"primary", "zone:maxspeed": "FR:30", "maxspeed": "30"}, 
     139                  {"highway":"living_street"}, 
     140                  {"highway":"living_street", "zone:maxspeed": "FR:20", "maxspeed": "20"}, 
     141                  {"ref:FR:FANTOIR":"901230123D", "highway": "residential"}, 
     142                  {"ref:FR:FANTOIR":"90123D123D", "place": "hamlet"}, 
     143                  {"ref:FR:FANTOIR":"330633955T", "type": "associatedStreet"}, 
     144                 ]: 
     145            assert not a.way(None, t, None), t 
     146 
     147    def test_NC(self): 
     148        a = TagFix_MultipleTag_FR(None) 
     149        class _config: 
     150            options = {"country": "NC"} 
     151        class father: 
     152            config = _config() 
     153        a.father = father() 
     154        a.init(None) 
     155        for t in [{"amenity":"school", "name":u"École maternelle Clos Montesquieu"}, 
     156                  {"amenity":"school", "name":u"École élémentaire"}, 
     157                  {"name":u"Chemin Rural dit de la Borne Trouée"}, 
     158                  {"highway":"living_street", "zone:maxspeed": "30"}, 
     159                  {"highway":"primary", "zone:maxspeed": "FR:20"}, 
     160                  {"highway":"primary", "zone:maxspeed": "FR:30", "maxspeed": "70"}, 
     161                  {"highway":"living_street", "zone:maxspeed": "FR:20", "maxspeed": "30"}, 
     162                  {"highway":"trunk", "ref": "3"}, 
     163                  {"amenity":"pharmacy"}, 
     164                  {"ref:FR:FANTOIR":"90123D123D", "highway": "residential"}, 
     165                  {"highway":"trunk", "ref": u"D\u20073"}, 
     166                  {"school:FR":"maternelle", "ref": u"1989898"}, 
    130167                 ]: 
    131168            self.check_err(a.way(None, t, None), t) 
    132169 
    133         for t in [{"highway":"trunk", "ref": u"D\u20073"}, 
     170        for t in [{"highway":"trunk", "ref": u"RPN 73"}, 
    134171                  {"highway":"primary", "zone:maxspeed": "FR:50"}, 
    135172                  {"highway":"primary", "zone:maxspeed": "FR:30", "maxspeed": "30"}, 
  • plugins/TagFix_MultipleTag_fr.py

    rb403591 r142176e  
    9696                  {"highway": "primary", "name": u"All. des Roses"}, 
    9797                 ]: 
     98            self.check_err(a.node(None, t), t) 
    9899            self.check_err(a.way(None, t, None), t) 
     100            self.check_err(a.relation(None, t, None), t) 
    99101 
    100102        for t in [{"amenity": "place_of_worship", "name": u"Église de l'endroit"}, 
  • plugins/TagFix_Postcode.py

    r181f61d r142176e  
    109109        a.init(None) 
    110110        assert a.node(None, {"addr:postcode":"la bas"}) 
     111        assert a.way(None, {"addr:postcode":"la bas"}, None) 
     112        assert a.relation(None, {"addr:postcode":"la bas"}, None) 
    111113        assert not a.node(None, {"addr:postcode":"75000"}) 
    112114        assert not a.node(None, {"postal_code":"75000"}) 
  • plugins/TagFix_Tree.py

    r14f8392 r142176e  
    114114        for d in [u"Arbre", u"chablis ouvert 25cmd", u"Pin Sylvestre", u"Frêne commun", u"Chêne vert", u"abricotier"]: 
    115115            self.check_err(a.node(None, {"natural":"tree", "name":d}), ("name='%s'" % d)) 
     116            self.check_err(a.way(None, {"natural":"tree", "name":d}, None), ("name='%s'" % d)) 
     117            self.check_err(a.relation(None, {"natural":"tree", "name":d}, None), ("name='%s'" % d)) 
     118            assert not a.node(None, {"natural":"other", "name":d}), ("name='%s'" % d) 
    116119 
    117         for d in [u"cluster"]: 
     120        for d in [u"anything", u"Pin Sylvestre", u"Frêne commun", u"Chêne vert"]: 
     121            self.check_err(a.node(None, {"natural":"tree", "denotation":d}), ("denotation='%s'" % d)) 
     122 
     123        for d in [u"cluster", u"park"]: 
    118124            assert not a.node(None, {"natural":"tree", "denotation":d}), ("denotation='%s'" % d) 
    119125 
     126        for d in [u"anything", u"Pin Sylvestre", u"Frêne commun", u"Chêne vert"]: 
     127            self.check_err(a.node(None, {"natural":"tree", "type":d}), ("type='%s'" % d)) 
     128 
     129        for d in [u"broad_leafed", u"conifer"]: 
     130            assert not a.node(None, {"natural":"tree", "type":d}), ("type='%s'" % d) 
  • plugins/TagFix_Wikipedia.py

    rb403591 r142176e  
    186186                           has_error="Not a Wikipedia URL") 
    187187 
     188        self.check_err(self.analyser.node(None, {"wikipedia": "http://www.openstreetmap.fr"})) 
     189        self.check_err(self.analyser.way(None, {"wikipedia": "http://www.openstreetmap.fr"}, None)) 
     190        self.check_err(self.analyser.relation(None, {"wikipedia": "http://www.openstreetmap.fr"}, None)) 
     191 
    188192        err += self.check( { "wikipedia": "http://fr.wikipedia.org/wiki/Tour_Eiffel"}, 
    189193                           has_error="Wikipedia URL instead of article title", 
  • plugins/TagRemove_FR.py

    r2419133 r142176e  
    4242    def relation(self, data, tags, members): 
    4343        return self.node(data, tags) 
     44 
     45########################################################################### 
     46from plugins.Plugin import TestPluginCommon 
     47 
     48class Test(TestPluginCommon): 
     49    def test(self): 
     50        a = TagRemove_FR(None) 
     51        a.init(None) 
     52        assert not a.way(None, {"highway": "trunk"}, None) 
     53        self.check_err(a.node(None, {"designation": "yes", "highway": "primary"})) 
     54        self.check_err(a.way(None, {"designation": "yes", "highway": "primary"}, None)) 
     55        self.check_err(a.relation(None, {"designation": "yes", "highway": "primary"}, None)) 
     56        self.check_err(a.way(None, {"highway": "emergency_access_point", "name": "toto"}, None)) 
  • plugins/TagRemove_Incompatibles.py

    r451b315 r142176e  
    5555    def relation(self, data, tags, members): 
    5656        return self.node(data, tags) 
     57 
     58########################################################################### 
     59from plugins.Plugin import TestPluginCommon 
     60 
     61class Test(TestPluginCommon): 
     62    def test(self): 
     63        a = TagRemove_Incompatibles(None) 
     64        a.init(None) 
     65        for t in [{"aerialway": "yes", "aeroway": "yes"}, 
     66                  {"highway": "trunk", "railway": "rail"}, 
     67                  {"bridge": "yes", "tunnel": "yes"}, 
     68                 ]: 
     69            self.check_err(a.node(None, t), t) 
     70            self.check_err(a.way(None, t, None), t) 
     71            self.check_err(a.relation(None, t, None), t) 
     72 
     73        for t in [{"aerialway": "yes"}, 
     74                  {"highway": "residential", "railway": "tram"}, 
     75                  {"highway": "bus_stop", "railway": "tram_stop"}, 
     76                  {"bridge": "yes", "tunnel": "no"}, 
     77                 ]: 
     78            assert not a.node(None, t), t 
  • plugins/TagRemove_NameIsRef.py

    rf88d773 r142176e  
    6767        a = TagRemove_NameIsRef(None) 
    6868        a.init(None) 
    69         name = [(u"Route des Poules N10 vers le poulailler", u"Route des Poules vers le poulailler", u"N10"), 
    70                 (u"Chemin de la C6 au moulin", None, None), 
    71                 (u"Ancienne RN 7", u"Ancienne", u"N 7"), 
    72                 (u"la D21E1", "la", u"D21E1"), 
     69        name = [(u"Route des Poules N10 vers le poulailler", True, u"Route des Poules vers le poulailler", u"N10"), 
     70                (u"Chemin de la C6 au moulin", False, None, None), 
     71                (u"Ancienne RN 7", True, u"Ancienne", u"N 7"), 
     72                (u"la D21E1", True, "la", u"D21E1"), 
     73                (u"ancienne N10", True, None, None), 
     74                (u"RN 7", True, None, u"N 7"), 
     75                (u"N° 7", True, None, None), 
    7376               ] 
    74         for (n, f, r) in name: 
     77        for (n, gen_err, f, r) in name: 
    7578            rdp = a.way(None, {"name": n, "highway": "H"}, None) 
    76             if f: 
     79            if gen_err: 
    7780                self.check_err(rdp, ("name='%s'" % n)) 
    78                 fix = rdp[0][2]["fix"]["~"]["name"] 
    79                 self.assertEquals(fix, f, "name='%s' - fix = wanted='%s' / got='%s'" % (n, f, fix)) 
    8081            else: 
    8182                assert not rdp, ("name='%s'" % n) 
    8283 
    83             print r 
     84            if f: 
     85                fix1 = rdp[0][2]["fix"]["~"]["name"] 
     86                self.assertEquals(fix1, f, "name='%s' - fix = wanted='%s' / got='%s'" % (n, f, fix1)) 
     87            elif gen_err and r: 
     88                fix1 = rdp[0][2]["fix"]["-"] 
     89                self.assertEquals(fix1, ["name"], "name='%s' - fix = wanted='%s' / got='%s'" % (n, f, fix1)) 
     90 
    8491            if r: 
    85                 self.check_err(rdp, ("name='%s'" % n)) 
    86                 fix = rdp[0][2]["fix"]["+"]["ref"] 
    87                 self.assertEquals(fix, r, "ref='%s' - fix = wanted='%s' / got='%s'" % (n, r, fix)) 
    88             else: 
    89                 assert not rdp, ("name='%s'" % n) 
     92                fix2 = rdp[0][2]["fix"]["+"]["ref"] 
     93                self.assertEquals(fix2, r, "ref='%s' - fix = wanted='%s' / got='%s'" % (n, r, fix2)) 
     94 
     95            assert not a.way(None, {"name": n, "highway": "H", "ref": "N10"}, None) 
     96            assert not a.way(None, {"name": n}, None) 
  • plugins/TagRemove_OpenSeaMap.py

    r65e8ba3 r142176e  
    3232        if "seamark:fixme" in tags: 
    3333            return [(4060, 0, {})] 
     34 
     35########################################################################### 
     36from plugins.Plugin import TestPluginCommon 
     37 
     38class Test(TestPluginCommon): 
     39    def test(self): 
     40        a = TagRemove_OpenSeaMap(None) 
     41        a.init(None) 
     42        assert not a.node(None, {"seamark": "trunk"}) 
     43        self.check_err(a.node(None, {"seamark:fixme": "yes"})) 
     44        self.check_err(a.node(None, {"seamark:fixme": "todo"})) 
  • plugins/TagRemove_Roundabout.py

    r0a47b1b r142176e  
    4646        a.init(None) 
    4747        assert not a.way(None, {"junction": "roundabout"}, None) 
     48        assert not a.way(None, {"junction": "yes", "oneway": "true"}, None) 
    4849        self.check_err(a.way(None, {"junction": "roundabout", "oneway": "true"}, None)) 
  • plugins/TagRemove_Roundabout_Ref.py

    r57afd76 r142176e  
    4646    def test(self): 
    4747        a = TagRemove_Roundabout_Ref(None) 
     48        a.init(None) 
     49        assert not a.way(None, {"highway": "trunk", "ref": "1"}, None) 
     50        assert not a.way(None, {"junction": "other", "ref": "1"}, None) 
    4851        assert not a.way(None, {"junction": "roundabout"}, None) 
    4952        self.check_err(a.way(None, {"junction": "roundabout", "ref": "1"}, None)) 
Note: See TracChangeset for help on using the changeset viewer.