From: Eevee Date: Mon, 13 Sep 2010 04:08:50 +0000 (-0700) Subject: Crash fix: lookup with empty prefixes. X-Git-Tag: veekun-promotions/2010091501~1 X-Git-Url: http://git.veekun.com/zzz-pokedex.git/commitdiff_plain/bb30a496f851896b651fdc14ae9a83273efc6451?ds=sidebyside Crash fix: lookup with empty prefixes. --- diff --git a/pokedex/lookup.py b/pokedex/lookup.py index 774df92..98e69c4 100644 --- a/pokedex/lookup.py +++ b/pokedex/lookup.py @@ -296,7 +296,11 @@ class PokedexLookup(object): name = name.strip() prefixes = prefix_chunk.split(',') - user_valid_types = [_.strip() for _ in prefixes] + user_valid_types = [] + for prefix in prefixes: + prefix = prefix.strip() + if prefix: + user_valid_types.append(prefix) # Merge the valid types together. Only types that appear in BOTH lists # may be used. diff --git a/pokedex/tests/test_lookup.py b/pokedex/tests/test_lookup.py index 25c3c8a..36f11a1 100644 --- a/pokedex/tests/test_lookup.py +++ b/pokedex/tests/test_lookup.py @@ -146,3 +146,8 @@ def test_random_lookup(): assert_equal(len(results), 1, u'Constrained random returns one result') assert_equal(results[0].object.__tablename__, table_name, u'Constrained random returns result from the right table') + +def test_crash_empty_prefix(): + """Searching for ':foo' used to crash, augh!""" + results = lookup.lookup(u'Eevee') + assert_equal(results[0].object.name, u'Eevee', u'Empty prefix dun crash')