aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorSergey M․ <dstftw@gmail.com>2014-09-30 22:27:53 +0700
committerSergey M․ <dstftw@gmail.com>2014-09-30 22:27:53 +0700
commit4644ac5527e48a1a8c48dc790621c73913e6dbf8 (patch)
tree3ff5c762d57d8d07755959b442457821d13fdc90 /test
parente497a7f2ca46d485c2839969abc598faa16c49dc (diff)
downloadyoutube-dl-4644ac5527e48a1a8c48dc790621c73913e6dbf8.tar.xz
[core] Decode environment variables with filesystem encoding (Fixes #3854, Fixes #3217, Fixes #2918)
Introduces compat versions of os.getenv and os.path.expanduser
Diffstat (limited to 'test')
-rw-r--r--test/test_utils.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/test_utils.py b/test/test_utils.py
index 97551ce9c..19c9ba7f8 100644
--- a/test/test_utils.py
+++ b/test/test_utils.py
@@ -44,6 +44,9 @@ from youtube_dl.utils import (
limit_length,
escape_rfc3986,
escape_url,
+ get_filesystem_encoding,
+ compat_getenv,
+ compat_expanduser,
)
@@ -331,5 +334,15 @@ class TestUtil(unittest.TestCase):
)
self.assertEqual(escape_url('http://vimeo.com/56015672#at=0'), 'http://vimeo.com/56015672#at=0')
+ def test_compat_getenv(self):
+ test_str = 'тест'
+ os.environ['YOUTUBE-DL-TEST'] = test_str.encode(get_filesystem_encoding())
+ self.assertEqual(compat_getenv('YOUTUBE-DL-TEST'), test_str)
+
+ def test_compat_expanduser(self):
+ test_str = 'C:\Documents and Settings\тест\Application Data'
+ os.environ['HOME'] = test_str.encode(get_filesystem_encoding())
+ self.assertEqual(compat_expanduser('~'), test_str)
+
if __name__ == '__main__':
unittest.main()