public void InstantiateCorrectly()
        {
            SongToAdd songToAdd = new SongToAdd();
            UploadTask uploadTask = new UploadTask(songToAdd.Song, songToAdd.MediaFile);

            Assert.AreEqual(songToAdd.Song, uploadTask.Song);
            Assert.AreEqual(songToAdd.MediaFile, uploadTask.MediaFile);
        }
        public void CallServiceOnDoActionAndRaiseFinishedTaskEvent()
        {
            MediaFile mediaFile = Create.MediaFile();
            Song song = Create.Song();
            const string path = "path";
            SongToAdd songToAdd = new SongToAdd()
                {
                    IsSelected = true,
                    MediaFile = mediaFile,
                    Path = path,
                    Song = song
                };

            UploadTask uploadTask = new UploadTask(songToAdd.Song, songToAdd.MediaFile);
            uploadTask.DoActionInNewThread();
            while (uploadTask.Worker.IsBusy) { }

            Assert.AreEqual(string.Format(MusicResource.UploadSongTask, songToAdd.Song.Title), uploadTask.StringDescription);
            MockService.Verify(s => s.AddASong(songToAdd.Song, songToAdd.MediaFile), Times.Once());
        }