|
|
|
|
|
from __future__ import unicode_literals |
|
|
|
from nose.tools import eq_ |
|
|
|
from pytube import utils |
|
|
|
|
|
class TestUtils(object): |
|
blob = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit' |
|
|
|
def test_truncate(self): |
|
"""Truncate string works as expected""" |
|
truncated = utils.truncate(self.blob, 11) |
|
eq_(truncated, 'Lorem ipsum') |
|
|
|
def test_safe_filename(self): |
|
"""Unsafe characters get stripped from generated filename""" |
|
eq_(utils.safe_filename('abc1245$$'), 'abc1245') |
|
eq_(utils.safe_filename('abc##'), 'abc') |
|
eq_(utils.safe_filename('abc:foo'), 'abc -foo') |
|
eq_(utils.safe_filename('abc_foo'), 'abc foo') |
|
|
|
def test_sizeof(self): |
|
"""Accurately converts the bytes to its humanized equivalent""" |
|
eq_(utils.sizeof(1), '1 byte') |
|
eq_(utils.sizeof(2), '2 bytes') |
|
eq_(utils.sizeof(2400), '2 KB') |
|
eq_(utils.sizeof(2400000), '2 MB') |
|
eq_(utils.sizeof(2400000000), '2 GB') |
|
eq_(utils.sizeof(2400000000000), '2 TB') |
|
eq_(utils.sizeof(2400000000000000), '2 PB') |
|
|