public void GetLinesAsyncTests()
        {
            //Default constructor
            var status = new MTASubwayStatus();

            Assert.DoesNotThrow(async () =>
            {
                var lines = await status.GetLinesAsync();

                Assert.IsNotNull(lines);

                Assert.IsNotEmpty(lines);
            });

            //Passing a foreign repository
            var repo = new MTARepository();
            status = new MTASubwayStatus(repo);

            Assert.DoesNotThrow(async () =>
            {
                var lines = await status.GetLinesAsync();

                Assert.IsNotNull(lines);

                Assert.IsNotEmpty(lines);
            });
        }
        public void GetServiceAsyncTests()
        {
            var repo = new MTARepository();

            Assert.DoesNotThrow(async () =>
            {
                var result = await repo.GetServiceAsync();

                Assert.IsNotNull(result);

                Assert.IsNotEmpty(result.BT);

                Assert.IsNotEmpty(result.Bus);

                Assert.IsNotEmpty(result.LIRR);

                Assert.IsNotEmpty(result.MetroNorth);

                Assert.IsNotEmpty(result.Subway);
            });
        }
 /// <summary>
 /// Creates a MTASubwayStatus object using the repository passed as a parameter
 /// </summary>
 /// <param name="repository">MTARepository object to use</param>
 public MTASubwayStatus(MTARepository repository)
 {
     _repo = repository;
 }
 /// <summary>
 /// Creates a default MTASubwayStatus object
 /// </summary>
 public MTASubwayStatus()
 {
     _repo = new MTARepository();
 }