public void UnsubscribeStopsEachThePriceListener() { // Arrange var mockNewsListener = MockRepository.GenerateMock <IStreamingListener <NewsDTO> >(); var mockNewsListener2 = MockRepository.GenerateMock <IStreamingListener <NewsDTO> >(); _mockLsCityindexStreamingConnection.Expect(x => x.BuildNewsHeadlinesListener(Arg <string> .Is.Anything)) .Return(mockNewsListener) .Repeat.Once(); _mockLsCityindexStreamingConnection.Expect(x => x.BuildNewsHeadlinesListener(Arg <string> .Is.Anything)) .Return(mockNewsListener2) .Repeat.Once(); mockNewsListener.Expect(x => x.Stop()); mockNewsListener2.Expect(x => x.Stop()); // Act var newsStreamListener = new NewsStream(_mockLsCityindexStreamingConnection); newsStreamListener.SubscribeToNewsHeadlinesByRegion(REGION); newsStreamListener.SubscribeToNewsHeadlinesByRegion("anotherRegion"); newsStreamListener.Unsubscribe(); // Assert _mockLsCityindexStreamingConnection.VerifyAllExpectations(); mockNewsListener.VerifyAllExpectations(); }
public virtual NewsStream Create(ILsCityindexStreamingConnection lsCityindexStreamingConnection) { try { Log.Info("Creating news stream listener."); var newsStream = new NewsStream(lsCityindexStreamingConnection); return(newsStream); } catch (Exception ex) { Log.Error(ex); throw; } }
/// <summary> /// To the news brief. /// </summary> /// <param name="input">The input.</param> /// <returns>NewsBrief.</returns> public static NewsBrief ToNewsBrief(NewsStream input) { var result = new NewsBrief(); result.ClusterId0 = input.ClusterId0; result.Description = input.NewsArticleDescription; result.Id = input.Id; result.Source = input.NewsSource; result.ThumbnailUrl = string.IsNullOrEmpty(input.GoodDominantImageURL) ? DEFAULTNEWSURL : input.GoodDominantImageURL; result.Title = input.Title; result.Url = input.Url; result.CreatedTime = input.BuildTime; return(result); }
public void ValidSubscribtionsAreAddedToAToNewsStreamListenerList() { // Arrange var mockNewsListener = MockRepository.GenerateMock <IStreamingListener <NewsDTO> >(); _mockLsCityindexStreamingConnection.Expect(x => x.BuildNewsHeadlinesListener(Arg <string> .Is.Anything)) .Return(mockNewsListener) .Repeat.Twice(); // Act var newsStream = new NewsStream(_mockLsCityindexStreamingConnection); newsStream.SubscribeToNewsHeadlinesByRegion(REGION); newsStream.SubscribeToNewsHeadlinesByRegion("AnotherRegion"); // Assert Assert.AreEqual(2, newsStream.Listeners.Count); _mockLsCityindexStreamingConnection.VerifyAllExpectations(); mockNewsListener.VerifyAllExpectations(); }