public async void Should_Return_More_Than_One_Entity(SubwayLines lines)
        {
            var msg = await MtaFeedService.GetCurrentRealtimeFeedMessage(lines);
            Assert.That(msg.Entity.Count, Is.GreaterThan(0));

            //PrintEntityList(lines, msg);
        }
 protected static void PrintEntityList(SubwayLines lines, FeedMessage msg)
 {
     Console.WriteLine("Entity Count for {0}: {1}", lines.ToString(), msg.Entity.Count);
     Console.WriteLine();
     Console.WriteLine("=================================");
     Console.WriteLine("Entity Breakdown");
     Console.WriteLine("=================================");
     Console.WriteLine("Trip Updates: {0}", msg.Entity.Count(e => e.TripUpdate != null));
     Console.WriteLine("Vehicle Positions: {0}", msg.Entity.Count(e => e.Vehicle != null));
     Console.WriteLine("Alerts: {0}", msg.Entity.Count(e => e.Alert != null));
     Console.WriteLine();
     Console.WriteLine("=================================");
     Console.WriteLine("Trip Updates");
     Console.WriteLine("=================================");
     foreach (var entity in msg.Entity.Where(e => e.TripUpdate != null)) {
         PrintTripUpdate(entity);
     }
     Console.WriteLine();
     Console.WriteLine("=================================");
     Console.WriteLine("Vehicle Positions");
     Console.WriteLine("=================================");
     foreach (var entity in msg.Entity.Where(e => e.Vehicle != null)) {
         PrintVehiclePosition(entity);
     }
     Console.WriteLine();
     Console.WriteLine("=================================");
     Console.WriteLine("Alerts");
     Console.WriteLine("=================================");
     foreach (var entity in msg.Entity.Where(e => e.Alert != null)) {
         PrintAlert(entity);
     }
 }
Exemple #3
0
        public List <Station> GetLineByLabel(string lineLabel)
        {
            List <Station> line       = new List <Station>();
            SubwayLine     subwayLine = SubwayLines.Find(w => w.Label == lineLabel);

            if (subwayLine != null)
            {
                line = GetLine(subwayLine.Name);
            }
            return(line);
        }
 public async Task<FeedMessage> GetCurrentRealtimeFeedMessage(SubwayLines lines)
 {
     var requestUrl = _baseUrl + (int) lines;
     using (var client = new HttpClient()) {
         var resultStream = client.GetStreamAsync(requestUrl);
         try
         {
             return Serializer.Deserialize<FeedMessage>(await resultStream);
         }
         catch (Exception e)
         {
             // TODO Save the stream so we can debug it.
             Console.WriteLine(e);
             throw;
         }
     }
 }
Exemple #5
0
 public void AddSubwayLine(string name, string label, string color)
 {
     SubwayLines.Add(new SubwayLine(name, label, color));
 }