11
22import 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-
94from logging import Logger
105from logging import getLogger
116
127from unittest import main as unitTestMain
138from unittest import expectedFailure
149
10+ from pkg_resources import resource_filename
11+
1512from test .TestBase import TestBase
1613
1714from albow .core .ResourceUtility import ResourceUtility
1815
1916UNIT_TEST_DIR_NAME : str = 'test'
2017RESOURCE_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
2421class 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
9284if __name__ == '__main__' :
0 commit comments