public void ReceivingFavoriteRaisesEvent() { // Arrange const string strContent = "{ \"event\":\"favorite\", \"created_at\": \"Sat Sep 04 16:10:54 +0000 2010\", \"target\": { \"id\": 123 }, \"source\": { \"id\": 456 }, \"target_object\": { \"created_at\": \"Wed Jun 06 20:07:10 +0000 2012\", \"id_str\": \"210462857140252672\" } }"; ManualResetEventSlim waitHandle = new ManualResetEventSlim(false); var parser = SetupParser(strContent); EventStreamEventArgs receivedData = null; parser.FavoriteEventReceived += (s, e) => { receivedData = e; waitHandle.Set(); }; // Act parser.StartStreaming(); waitHandle.Wait(1000); // Assert Assert.IsNotNull(receivedData); Assert.AreEqual(StreamEventType.Favorite, receivedData.Event); Assert.AreEqual(456ul, receivedData.Source.GetUserId()); Assert.AreEqual(123ul, receivedData.Target.GetUserId()); }
public void ReceivingFavoriteRaisesEvent() { // Arrange string strContent = "{ \"event\":\"favorite\", \"created_at\": \"Sat Sep 04 16:10:54 +0000 2010\", \"target\": { \"id\": 123 }, \"source\": { \"id\": 456 }, \"target_object\": { \"created_at\": \"Wed Jun 06 20:07:10 +0000 2012\", \"id_str\": \"210462857140252672\" } }"; var execute = new Mock <ITwitterExecute>(); StreamContent content = new StreamContent(execute.Object, strContent); var stream = new Mock <IStreamingConnection>(); stream.Setup(s => s.Start(It.IsAny <Func <IStreamContent, Task> >())) .Callback <Func <StreamContent, Task> >(func => func(content)) .Returns(Task.FromResult(new List <IStreaming>())); var parser = StreamParser.Create(stream.Object); EventStreamEventArgs receivedData = null; ManualResetEventSlim waitHandle = new ManualResetEventSlim(false); parser.FavoriteEventReceived += (s, e) => { receivedData = e; waitHandle.Set(); }; // Act parser.StartStreaming(); waitHandle.Wait(1000); // Assert Assert.IsNotNull(receivedData); Assert.AreEqual(StreamEventType.Favorite, receivedData.Event); Assert.AreEqual(456ul, receivedData.Source.GetUserId()); Assert.AreEqual(123ul, receivedData.Target.GetUserId()); }
public void ReceivingUnkownDataRaisesEvent() { // Arrange const string strContent = "{ \"event\":\"unknown\", \"created_at\": \"Sat Sep 04 16:10:54 +0000 2010\", \"target\": { \"id\": 123 }, \"source\": { \"id\": 456 }, \"target_object\": { \"created_at\": \"Wed Jun 06 20:07:10 +0000 2012\", \"id_str\": \"210462857140252672\" } }"; ManualResetEventSlim waitHandle = new ManualResetEventSlim(false); var parser = SetupParser(strContent); EventStreamEventArgs receivedData = null; parser.UnknownEventReceived += (s, e) => { receivedData = e; waitHandle.Set(); }; // Act parser.StartStreaming(); waitHandle.Wait(1000); // Assert Assert.IsNotNull(receivedData); }