Skip to content

Commit 22ed23d

Browse files
committed
https://github.com/hasii2011/albow-python-3/issues/61
1 parent 0d81004 commit 22ed23d

File tree

8 files changed

+28
-25
lines changed

8 files changed

+28
-25
lines changed

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,6 @@ __pycache__/
88
/python3_albow.egg-info/
99
/site/
1010
/docs/
11-
/venv-pyenv-3.7.7-system/
11+
/venv-pyenv-3.7.7/
12+
/venv-pyenv-3.8.5/
13+

albow/demo/AlbowDemo.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ def main():
4444
from albow.demo.AlbowDemoShell import AlbowDemoShell
4545

4646
pygame.init()
47-
pygame.display.set_caption("%s" % DEMO_WINDOW_TITLE)
47+
pygame.display.set_caption(f'{DEMO_WINDOW_TITLE}')
4848

4949
# "file_handler": {
5050
# "class": "logging.FileHandler",

albow/dialog/FileDialog.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ def __init__(self, prompt=None, suffixes=None, **kwds):
2828
label = None
2929
d = self.margin
3030
self.suffixes = suffixes or ()
31+
if self.up_button_text is None:
32+
self.up_button_text = ''
33+
3134
up_button = Button(self.up_button_text, action=self.go_up)
3235
dir_box = DirectoryPathView(self.box_width - up_button.width - 10, self)
3336
self.dir_box = dir_box

requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
pygame==1.9.6
2+
jsonpickle==1.4.1

test/DummyVehicle.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,3 +54,7 @@ def __eq__(self, theOtherOne):
5454
return True
5555
else:
5656
return False
57+
58+
def __repr__(self):
59+
return f'{self.velocity=} {self.weight=} {self.width=} {self.height=}'
60+

test/TestBase.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ class TestBase(TestCase):
1414
A base unit test class to initialize some logging stuff we need
1515
"""
1616

17+
RESOURCES_PACKAGE_NAME: str = 'test.testresources'
18+
1719
@classmethod
1820
def setUpLogging(cls):
1921
""""""

test/TestReferences.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,17 +69,16 @@ def testBadBItemRefInsertion(self):
6969
#
7070
try:
7171
velocityControl.set_value(500)
72-
self.assertTrue(velocityControl.get_value() == vehicleList[TEST_ITEM_INDEX].velocity,
73-
"Control did not update reference")
72+
self.assertTrue(velocityControl.get_value() == vehicleList[TEST_ITEM_INDEX].velocity, "Control did not update reference")
7473
except ItemRefInsertionException as e:
75-
self.logger.error("%s", e.message)
74+
self.logger.error(f"{e.message}")
7675

7776
def testBasicItemRefRetrieval(self):
7877

7978
vehicleList = self.getVehicleList()
8079

8180
itemRef = ItemRef(base=vehicleList, index=TEST_ITEM_INDEX)
82-
self.logger.info("Created %s", itemRef)
81+
self.logger.info(f"Created {itemRef=}")
8382

8483
velocityControl: DummyControl = DummyControl(ref=itemRef)
8584
self.logger.info("Created velocity control %s", velocityControl)

test/TestResourceUtility.py

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,21 @@
11

22
import os
33

4-
from os import sep as osSep
5-
from os import path as osPath
6-
from os import getcwd
7-
from os import chdir
8-
94
from logging import Logger
105
from logging import getLogger
116

127
from unittest import main as unitTestMain
138
from unittest import expectedFailure
149

10+
from pkg_resources import resource_filename
11+
1512
from test.TestBase import TestBase
1613

1714
from albow.core.ResourceUtility import ResourceUtility
1815

1916
UNIT_TEST_DIR_NAME: str = 'test'
2017
RESOURCE_DIR_NAME: str = 'testresources'
21-
TEST_SOUND_RELATIVE_PATH: str = f'{RESOURCE_DIR_NAME}{osSep}TestSound.mp3'
18+
TEST_SOUND_RELATIVE_PATH: str = f'TestSound.mp3'
2219

2320

2421
class TestResourceUtility(TestBase):
@@ -58,17 +55,17 @@ def testLoadSound(self):
5855
import pygame
5956
pygame.init()
6057

61-
self._findTestResourceDirectory()
58+
fqFileName: str = self.getFullResourcePath(TEST_SOUND_RELATIVE_PATH)
6259

63-
dummySound = ResourceUtility.load_sound(TEST_SOUND_RELATIVE_PATH)
60+
dummySound = ResourceUtility.load_sound(fqFileName)
6461
self.logger.info(f"{dummySound}")
6562

6663
def testLoadSoundFail(self):
6764

68-
self._findTestResourceDirectory()
65+
fqFileName: str = self.getFullResourcePath(TEST_SOUND_RELATIVE_PATH)
6966

7067
ResourceUtility.sound_cache = None
71-
dummySound = ResourceUtility.load_sound(TEST_SOUND_RELATIVE_PATH)
68+
dummySound = ResourceUtility.load_sound(fqFileName)
7269

7370
self.assertEqual(first=ResourceUtility.dummy_sound, second=dummySound, msg="Did not get the dummy sound")
7471

@@ -77,16 +74,11 @@ def testGetImageFail(self):
7774

7875
ResourceUtility.get_image("")
7976

80-
def _findTestResourceDirectory(self):
77+
def getFullResourcePath(self, filename: str) -> str:
78+
79+
fqFileName:str = resource_filename(TestBase.RESOURCES_PACKAGE_NAME, filename)
8180

82-
self.logger.info(f'current directory: {getcwd()}')
83-
if osPath.isdir(f'{UNIT_TEST_DIR_NAME}{osSep}{RESOURCE_DIR_NAME}'):
84-
chdir(f'{UNIT_TEST_DIR_NAME}')
85-
if osPath.isdir(RESOURCE_DIR_NAME):
86-
return
87-
else:
88-
chdir("../")
89-
return self._findTestResourceDirectory()
81+
return fqFileName
9082

9183

9284
if __name__ == '__main__':

0 commit comments

Comments
 (0)