Changeset 14f8392 in osmose-backend


Ignore:
Timestamp:
Feb 10, 2014 9:02:17 PM (6 years ago)
Author:
Jocelyn Jaubert <jocelyn.jaubert@…>
Branches:
master
Children:
3ea9298
Parents:
60c0ffa
git-author:
Jocelyn Jaubert <jocelyn.jaubert@…> (10/02/2014 20:50:05)
git-committer:
Jocelyn Jaubert <jocelyn.jaubert@…> (10/02/2014 21:02:17)
Message:

Add tests for unicode outputs on error

Location:
plugins
Files:
24 edited

Legend:

Unmodified
Added
Removed
  • plugins/Administrative_TooManyWays.py

    r83180247 r14f8392  
    6161       w3   = { "ref": 2, "role": "xx", "type": "way"} 
    6262       n1   = { "ref": 1, "role": "xx", "type": "node"} 
    63        assert self.p.relation(None, {"boundary": "administrative"}, [w1_0, w1_1]) 
    64        assert self.p.relation(None, {"boundary": "administrative"}, [w1_0, w1_1, w2, w3, n1]) 
     63       self.check_err(self.p.relation(None, {"boundary": "administrative"}, [w1_0, w1_1])) 
     64       self.check_err(self.p.relation(None, {"boundary": "administrative"}, [w1_0, w1_1, w2, w3, n1])) 
    6565       assert not self.p.relation(None, {"boundary": "administrative"}, [w1_0, w2]) 
    6666       assert not self.p.relation(None, {"boundary": "administrative"}, [w1_0, n1]) 
  • plugins/Construction.py

    r65aef2b r14f8392  
    115115                    t = tags.copy() 
    116116                    t.update({tag_d: val_d}) 
    117                     assert self.p.node({}, t), t 
     117                    self.check_err(self.p.node({}, t), t) 
    118118                for val_d in not_correct_dates: 
    119119                    t = tags.copy() 
     
    131131         tags = {"construction": "yes"} 
    132132         for ts in ["2003-01-04", "1989-03-10"]: 
    133              assert self.p.node({"timestamp": ts}, tags), ts 
     133             self.check_err(self.p.node({"timestamp": ts}, tags), ts) 
    134134         for ts in ["2078-01-04"]: 
    135135             assert not self.p.node({"timestamp": ts}, tags), ts 
  • plugins/Date.py

    r9c54ca6 r14f8392  
    9999 
    100100        for d in ["yes", "XVI"]: 
    101             assert a.node(None, {"date":d}), ("date=%s" % d) 
     101            self.check_err(a.node(None, {"date":d}), ("date=%s" % d)) 
  • plugins/Highway_Lanes.py

    r53f7279 r14f8392  
    169169        t = {"highway": "residential", "lanes":"r"} 
    170170        r = a.way(None, t, None) 
    171         assert r[0][0] == 31601, t 
     171        self.check_err(r) 
     172        self.assertEquals(r[0][0], 31601) 
    172173     
    173174        t = {"highway": "residential", "lanes":"1", "oneway":"yes"} 
     
    175176     
    176177        t = {"highway": "residential", "lanes":"2", "destination:lanes":"*", "destination:lanes:backward":"*"} 
    177         assert a.way(None, t, None), t 
     178        self.check_err(a.way(None, t, None), t) 
    178179     
    179180        t = {"highway": "residential", "lanes":"2", "destination:lanes:forward":"*", "destination:lanes:backward":"*"} 
  • plugins/Highway_Parking_Lane.py

    r9c54ca6 r14f8392  
    7373 
    7474        t = {"highway": "r", "parking:lane:side": "t"} 
    75         assert a.way(None, t, None), t 
     75        self.check_err(a.way(None, t, None), t) 
    7676 
    7777        t = {"highway": "r", "parking:lane:right": "parallel", "parking:lane:both": "parallel"} 
    78         assert a.way(None, t, None), t 
     78        self.check_err(a.way(None, t, None), t) 
    7979 
    8080        t = {"highway": "r", "parking:lane:right": "p"} 
    81         assert a.way(None, t, None), t 
     81        self.check_err(a.way(None, t, None), t) 
    8282 
    8383        t = {"highway": "r", "parking:condition:right": "parallel"} 
    84         assert a.way(None, t, None), t 
     84        self.check_err(a.way(None, t, None), t) 
    8585 
    8686        t = {"highway": "r", "parking:lane:both:parallel": "t"} 
  • plugins/Name_Initials.py

    r65aef2b r14f8392  
    5555 
    5656    def test(self): 
    57         assert self.p.node(None, {"name": "A.Bsuaeuae"}) 
    58         assert self.p.way(None, {"name": "C.Dkuaeu"}, None) 
     57        self.check_err(self.p.node(None, {"name": "A.Bsuaeuae"})) 
     58        self.check_err(self.p.way(None, {"name": "C.Dkuaeu"}, None)) 
    5959        assert not self.p.relation(None, {"name": "E. Fiuaeuie"}, None) 
    6060        assert not self.p.node(None, {"name": "G.H."}) 
  • plugins/Name_MisspelledWordByRegex.py

    r9c54ca6 r14f8392  
    7474                       (u"Ecole", u"École"), 
    7575                      ]: 
    76             assert a.node(None, {"name": d}), ("name='%s'" % d) 
     76            self.check_err(a.node(None, {"name": d}), ("name='%s'" % d)) 
    7777            self.assertEquals(a.node(None, {"name": d})[0][2]["fix"]["name"], f) 
  • plugins/Name_Multiple.py

    r65aef2b r14f8392  
    5757 
    5858    def test(self): 
    59         assert self.p.way(None, {"name": "aueuie ; ueuaeuie"}, None) 
    60         assert self.p.way(None, {"name": "aueuie / ueuaeuie"}, None) 
    61         assert self.p.way(None, {"name": "aueuie + ueuaeuie"}, None) 
     59        self.check_err(self.p.way(None, {"name": "aueuie ; ueuaeuie"}, None)) 
     60        self.check_err(self.p.way(None, {"name": "aueuie / ueuaeuie"}, None)) 
     61        self.check_err(self.p.way(None, {"name": "aueuie + ueuaeuie"}, None)) 
    6262        assert not self.p.way(None, {"name": "aueuie + ueuaeuie", "aeroway": "yes"}, None) 
  • plugins/Name_PoorlyWrittenWayType.py

    r9c54ca6 r14f8392  
    8989        a.init(None) 
    9090        for d in [u"ALLÉE ", u"AllÉes grandioses", u"BOUleVARD ", "Av. ", "Av ", "Bvd. ", "Rte ", "Rt. "]: 
    91             assert a.node(None, {"name": d}), ("name='%s'" % d) 
     91            self.check_err(a.node(None, {"name": d}), ("name='%s'" % d)) 
    9292 
    9393        for d in [u"Allée ", u"Allées fleuries", u"Boulevard ", "Rte"]: 
  • plugins/Name_Saint.py

    r65aef2b r14f8392  
    5656 
    5757    def test(self): 
    58         assert self.p.node(None, {"name": "Saint Pierre"}) 
    59         assert self.p.way(None, {"name": "Sainte Julie"}, None) 
     58        self.check_err(self.p.node(None, {"name": "Saint Pierre"})) 
     59        self.check_err(self.p.way(None, {"name": "Sainte Julie"}, None)) 
    6060        assert not self.p.relation(None, {"name": "Saint-Matthieu"}, None) 
    6161        assert not self.p.way(None, {"name": "Sainte-Sophie"}, None) 
  • plugins/Name_Toponymy.py

    r9c54ca6 r14f8392  
    166166        a.init(None) 
    167167        e = a.node(None, {"place": "yep", "name": "tio tio tiotio de  tio &apos;tio-tio &amp;tio! "}) 
     168        self.check_err(e) 
    168169        self.assertEquals(e[0][2]["fix"]["name"], "Tio Tio Tiotio de  Tio &apos;Tio-Tio &amp;Tio! ") 
  • plugins/Number.py

    r9c54ca6 r14f8392  
    6262 
    6363        for d in ["3,75", "foo", "18,4m", "4810"]: 
    64             assert a.node(None, {"height":d}), ("height='%s'" % d) 
     64            self.check_err(a.node(None, {"height":d}), ("height='%s'" % d)) 
    6565 
    6666        for d in ["foo", "18kph", "1"]: 
    67             assert a.node(None, {"maxspeed":d}), ("maxspeed='%s'" % d) 
     67            self.check_err(a.node(None, {"maxspeed":d}), ("maxspeed='%s'" % d)) 
    6868 
    6969        for d in ["50", "FR:urban"]: 
  • plugins/Plugin.py

    r9c54ca6 r14f8392  
    130130    def setUp(self): 
    131131        import analysers.Analyser 
     132 
     133 
     134    # Check errors generation, and unicode encoding 
     135    def check_err(self, errors, log=""): 
     136        assert errors, log 
     137        for error in errors: 
     138            assert isinstance(error[0], int), error[0] 
     139            assert isinstance(error[1], int), error[1] 
     140            assert isinstance(error[2], dict), error[2] 
     141            self.check_dict(error[2], log) 
     142 
     143    def check_dict(self, d, log): 
     144        for (k,v) in d.items(): 
     145            self.check_str(k, log) 
     146            if isinstance(v, basestring): 
     147                self.check_str(v, log) 
     148            elif isinstance(v, dict): 
     149                self.check_dict(v, log) 
     150            else: 
     151                self.check_array(v, log) 
     152 
     153    def check_array(self, a, log): 
     154        for v in a: 
     155            if isinstance(v, basestring): 
     156                self.check_str(v, log) 
     157            elif isinstance(v, dict): 
     158                self.check_dict(v, log) 
     159            else: 
     160                self.check_array(v, log) 
     161 
     162    def check_str(self, s, log): 
     163        if isinstance(s, str): 
     164            try: 
     165                s.decode('ascii') 
     166            except: 
     167                print log 
     168                print s 
     169                raise 
  • plugins/Source.py

    raff1c3c r14f8392  
    8383 
    8484        for d in [{u"source":u"IGN"}]: 
    85              assert a.node(None, d), d 
     85             self.check_err(a.node(None, d), d) 
  • plugins/TagFix_Deprecated.py

    r53f7279 r14f8392  
    9696                  {"highway":"ford"}, 
    9797                 ]: 
    98             assert a.node(None, d), d 
     98            self.check_err(a.node(None, d), d) 
    9999 
    100100        for d in [{"onway":"yes"}]: 
  • plugins/TagFix_DuplicateValue.py

    r9c54ca6 r14f8392  
    9292        a.init(None) 
    9393        t = {"ref":"E 05; E 70; E 05;E 70; E 05;E 70; E 05;E 70; E 05;E 70"} 
    94         assert a.node(None, t), t 
     94        self.check_err(a.node(None, t), t) 
    9595 
    9696        t = {"ref:mhs":"IA00070520; IA00070492"} 
  • plugins/TagFix_MultipleTag.py

    r9c54ca6 r14f8392  
    9999        for d in ["clockwise", "anticlockwise"]: 
    100100            t = {"highway":"mini_roundabout", "direction":d} 
    101             assert a.node(None, t), t 
     101            self.check_err(a.node(None, t), t) 
    102102 
    103103        a.father.config.options["driving_side"] = "left" 
    104104        for d in ["clockwise", "anticlockwise"]: 
    105105            t = {"highway":"mini_roundabout", "direction":d} 
    106             assert a.node(None, t), t 
     106            self.check_err(a.node(None, t), t) 
    107107 
    108108        for t in [{"highway":"", "cycleway": "opposite"}, 
     
    110110#                  {"power":"line", "voltage": "1"}, 
    111111                 ]: 
    112             assert a.way(None, t, None), t 
     112            self.check_err(a.way(None, t, None), t) 
    113113 
    114114        for t in [{"highway":"", "cycleway": "opposite", "oneway": "yes"}, 
  • plugins/TagFix_MultipleTag_FR.py

    r28caff3 r14f8392  
    108108        a.init(None) 
    109109        for t in [{"amenity":"school", "name":u"École maternelle Clos Montesquieu"}, 
     110                  {"amenity":"school", "name":u"École élémentaire"}, 
    110111                  {"name":u"Chemin Rural dit de la Borne Trouée"}, 
     112                  {"highway":"living_street", "zone:maxspeed": "30"}, 
     113                  {"highway":"primary", "zone:maxspeed": "FR:20"}, 
     114                  {"highway":"living_street", "zone:maxspeed": "FR:20", "maxspeed": "30"}, 
    111115                  {"highway":"trunk", "ref": "3"}, 
    112116                  {"amenity":"pharmacy"}, 
    113117                 ]: 
    114             assert a.way(None, t, None), t 
     118            self.check_err(a.way(None, t, None), t) 
    115119 
    116120        for t in [{"highway":"trunk", "ref": u"D\u20073"}, 
  • plugins/TagFix_Note.py

    rfab8e79 r14f8392  
    139139        assert not self.p.node(None, {}), ("node with no note") 
    140140        for d in self.note_gen_err: 
    141             assert self.p.node(None, {"note": d}), ("node with note='%s'" % d) 
     141            self.check_err(self.p.node(None, {"note": d}), ("node with note='%s'" % d)) 
    142142        for d in self.note_gen_no_err: 
    143143            assert not self.p.node(None, {"note": d}), ("node with note='%s'" % d) 
     
    146146        assert not self.p.way(None, {}, []), ("way with no note") 
    147147        for d in self.note_gen_err: 
    148             assert self.p.way(None, {"note": d}, []), ("way with note='%s'" % d) 
     148            self.check_err(self.p.way(None, {"note": d}, []), ("way with note='%s'" % d)) 
    149149        for d in self.note_gen_no_err: 
    150150            assert not self.p.way(None, {"note": d}, []), ("way with note='%s'" % d) 
     
    153153        assert not self.p.relation(None, {}, []), ("relation with no note") 
    154154        for d in self.note_gen_err: 
    155             assert self.p.relation(None, {"note": d}, []), ("relation with note='%s'" % d) 
     155            self.check_err(self.p.relation(None, {"note": d}, []), ("relation with note='%s'" % d)) 
    156156        for d in self.note_gen_no_err: 
    157157            assert not self.p.relation(None, {"note": d}, []), ("relation with note='%s'" % d) 
  • plugins/TagFix_Postcode.py

    rd0944e5 r14f8392  
    9797        a.father = father() 
    9898        a.init(None) 
    99         assert a.node(None, {"addr:postcode":"la bas"}) 
     99        self.check_err(a.node(None, {"addr:postcode":"la bas"})) 
    100100        assert not a.node(None, {"addr:postcode":"75000"}) 
  • plugins/TagFix_Role.py

    r9c54ca6 r14f8392  
    4646        a = TagFix_Role(None) 
    4747        a.init(None) 
    48         assert a.relation(None, None, [{"role":"<std>"}]) 
     48        self.check_err(a.relation(None, None, [{"role":"<std>"}])) 
  • plugins/TagFix_Tree.py

    rd0944e5 r14f8392  
    113113 
    114114        for d in [u"Arbre", u"chablis ouvert 25cmd", u"Pin Sylvestre", u"Frêne commun", u"Chêne vert", u"abricotier"]: 
    115             assert a.node(None, {"natural":"tree", "name":d}), ("name='%s'" % d) 
     115            self.check_err(a.node(None, {"natural":"tree", "name":d}), ("name='%s'" % d)) 
    116116 
    117117        for d in [u"cluster"]: 
  • plugins/TagFix_Wikipedia.py

    r9c54ca6 r14f8392  
    123123            print "FAIL:%s\nshould have fix %s\ninstead of     %s\n"%(tags, fix, errors_fix) 
    124124            return 1 
     125        if has_error: 
     126            self.check_err(errors, (tags, errors_msg)) 
    125127        return 0 
    126128 
  • plugins/TagRemove_NameIsRef.py

    r9c54ca6 r14f8392  
    7474            rdp = a.way(None, {"name": n, "highway": "H"}, None) 
    7575            if f: 
    76                 assert rdp, ("name='%s'" % n) 
     76                self.check_err(rdp, ("name='%s'" % n)) 
    7777                fix = rdp[0][2]["fix"]["~"]["name"] 
    7878                self.assertEquals(fix, f, "name='%s' - fix = wanted='%s' / got='%s'" % (n, f, fix)) 
Note: See TracChangeset for help on using the changeset viewer.