internal void ElapsedEventTick_ReturnsInitialSpotifyTrack() { var spotifyPaused = new Track(); var spotifyStatusMock = new Moq.Mock <ISpotifyStatus>(); spotifyStatusMock.Setup(x => x.CurrentTrack).Returns(spotifyPaused); spotifyStatusMock.Setup(x => x.GetTrack()).ReturnsAsync(spotifyPaused); var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); spotifyProcessMock.Setup(x => x.GetSpotifyStatus()).ReturnsAsync(spotifyStatusMock.Object); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true }; // initial track Assert.Null(spotifyHandler.Track); spotifyHandler.ElapsedEventTick(new object { }, new EventArgs() as System.Timers.ElapsedEventArgs); // updated track Assert.Equal(spotifyPaused, spotifyHandler.Track); spotifyProcessMock.Verify(n => n.GetSpotifyStatus(), Times.Once); }
internal async Task TriggerEvents_ReturnsInitialSpotifyTrack() { var spotifyPaused = new Track(); var spotifyStatusMock = new Moq.Mock <ISpotifyStatus>(); spotifyStatusMock.Setup(x => x.CurrentTrack).Returns(spotifyPaused); spotifyStatusMock.Setup(x => x.GetTrack()).ReturnsAsync(spotifyPaused); var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); spotifyProcessMock.Setup(x => x.GetSpotifyStatus()).ReturnsAsync(spotifyStatusMock.Object); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true }; // initial track Assert.Equal(new Track(), spotifyHandler.Track); await spotifyHandler.TriggerEvents();; // updated track Assert.Equal(spotifyPaused, spotifyHandler.Track); spotifyProcessMock.Verify(n => n.GetSpotifyStatus(), Times.Once); spotifyHandler.Dispose(); }
internal void ElapsedEventTick_ReturnsNewestTrack() { var oldTrack = new Track() { Artist = "Artist", Title = "Title", TitleExtended = "Remastered", Playing = true, CurrentPosition = 240, Length = 240, }; var newestTrack = new Track() { Artist = "Artist", Title = "Title", TitleExtended = "Live", Playing = true, Length = 240, }; var spotifyStatusMock = new Moq.Mock <ISpotifyStatus>(); spotifyStatusMock.Setup(x => x.CurrentTrack).Returns(newestTrack); spotifyStatusMock.Setup(x => x.GetTrack()).ReturnsAsync(newestTrack); var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); spotifyProcessMock.Setup(x => x.GetSpotifyStatus()).ReturnsAsync(spotifyStatusMock.Object); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true }; spotifyHandler.Track = oldTrack; Track eventNewTrack = null; Track eventOldTrack = null; spotifyHandler.OnTrackChange += delegate(object sender, TrackChangeEventArgs e) { eventOldTrack = e.OldTrack; eventNewTrack = e.NewTrack; Assert.Equal(oldTrack, eventOldTrack); Assert.Equal(newestTrack, eventNewTrack); }; int?eventTrackTime = null; spotifyHandler.OnTrackTimeChange += delegate(object sender, TrackTimeChangeEventArgs e) { eventTrackTime = e.TrackTime; Assert.Equal(0, eventTrackTime); }; spotifyHandler.ElapsedEventTick(new object { }, new EventArgs() as System.Timers.ElapsedEventArgs); spotifyProcessMock.Verify(n => n.GetSpotifyStatus(), Times.Once); }
private void BindSpotifyEventHandlers() { Spotify = new SpotifyHandler(_audioSession); Spotify.OnPlayStateChange += OnPlayStateChanged; Spotify.OnTrackChange += OnTrackChanged; Spotify.OnTrackTimeChange += OnTrackTimeChanged; }
private async void TickEventSpotifyIdling_ReturnsNoEvent() { var track = new Track(); var spotifyStatusMock = new Moq.Mock <ISpotifyStatus>(); spotifyStatusMock.Setup(x => x.CurrentTrack).Returns(track); spotifyStatusMock.Setup(x => x.GetTrack()).Returns(track); var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); spotifyProcessMock.Setup(x => x.GetSpotifyStatus()).Returns(spotifyStatusMock.Object); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true }; spotifyHandler.SongTimer.Start(); var eventPlaying = false; spotifyHandler.OnPlayStateChange += delegate(object sender, PlayStateEventArgs e) { eventPlaying = e.Playing; }; Track eventNewTrack = null; Track eventOldTrack = null; spotifyHandler.OnTrackChange += delegate(object sender, TrackChangeEventArgs e) { eventNewTrack = e.NewTrack; eventOldTrack = e.OldTrack; }; int?eventTrackTime = null; spotifyHandler.OnTrackTimeChange += delegate(object sender, TrackTimeChangeEventArgs e) { eventTrackTime = e.TrackTime; }; // initial track Assert.Null(spotifyHandler.Track); await Task.Delay(500); // updated track Assert.Equal(track, spotifyHandler.Track); // events Assert.False(eventPlaying); Assert.Null(eventNewTrack); Assert.Null(eventOldTrack); Assert.Equal(0, eventTrackTime); }
private void Dispose_ReturnsTimerOff() { var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object); spotifyHandler.Dispose(); Assert.False(spotifyHandler.EventTimer.Enabled); Assert.False(spotifyHandler.SongTimer.Enabled); }
internal void Dispose_ReturnsTimerOff() { var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object); spotifyHandler.Dispose(); Assert.Null(spotifyHandler.EventTimer); Assert.Null(spotifyHandler.SongTimer); }
private void SpotifyHandler_ReturnsSpotifyProcess() { var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true }; Assert.True(spotifyHandler.ListenForEvents); Assert.Same(spotifyProcessMock.Object, spotifyHandler.SpotifyProcess); }
public override string Run(string[] message) { //Spotifysearch song name _message = null; var songs = SpotifyHandler.searchSongs(string.Join(" ", message), handler); foreach (string song in songs) { _message += song + "\n"; } /*END OF COMMAND*/ ((CommandList)parent)._commandState = null; return(_message); }
internal async Task TriggerEvents_ReturnsCurrentTrack() { var track = new Track() { Artist = "Artist", Title = "Title", TitleExtended = "Live", Playing = true, CurrentPosition = 10, Length = 230, }; var spotifyStatusMock = new Moq.Mock <ISpotifyStatus>(); spotifyStatusMock.Setup(x => x.CurrentTrack).Returns(track); spotifyStatusMock.Setup(x => x.GetTrack()).ReturnsAsync(track); var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); spotifyProcessMock.Setup(x => x.GetSpotifyStatus()).ReturnsAsync(spotifyStatusMock.Object); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true }; var oldTrackStatus = track; oldTrackStatus.CurrentPosition = 9; spotifyHandler.Track = oldTrackStatus; int?eventTrackTime = null; spotifyHandler.OnTrackTimeChange += delegate(object sender, TrackTimeChangeEventArgs e) { eventTrackTime = e.TrackTime; Assert.Equal(track.CurrentPosition, eventTrackTime); }; await spotifyHandler.TriggerEvents(); spotifyProcessMock.Verify(n => n.GetSpotifyStatus(), Times.Once); spotifyHandler.Dispose(); }
public override string Run(string[] message) { //Spotifysearch song name _message = null; var albums = SpotifyHandler.searchAlbums(string.Join(" ", message), handler); foreach (string album in albums) { _message += album + "\n"; } //_message = ; /*END OF COMMAND*/ ((CommandList)parent)._commandState = null; return(_message); }
internal async Task TriggerEvents_ReturnsPlayingTrack() { var paused = new Track() { Playing = false }; var playing = new Track() { Playing = false }; var spotifyStatusMock = new Moq.Mock <ISpotifyStatus>(); spotifyStatusMock.Setup(x => x.CurrentTrack).Returns(playing); spotifyStatusMock.Setup(x => x.GetTrack()).ReturnsAsync(playing); var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); spotifyProcessMock.Setup(x => x.GetSpotifyStatus()).ReturnsAsync(spotifyStatusMock.Object); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true }; spotifyHandler.Track = paused; var eventPlaying = false; spotifyHandler.OnPlayStateChange += delegate(object sender, PlayStateEventArgs e) { eventPlaying = e.Playing; Assert.True(eventPlaying); }; await spotifyHandler.TriggerEvents(); spotifyProcessMock.Verify(n => n.GetSpotifyStatus(), Times.Once); spotifyHandler.Dispose(); }
internal void TickEventSpotifyIdling_ReturnsNoEvent() { var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true }; spotifyHandler.SongTimer.Start(); var eventPlaying = false; spotifyHandler.OnPlayStateChange += delegate(object sender, PlayStateEventArgs e) { eventPlaying = e.Playing; Assert.False(eventPlaying); }; Track eventNewTrack = null; Track eventOldTrack = null; spotifyHandler.OnTrackChange += delegate(object sender, TrackChangeEventArgs e) { eventNewTrack = e.NewTrack; eventOldTrack = e.OldTrack; Assert.Null(eventNewTrack); Assert.Null(eventOldTrack); }; int?eventTrackTime = null; spotifyHandler.OnTrackTimeChange += delegate(object sender, TrackTimeChangeEventArgs e) { eventTrackTime = e.TrackTime; Assert.Equal(0, eventTrackTime); }; spotifyHandler.Dispose(); }
internal void ElapsedEventTick_ReturnsPlayingTrack() { var paused = new Track() { Playing = false }; var playing = new Track() { Playing = false }; var spotifyStatusMock = new Moq.Mock <ISpotifyStatus>(); spotifyStatusMock.Setup(x => x.CurrentTrack).Returns(playing); spotifyStatusMock.Setup(x => x.GetTrack()).ReturnsAsync(playing); var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); spotifyProcessMock.Setup(x => x.GetSpotifyStatus()).ReturnsAsync(spotifyStatusMock.Object); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true }; spotifyHandler.Track = paused; var eventPlaying = false; spotifyHandler.OnPlayStateChange += delegate(object sender, PlayStateEventArgs e) { eventPlaying = e.Playing; Assert.True(eventPlaying); }; spotifyHandler.ElapsedEventTick(new object { }, new EventArgs() as System.Timers.ElapsedEventArgs); spotifyProcessMock.Verify(n => n.GetSpotifyStatus(), Times.Once); }
public async Task RefreshUser(string id) { SpotifyHandler.RefreshUser(id); //Do I need an await here }
private async void NewTrack_ReturnsAllEvents() { var previousTrack = new Track(); var currentTrack = new Track { Title = "Song Title", Artist = "Artist Name", Ad = false, Playing = true, TitleExtended = "Live" }; var spotifyStatusMock = new Moq.Mock <ISpotifyStatus>(); spotifyStatusMock.Setup(x => x.CurrentTrack).Returns(currentTrack); spotifyStatusMock.Setup(x => x.GetTrack()).Returns(currentTrack); var spotifyProcessMock = new Moq.Mock <ISpotifyProcess>(); spotifyProcessMock.Setup(x => x.GetSpotifyStatus()).Returns(spotifyStatusMock.Object); var spotifyHandler = new SpotifyHandler(spotifyProcessMock.Object) { ListenForEvents = true, Track = previousTrack }; var eventPlaying = false; spotifyHandler.OnPlayStateChange += delegate(object sender, PlayStateEventArgs e) { eventPlaying = e.Playing; }; Track eventNewTrack = null; Track eventOldTrack = null; spotifyHandler.OnTrackChange += delegate(object sender, TrackChangeEventArgs e) { eventNewTrack = e.NewTrack; eventOldTrack = e.OldTrack; }; int?eventTrackTime = null; spotifyHandler.OnTrackTimeChange += delegate(object sender, TrackTimeChangeEventArgs e) { eventTrackTime = e.TrackTime; }; // initial track Assert.Equal(previousTrack, spotifyHandler.Track); await Task.Delay(500); // updated track Assert.Equal(currentTrack, spotifyHandler.Track); // events Assert.True(eventPlaying); Assert.Equal(currentTrack, eventNewTrack); Assert.Equal(previousTrack, eventOldTrack); Assert.Equal(0, eventTrackTime); }
public async Task PlayUser(string id) { await SpotifyHandler.PlayMusic(id); }
public void PauseUser(string id) { SpotifyHandler.PauseMusic(id); }