35a3fb18d482a759ca57d22797ef6f7f8b101b04
2 from nose
.tools
import *
5 from pokedex
.db
import connect
, tables
6 from pokedex
.util
import get
10 def test_get_item_identifier():
11 item
= get
.get(session
, tables
.Item
, identifier
='master-ball')
12 assert item
.name
== 'Master Ball'
14 def test_get_item_name():
15 item
= get
.get(session
, tables
.Item
, name
='Awakening')
16 assert item
.name
== 'Awakening'
18 def test_get_english_by_identifier():
19 language
= get
.get(session
, tables
.Language
, 'en')
20 assert language
.name
== 'English'
22 def test_get_pokemon_baseform_identifier():
23 for identifier
in 'burmy shaymin unown cresselia'.split():
24 poke
= get
.get(session
, tables
.Pokemon
, identifier
=identifier
)
25 assert poke
.identifier
== identifier
26 assert poke
.is_base_form
28 def test_get_pokemon_baseform_name():
29 for name
in 'Burmy Shaymin Unown Cresselia'.split():
30 poke
= get
.get(session
, tables
.Pokemon
, name
=name
)
31 assert poke
.name
== name
32 assert poke
.is_base_form
34 def test_get_pokemon_baseform_name_explicit_language():
35 french
= get
.get(session
, tables
.Language
, 'fr')
36 for name
in 'Cheniti Shaymin Zarbi Cresselia'.split():
37 poke
= get
.get(session
, tables
.Pokemon
, name
=name
, language
=french
)
38 assert poke
.name_map
[french
] == name
, poke
.name_map
[french
]
39 assert poke
.is_base_form
41 def test_get_pokemon_other_form_identifier():
42 for ii
in 'wormadam/trash shaymin/sky shaymin/land'.split():
43 pokemon_identifier
, form_identifier
= ii
.split('/')
44 poke
= get
.get(session
, tables
.Pokemon
, identifier
=pokemon_identifier
, form_identifier
=form_identifier
)
45 assert poke
.identifier
== pokemon_identifier
46 if poke
.form
.unique_pokemon_id
:
47 assert poke
.form
.identifier
== form_identifier
50 pokemon
= get
.pokemon(session
)
51 assert pokemon
[0].identifier
== 'bulbasaur'
52 assert pokemon
[-1].identifier
== 'genesect'
54 def test_pokemon_by_name():
55 pokemon
= get
.pokemon(session
, order
=tables
.Pokemon
.name
)
56 assert pokemon
[0].identifier
== 'abomasnow'
57 assert pokemon
[-1].identifier
== 'zweilous'
59 def test_types_french_order():
60 french
= get
.get(session
, tables
.Language
, 'fr')
61 types
= get
.types(session
, order
=None)
62 types
= list(get
.order_by_name(types
, tables
.Type
, language
=french
))
63 assert types
[0].name_map
[french
] == 'Acier', types
[0].name_map
[french
]
64 assert types
[-1].name_map
[french
] == 'Vol', types
[-1].name_map
[french
]
67 moves
= get
.moves(session
)
68 assert moves
[0].identifier
== 'absorb'
69 assert moves
[-1].identifier
== 'zen-headbutt'
72 items
= get
.items(session
)
73 assert items
[0].identifier
== 'ability-urge'
74 assert items
[-1].identifier
== 'zoom-lens'