def test_add_to_queue_without_drive_service(self, mocked_handler): mocked_handler.return_value.storage_service = None m2s = Music2Storage() m2s.add_to_queue('http://example.com/') self.assertEqual(m2s.queues['download'].qsize(), 0) with self.assertRaises(queue.Empty): m2s.queues['download'].get_nowait()
def test_upload_sucess(self, mocked_upload_to_drive): m2s = Music2Storage() m2s.drive_service = MagicMock() result = m2s._upload('filename.mp3') mocked_upload_to_drive.assert_called_with( m2s.connection_handler.storage_service, 'filename.mp3') self.assertEqual(result, 'filename.mp3')
def test_start_workers_already_started(self, mocked_signal_handler, mocked_worker): m2s = Music2Storage() m2s.workers.append(MagicMock()) m2s.start_workers(1) self.assertEqual(len(m2s.workers), 1) self.assertFalse(mocked_worker.called) self.assertFalse(mocked_signal_handler.called) self.assertFalse(mocked_worker.return_value.start.called)
def test_start_workers_sucess(self, mocked_signal_sigint, mocked_signal_signal, mocked_signal_handler, mocked_worker): m2s = Music2Storage() num_of_queues = len(m2s.queues.items()) m2s.start_workers(2) self.assertEqual(len(m2s.workers), num_of_queues * 2 - 2) self.assertEqual(len(mocked_worker.mock_calls), 2 * (num_of_queues * 2 - 2)) self.assertTrue(mocked_signal_handler) mocked_signal_handler.assert_called_with(m2s.workers, m2s.stopper) mocked_signal_signal.assert_called_with( mocked_signal_sigint, mocked_signal_handler.return_value) self.assertEqual(len(mocked_worker.return_value.start.mock_calls), num_of_queues * 2 - 2)
import webbrowser import os import pyjokes from music2storage import Music2Storage import smtplib import time import requests import shutil import contextlib from ecapture import ecapture as ec from urllib.request import urlopen random.seed(random.randint(1, 9000)) engine = pyttsx3.init('sapi5') voices = engine.getProperty('voices') engine.setProperty('voice', voices[1].id) m2s = Music2Storage() m2s.use_music_service('youtube') m2s.use_storage_service('local') m2s.start_workers() m2s.add_to_queue('https://www.youtube.com/watch?v=DhHGDOgjie4') def speak(audio): engine.say(audio) engine.runAndWait() def wishMe(): hour = int(datetime.datetime.now().hour) if hour >= 0 and hour < 12: speak("Good Morning!")
def test_delete_sucess(self, mocked_delete_local_file): m2s = Music2Storage() result = m2s._delete('filename.mp3') mocked_delete_local_file.assert_called_with('filename.mp3') self.assertEqual(result, 'filename.mp3')
def test_convert_sucess(self, mocked_convert_to_mp3): m2s = Music2Storage() result = m2s._convert('filename.mp4') mocked_convert_to_mp3.assert_called_with('filename.mp4', m2s.queues['delete']) self.assertEqual(result, 'filename.mp3')
def test_download_sucess(self, mocked_download_from_youtube): m2s = Music2Storage() result = m2s._download('http://example.com/') mocked_download_from_youtube.assert_called_with('http://example.com/') self.assertEqual(result, 'filename.mp4')
def test_connect_storage_service_success(self, mocked_handler): m2s = Music2Storage() m2s.connect_storage_service('google drive') mocked_handler.return_value.connect_storage_service.assert_called_with( 'google drive')
def test_add_to_queue_with_drive_service(self, mocked_handler): m2s = Music2Storage() m2s.add_to_queue('http://example.com/') self.assertEqual(m2s.queues['download'].qsize(), 1) self.assertEqual(m2s.queues['download'].get_nowait(), 'http://example.com/')
def test_notify_sucess(self): m2s = Music2Storage() m2s._notify()