Exemplo n.º 1
0
        public Library Build()
        {
            var finishSubject = new Subject<Unit>();
            var mediaPlayerCallback = Substitute.For<IMediaPlayerCallback>();
            mediaPlayerCallback.PlayAsync().Returns(_ => Task.Run(() => finishSubject.OnNext(Unit.Default)));
            mediaPlayerCallback.Finished.Returns(finishSubject);

            var library = new Library(
                this.reader ?? Substitute.For<ILibraryReader>(),
                this.writer ?? Substitute.For<ILibraryWriter>(),
                this.settings ?? new CoreSettings(new InMemoryBlobCache()),
                this.fileSystem ?? new MockFileSystem(),
                x => this.songFinder ?? SetupDefaultLocalSongFinder());

            Guid accessToken = library.LocalAccessControl.RegisterLocalAccessToken();

            if (this.playlistName != null)
            {
                library.AddAndSwitchToPlaylist(playlistName, accessToken);
            }

            library.RegisterAudioPlayerCallback(this.audioPlayerCallback ?? mediaPlayerCallback, accessToken);

            return library;
        }
Exemplo n.º 2
0
        public static Library CreateLibraryWithPlaylist(string playlistName = "Playlist")
        {
            var library = new Library(new Mock<IRemovableDriveWatcher>().Object);
            library.AddAndSwitchToPlaylist(playlistName);

            return library;
        }