Mercurial > boomslang
annotate pyntnclick/tests/test_resources.py @ 584:96ff2d8a8a9a pyntnclick
Allow list of image name fragments in load_image. Also, some docs.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Sat, 11 Feb 2012 16:45:07 +0200 |
parents | 27809609eeca |
children | f20d211d2c91 |
rev | line source |
---|---|
561 | 1 import os.path |
2 from unittest import TestCase | |
3 | |
571
20e296d4a3a5
Add load_image to Resources.
Jeremy Thurgood <firxen@gmail.com>
parents:
562
diff
changeset
|
4 from pygame.surface import Surface |
20e296d4a3a5
Add load_image to Resources.
Jeremy Thurgood <firxen@gmail.com>
parents:
562
diff
changeset
|
5 |
562 | 6 from pyntnclick.resources import Resources, ResourceNotFound |
561 | 7 |
8 | |
9 TEST_PATH = os.path.dirname(__file__) | |
10 DATA_PATH = os.path.join(os.path.dirname(TEST_PATH), 'data') | |
11 | |
12 test_path = lambda p: os.path.join(TEST_PATH, p) | |
13 data_path = lambda p: os.path.join(DATA_PATH, p) | |
14 | |
15 | |
16 class ResourcesTestCase(TestCase): | |
573 | 17 def setUp(self): |
18 self.res = self.get_resource_loader() | |
19 | |
20 def get_resource_loader(self, *args, **kw): | |
21 res = Resources('pyntnclick.tests', *args, **kw) | |
22 res.CONVERT_ALPHA = False # Because we have no display. | |
23 return res | |
24 | |
561 | 25 def test_get_paths_no_lang(self): |
26 self.assertEqual([test_path('thing'), data_path('thing')], | |
573 | 27 self.res.get_paths('thing')) |
561 | 28 |
29 def test_get_paths_lang(self): | |
573 | 30 res = self.get_resource_loader('en') |
561 | 31 self.assertEqual([test_path('en/thing'), test_path('thing'), |
32 data_path('en/thing'), data_path('thing')], | |
33 res.get_paths('thing')) | |
562 | 34 |
35 def test_get_resource_path_missing(self): | |
36 try: | |
573 | 37 self.res.get_resource_path('should_not_exist') |
562 | 38 self.fail('Expected ResourceNotFound error.') |
39 except ResourceNotFound, e: | |
40 self.assertEqual('should_not_exist', e.args[0]) | |
41 | |
42 def test_get_resource_path_in_test(self): | |
43 self.assertEqual(test_path('test_resources.py'), | |
573 | 44 self.res.get_resource_path('test_resources.py')) |
562 | 45 |
46 def test_get_resource_path_in_data(self): | |
573 | 47 self.assertEqual( |
48 data_path('images/pyntnclick/hand.png'), | |
49 self.res.get_resource_path('images/pyntnclick/hand.png')) | |
571
20e296d4a3a5
Add load_image to Resources.
Jeremy Thurgood <firxen@gmail.com>
parents:
562
diff
changeset
|
50 |
20e296d4a3a5
Add load_image to Resources.
Jeremy Thurgood <firxen@gmail.com>
parents:
562
diff
changeset
|
51 def test_load_image(self): |
573 | 52 image = self.res.load_image('pyntnclick/hand.png') |
571
20e296d4a3a5
Add load_image to Resources.
Jeremy Thurgood <firxen@gmail.com>
parents:
562
diff
changeset
|
53 self.assertTrue(isinstance(image, Surface)) |
580
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
54 |
584
96ff2d8a8a9a
Allow list of image name fragments in load_image. Also, some docs.
Jeremy Thurgood <firxen@gmail.com>
parents:
580
diff
changeset
|
55 def test_load_image_fragments(self): |
96ff2d8a8a9a
Allow list of image name fragments in load_image. Also, some docs.
Jeremy Thurgood <firxen@gmail.com>
parents:
580
diff
changeset
|
56 image = self.res.load_image(['pyntnclick', 'hand.png']) |
96ff2d8a8a9a
Allow list of image name fragments in load_image. Also, some docs.
Jeremy Thurgood <firxen@gmail.com>
parents:
580
diff
changeset
|
57 self.assertTrue(isinstance(image, Surface)) |
96ff2d8a8a9a
Allow list of image name fragments in load_image. Also, some docs.
Jeremy Thurgood <firxen@gmail.com>
parents:
580
diff
changeset
|
58 |
580
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
59 def test_load_image_different_basedir(self): |
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
60 image = self.res.load_image('hand.png', basedir='images/pyntnclick') |
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
61 self.assertTrue(isinstance(image, Surface)) |
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
62 |
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
63 def test_load_missing(self): |
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
64 try: |
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
65 self.res.load_image('should_not_exist') |
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
66 self.fail('Expected ResourceNotFound error.') |
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
67 except ResourceNotFound, e: |
27809609eeca
Allow different image basedir.
Jeremy Thurgood <firxen@gmail.com>
parents:
573
diff
changeset
|
68 self.assertEqual('images/should_not_exist', e.args[0]) |