@@ -3213,7 +3213,6 @@ def test_01_widnows(self):
32133213 if platform .system () != 'Windows' :
32143214 self .skipTest ("Only for Windows" )
32153215 scheme = config .get_directory_scheme (self .app_name )
3216- # 'C:/Users/pavel/AppData/Local/test_app/tmp'
32173216 self .assertEqual (scheme .config , Path ('c:/ProgramData/test_app/config' ))
32183217 self .assertEqual (scheme .run_data , Path ('c:/ProgramData/test_app/run' ))
32193218 self .assertEqual (scheme .logs , Path ('c:/ProgramData/test_app/log' ))
@@ -3225,7 +3224,55 @@ def test_01_widnows(self):
32253224 self .assertEqual (scheme .user_data , Path ('~/AppData/Local/test_app/data' ).expanduser ())
32263225 self .assertEqual (scheme .user_sync , Path ('~/AppData/Roaming/test_app' ).expanduser ())
32273226 self .assertEqual (scheme .user_cache , Path ('~/AppData/Local/test_app/cache' ).expanduser ())
3228- def test_02_linux (self ):
3227+ @mock .patch .dict (os .environ , {f'{ app_name .upper ()} _HOME' : 'c:/mydir/apphome/' })
3228+ def test_02_widnows_home_env (self ):
3229+ if platform .system () != 'Windows' :
3230+ self .skipTest ("Only for Windows" )
3231+ scheme = config .get_directory_scheme (self .app_name )
3232+ self .assertEqual (scheme .config , Path ('c:/mydir/apphome/config' ))
3233+ self .assertEqual (scheme .run_data , Path ('c:/mydir/apphome/run_data' ))
3234+ self .assertEqual (scheme .logs , Path ('c:/mydir/apphome/logs' ))
3235+ self .assertEqual (scheme .data , Path ('c:/mydir/apphome/data' ))
3236+ self .assertEqual (scheme .tmp , Path ('~/AppData/Local/test_app/tmp' ).expanduser ())
3237+ self .assertEqual (scheme .cache , Path ('c:/mydir/apphome/cache' ))
3238+ self .assertEqual (scheme .srv , Path ('c:/mydir/apphome/srv' ))
3239+ self .assertEqual (scheme .user_config , Path ('~/AppData/Local/test_app/config' ).expanduser ())
3240+ self .assertEqual (scheme .user_data , Path ('~/AppData/Local/test_app/data' ).expanduser ())
3241+ self .assertEqual (scheme .user_sync , Path ('~/AppData/Roaming/test_app' ).expanduser ())
3242+ self .assertEqual (scheme .user_cache , Path ('~/AppData/Local/test_app/cache' ).expanduser ())
3243+ @mock .patch ('os.getcwd' , return_value = 'c:/mydir/apphome/' )
3244+ def test_03_widnows_home_forced (self , * args ):
3245+ if platform .system () != 'Windows' :
3246+ self .skipTest ("Only for Windows" )
3247+ scheme = config .get_directory_scheme (self .app_name )
3248+ self .assertEqual (scheme .config , Path ('c:/mydir/apphome/config' ))
3249+ self .assertEqual (scheme .run_data , Path ('c:/mydir/apphome/run_data' ))
3250+ self .assertEqual (scheme .logs , Path ('c:/mydir/apphome/logs' ))
3251+ self .assertEqual (scheme .data , Path ('c:/mydir/apphome/data' ))
3252+ self .assertEqual (scheme .tmp , Path ('~/AppData/Local/test_app/tmp' ).expanduser ())
3253+ self .assertEqual (scheme .cache , Path ('c:/mydir/apphome/cache' ))
3254+ self .assertEqual (scheme .srv , Path ('c:/mydir/apphome/srv' ))
3255+ self .assertEqual (scheme .user_config , Path ('~/AppData/Local/test_app/config' ).expanduser ())
3256+ self .assertEqual (scheme .user_data , Path ('~/AppData/Local/test_app/data' ).expanduser ())
3257+ self .assertEqual (scheme .user_sync , Path ('~/AppData/Roaming/test_app' ).expanduser ())
3258+ self .assertEqual (scheme .user_cache , Path ('~/AppData/Local/test_app/cache' ).expanduser ())
3259+ def test_04_widnows_home_change (self , * args ):
3260+ if platform .system () != 'Windows' :
3261+ self .skipTest ("Only for Windows" )
3262+ scheme = config .get_directory_scheme (self .app_name )
3263+ scheme .home = 'c:/mydir/apphome/'
3264+ self .assertEqual (scheme .config , Path ('c:/mydir/apphome/config' ))
3265+ self .assertEqual (scheme .run_data , Path ('c:/mydir/apphome/run_data' ))
3266+ self .assertEqual (scheme .logs , Path ('c:/mydir/apphome/logs' ))
3267+ self .assertEqual (scheme .data , Path ('c:/mydir/apphome/data' ))
3268+ self .assertEqual (scheme .tmp , Path ('~/AppData/Local/test_app/tmp' ).expanduser ())
3269+ self .assertEqual (scheme .cache , Path ('c:/mydir/apphome/cache' ))
3270+ self .assertEqual (scheme .srv , Path ('c:/mydir/apphome/srv' ))
3271+ self .assertEqual (scheme .user_config , Path ('~/AppData/Local/test_app/config' ).expanduser ())
3272+ self .assertEqual (scheme .user_data , Path ('~/AppData/Local/test_app/data' ).expanduser ())
3273+ self .assertEqual (scheme .user_sync , Path ('~/AppData/Roaming/test_app' ).expanduser ())
3274+ self .assertEqual (scheme .user_cache , Path ('~/AppData/Local/test_app/cache' ).expanduser ())
3275+ def test_05_linux_default (self ):
32293276 if platform .system () != 'Linux' :
32303277 self .skipTest ("Only for Linux" )
32313278 scheme = config .get_directory_scheme (self .app_name )
@@ -3240,12 +3287,60 @@ def test_02_linux(self):
32403287 self .assertEqual (scheme .user_data , Path ('~/.local/share/test_app' ).expanduser ())
32413288 self .assertEqual (scheme .user_sync , Path ('~/.local/sync/test_app' ).expanduser ())
32423289 self .assertEqual (scheme .user_cache , Path ('~/.cache/test_app' ).expanduser ())
3290+ @mock .patch .dict (os .environ , {f'{ app_name .upper ()} _HOME' : '/mydir/apphome/' })
3291+ def test_06_linux_home_env (self ):
3292+ if platform .system () != 'Linux' :
3293+ self .skipTest ("Only for Linux" )
3294+ scheme = config .get_directory_scheme (self .app_name )
3295+ self .assertEqual (scheme .config , Path ('/mydir/apphome/config' ))
3296+ self .assertEqual (scheme .run_data , Path ('/mydir/apphome/run_data' ))
3297+ self .assertEqual (scheme .logs , Path ('/mydir/apphome/logs' ))
3298+ self .assertEqual (scheme .data , Path ('/mydir/apphome/data' ))
3299+ self .assertEqual (scheme .tmp , Path ('/var/tmp/test_app' ))
3300+ self .assertEqual (scheme .cache , Path ('/mydir/apphome/cache' ))
3301+ self .assertEqual (scheme .srv , Path ('/mydir/apphome/srv' ))
3302+ self .assertEqual (scheme .user_config , Path ('~/.config/test_app' ).expanduser ())
3303+ self .assertEqual (scheme .user_data , Path ('~/.local/share/test_app' ).expanduser ())
3304+ self .assertEqual (scheme .user_sync , Path ('~/.local/sync/test_app' ).expanduser ())
3305+ self .assertEqual (scheme .user_cache , Path ('~/.cache/test_app' ).expanduser ())
3306+ @mock .patch ('os.getcwd' , return_value = '/mydir/apphome/' )
3307+ def test_07_linux_home_forced (self , * args ):
3308+ if platform .system () != 'Linux' :
3309+ self .skipTest ("Only for Linux" )
3310+ scheme = config .get_directory_scheme (self .app_name , force_home = True )
3311+ self .assertEqual (scheme .config , Path ('/mydir/apphome/config' ))
3312+ self .assertEqual (scheme .run_data , Path ('/mydir/apphome/run_data' ))
3313+ self .assertEqual (scheme .logs , Path ('/mydir/apphome/logs' ))
3314+ self .assertEqual (scheme .data , Path ('/mydir/apphome/data' ))
3315+ self .assertEqual (scheme .tmp , Path ('/var/tmp/test_app' ))
3316+ self .assertEqual (scheme .cache , Path ('/mydir/apphome/cache' ))
3317+ self .assertEqual (scheme .srv , Path ('/mydir/apphome/srv' ))
3318+ self .assertEqual (scheme .user_config , Path ('~/.config/test_app' ).expanduser ())
3319+ self .assertEqual (scheme .user_data , Path ('~/.local/share/test_app' ).expanduser ())
3320+ self .assertEqual (scheme .user_sync , Path ('~/.local/sync/test_app' ).expanduser ())
3321+ self .assertEqual (scheme .user_cache , Path ('~/.cache/test_app' ).expanduser ())
3322+ def test_08_linux_home_change (self , * args ):
3323+ if platform .system () != 'Linux' :
3324+ self .skipTest ("Only for Linux" )
3325+ scheme = config .get_directory_scheme (self .app_name , force_home = True )
3326+ scheme .home = '/mydir/apphome/'
3327+ self .assertEqual (scheme .config , Path ('/mydir/apphome/config' ))
3328+ self .assertEqual (scheme .run_data , Path ('/mydir/apphome/run_data' ))
3329+ self .assertEqual (scheme .logs , Path ('/mydir/apphome/logs' ))
3330+ self .assertEqual (scheme .data , Path ('/mydir/apphome/data' ))
3331+ self .assertEqual (scheme .tmp , Path ('/var/tmp/test_app' ))
3332+ self .assertEqual (scheme .cache , Path ('/mydir/apphome/cache' ))
3333+ self .assertEqual (scheme .srv , Path ('/mydir/apphome/srv' ))
3334+ self .assertEqual (scheme .user_config , Path ('~/.config/test_app' ).expanduser ())
3335+ self .assertEqual (scheme .user_data , Path ('~/.local/share/test_app' ).expanduser ())
3336+ self .assertEqual (scheme .user_sync , Path ('~/.local/sync/test_app' ).expanduser ())
3337+ self .assertEqual (scheme .user_cache , Path ('~/.cache/test_app' ).expanduser ())
32433338
32443339if __name__ == '__main__' :
32453340 unittest_main ()
32463341
3247- #class TestFloatOption (BaseConfigTest):
3248- #"Unit tests for firebird.base.config.FloatOption "
3342+ #class Test<TYPE>Option (BaseConfigTest):
3343+ #"Unit tests for firebird.base.config.<TYPE>Option "
32493344 #def setUp(self):
32503345 #super().setUp()
32513346 #def test_simple(self):
0 commit comments