30 lines
1.1 KiB
Python
30 lines
1.1 KiB
Python
import tempfile
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
from zyrarbot.storage.uploads_repository import UploadsRepository
|
|
|
|
|
|
class UploadsRepositoryTest(unittest.TestCase):
|
|
def test_only_audio_and_video_extensions_are_supported(self):
|
|
self.assertTrue(UploadsRepository.is_supported_filename("song.MP3"))
|
|
self.assertTrue(UploadsRepository.is_supported_filename("video.webm"))
|
|
self.assertFalse(UploadsRepository.is_supported_filename("program.exe"))
|
|
self.assertFalse(UploadsRepository.is_supported_filename("document.pdf"))
|
|
|
|
def test_legacy_root_files_are_assigned_to_first_guild(self):
|
|
with tempfile.TemporaryDirectory() as directory:
|
|
root = Path(directory)
|
|
(root / "legacy.mp3").write_bytes(b"audio")
|
|
repository = UploadsRepository(str(root))
|
|
|
|
repository.migrate_legacy(10)
|
|
|
|
self.assertEqual([item.filename for item in repository.list(10)], ["legacy.mp3"])
|
|
self.assertFalse((root / "legacy.mp3").exists())
|
|
self.assertEqual(repository.list(20), [])
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|