Beispiel #1
0
        public async Task RoadStatus_GivenInputIsA2_ReturnValidRoadIds()
        {
            // Arrange
            var expected = new Road()
            {
                Id                        = "a2",
                DisplayName               = "A2",
                StatusSeverity            = "Good",
                StatusSeverityDescription = "No Exceptional Delays"
            };

            var fakeHttpMessageHandler = new Mock <FakeHttpMessageHandler> {
                CallBase = true
            };

            fakeHttpMessageHandler.Setup(x => x.Send(It.IsAny <HttpRequestMessage>()))
            .Returns(new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(new Road[] { expected }))
            });

            var client = new HttpClient(fakeHttpMessageHandler.Object);

            var roadService = new RoadService(client);

            // Act
            var actual = await roadService.GetRoadStatus("A2");

            // Asset
            fakeHttpMessageHandler.Verify();
            Assert.AreEqual(expected.Text, actual.Result.Text);
        }
Beispiel #2
0
        public async Task RoadStatus_GivenInputIsA233_ReturnValidRoadIds()
        {
            // Arrange
            var expected = new RequestError()
            {
                Message = "A233"
            };

            var fakeHttpMessageHandler = new Mock <FakeHttpMessageHandler> {
                CallBase = true
            };

            fakeHttpMessageHandler.Setup(x => x.Send(It.IsAny <HttpRequestMessage>()))
            .Returns(new HttpResponseMessage(HttpStatusCode.NotFound)
            {
                Content = new StringContent($"A233 is not a valid road")
            });
            var client = new HttpClient(fakeHttpMessageHandler.Object);

            var roadService = new RoadService(client);

            // Act
            var actual = await roadService.GetRoadStatus("A233");

            // Asset
            fakeHttpMessageHandler.Verify();
            Assert.AreEqual(expected.Text, actual.Result.Text);
        }
Beispiel #3
0
        static async Task <int> Main(string[] args)
        {
            var           roadService   = new RoadService(new HttpClient());
            RequestStatus requestStatus = await roadService.GetRoadStatus(args[0]);

            System.Console.WriteLine(requestStatus.Result.Text);

            return(requestStatus.ExitCode);
        }
Beispiel #4
0
        public async Task GetRoad_NoData_ReturnsRoad()
        {
            var data = new Mock <ITflClient>();

            data.Setup(d => d.Get("A2")).Returns(Task.FromResult((RoadData)null));

            var service = new RoadService(data.Object);

            var road = await service.GetStatus("A2");

            Assert.IsNull(road);
        }
Beispiel #5
0
        public void GivenAValidRoadIdReturnTrue()
        {
            var apiResponse = new RoadStatusResponse
            {
                Type                      = "Tfl.Api.Presentation.Entities.RoadCorridor, Tfl.Api.Presentation.Entities",
                Id                        = "A2",
                DisplayName               = "A2",
                StatusSeverity            = "Good",
                StatusSeverityDescription = "No Exceptional Delays",
                Bounds                    = "[[-0.0857,51.44091],[0.17118,51.49438]]",
                Envelope                  = "[[-0.0857,51.44091],[-0.0857,51.49438],[0.17118,51.49438],[0.17118,51.44091],[-0.0857,51.44091]]",
                Url                       = "/Road/a2"
            };
            var apiRequest = new RoadStatusRequest
            {
                AppId   = "AppId",
                AppKey  = "AppKey",
                BaseUrl = "DataEndPoint",
                Id      = "A2"
            };


            var roadApi = new Mock <IRoadApi>();

            var configuration = new Mock <IConfiguration>();

            var mockConfAppId = new Mock <IConfigurationSection>();

            var mockConfAppKey = new Mock <IConfigurationSection>();

            var mockConfBaseUrl = new Mock <IConfigurationSection>();

            mockConfAppId.Setup(a => a.Value).Returns("AppId");
            mockConfAppKey.Setup(a => a.Value).Returns("AppKey");
            mockConfBaseUrl.Setup(a => a.Value).Returns("DataEndPoint");

            configuration.Setup(a => a.GetSection("TFL:AppId")).Returns(mockConfAppId.Object);
            configuration.Setup(a => a.GetSection("TFL:AppKey")).Returns(mockConfAppKey.Object);
            configuration.Setup(a => a.GetSection("TFL:DataEndPoint")).Returns(mockConfBaseUrl.Object);


            roadApi.Setup(x => x.RoadStatus(It.IsAny <RoadStatusRequest>())).ReturnsAsync(apiResponse);

            var sut = new RoadService(roadApi.Object, configuration.Object, CurrentMapper);

            var result = sut.RoadStatusService(apiRequest.Id).Result;

            Assert.Equal(apiResponse.DisplayName, result.DisplayName);
            Assert.Equal(apiResponse.StatusSeverity, result.StatusSeverity);
            Assert.Equal(apiResponse.StatusSeverityDescription, result.StatusSeverityDescription);
        }
Beispiel #6
0
        public async Task GetRoad_WithData_SetsDescription()
        {
            var data = new Mock <ITflClient>();

            const string name = "A4";

            data.Setup(d => d.Get(name)).Returns(Task.FromResult(new RoadData {
                displayName = name, statusSeverityDescription = "Lots of delays"
            }));
            var service = new RoadService(data.Object);

            var road = await service.GetStatus(name);

            Assert.AreEqual("Lots of delays", road.Description);
        }
Beispiel #7
0
        public async Task GetRoad_WithData_SetsName()
        {
            var data = new Mock <ITflClient>();

            const string name = "A4";

            data.Setup(d => d.Get(name)).Returns(Task.FromResult(new RoadData {
                displayName = name
            }));
            var service = new RoadService(data.Object);

            var road = await service.GetStatus(name);

            Assert.AreEqual(name, road.Name);
        }
Beispiel #8
0
        private void InitialData()
        {
            Session["lstOrderDetail"] = null;
            var cmdStore = new StoreService();

            //DataSouce = cmdStore.GetALL();
            DataSouce = new List <STORE>();
            USER user = Session["user"] as USER;

            if (user == null)
            {
                Response.Redirect("MainAdmin.aspx");
            }
            var cmdZone = new ZoneDetailService();

            foreach (ZONE_DETAIL zoneId in cmdZone.GetALLByUser(user.EMPLOYEE_ID))
            {
                List <STORE> tmp = cmdStore.GetALL().Where(x => x.ZONE_ID == zoneId.ZONE_ID).ToList();
                DataSouce.AddRange(tmp);
            }

            var cmd  = new SectorService();
            var list = cmd.GetALL();

            foreach (var item in list)
            {
                ddlSector.Items.Add(new ListItem(item.SECTOR_NAME, item.SECTOR_ID.ToString()));
            }
            var cmdPro = new ProvinceService();

            ViewState["listProvince"] = cmdPro.GetALL();
            foreach (var item in (List <PROVINCE>)ViewState["listProvince"])
            {
                ddlProvince.Items.Add(new ListItem(item.PROVINCE_NAME, item.PROVINCE_ID.ToString()));
            }

            var cmdRoad = new RoadService();

            ViewState["listRoad"] = cmdRoad.GetALL();
            foreach (var item in (List <ROAD>)ViewState["listRoad"])
            {
                ddlRoad.Items.Add(new ListItem(item.ROAD_NAME, item.ROAD_ID.ToString()));
            }

            gridStore.DataSource = null;
            gridStore.DataBind();
        }
Beispiel #9
0
        public void GetRoadsStatusAsync_ReturnsARoadObject()
        {
            var listRoads = new List <Road>();
            var settings  = new AppSettings {
                ApplicationID = "appID", ApplicationKey = "appKey", BaseApiUrl = "http://host"
            };
            var roadName = "A2000";

            appSettings.SetupGet(x => x.Value).Returns(settings);
            roadRepository.Setup(x => x.GetAllAsync(It.IsAny <String>())).Returns(Task.FromResult(listRoads));
            roadService = new RoadService(appSettings.Object, roadRepository.Object);

            var result = roadService.GetRoadsStatusAsync(roadName);

            Assert.That(result, Is.Not.Null);
            Assert.That(result.GetAwaiter().GetResult(), Is.TypeOf <List <Road> >());
        }
Beispiel #10
0
        public void Tick()
        {
            if (TW.Graphics.TotalRunTime < nextTick)
            {
                return;
            }
            nextTick = TW.Graphics.TotalRunTime + PushSpeed;

            var item = WarehouseService.GetItemsInWarehouses(voxel).FirstOrDefault();

            if (item == null)
            {
                return;
            }
            //TODO: if cant push first item, try items of other types too!
            if (!RoadService.CanPush(voxel, item))
            {
                return;
            }
            WarehouseService.TakeFromWarehouse(voxel, new[] { item });
            RoadService.Push(voxel, item);
        }
Beispiel #11
0
        static void Main(string[] args)
        {
            var builder = new ConfigurationBuilder()
                          .SetBasePath(Directory.GetCurrentDirectory())
                          .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);

            IConfigurationRoot configuration = builder.Build();

            try
            {
                var result = RoadService.GetRoadStatus(args[0], configuration["appId"], configuration["developerKey"]);

                Console.WriteLine($"The status of the {result.DisplayName} is as follows");
                Console.WriteLine($"Road Status is {result.StatusSeverity}");
                Console.WriteLine($"Road Status Description is {result.StatusSeverityDescription}");
                Environment.ExitCode = 0;
            }
            catch (Exception e)
            {
                Console.WriteLine($"{args[0]} is not a valid road");
                Environment.ExitCode = 1;
            }
        }
Beispiel #12
0
        private void InitialDataPopup()
        {
            var cmd  = new SectorService();
            var list = cmd.GetALL();

            foreach (var item in list)
            {
                ddlSector.Items.Add(new ListItem(item.SECTOR_NAME, item.SECTOR_ID.ToString()));
            }
            var cmdPro = new ProvinceService();

            ViewState["listProvince"] = cmdPro.GetALL();
            foreach (var item in (List <PROVINCE>)ViewState["listProvince"])
            {
                ddlProvince.Items.Add(new ListItem(item.PROVINCE_NAME, item.PROVINCE_ID.ToString()));
            }

            var cmdRoad = new RoadService();

            ViewState["listRoad"] = cmdRoad.GetALL();
            foreach (var item in (List <ROAD>)ViewState["listRoad"])
            {
                ddlRoad.Items.Add(new ListItem(item.ROAD_NAME, item.ROAD_ID.ToString()));
            }

            var cmdZone  = new ZoneService();
            var listZone = cmdZone.GetALL();

            foreach (var item in listZone)
            {
                ddlZone.Items.Add(new ListItem(item.ZONE_NAME, item.ZONE_ID.ToString()));
            }

            if (ViewState["stoId"] != null)
            {
                var cmdStore = new StoreService();
                _store = cmdStore.Select(Convert.ToInt32(ViewState["stoId"].ToString()));
                if (_store != null)
                {
                    txtAddress.Text           = _store.STORE_ADDR1;
                    txtAmpur.Text             = _store.STORE_DISTRICT;
                    txtFax.Text               = _store.STORE_FAX;
                    txtMobli.Text             = _store.STORE_MOBILE;
                    txtPostCode.Text          = _store.STORE_POSTCODE;
                    popTxtStoreCode.Text      = _store.STORE_CODE;
                    poptxtStoreName.Text      = _store.STORE_NAME;
                    txtTel1.Text              = _store.STORE_TEL1;
                    txtTel2.Text              = _store.STORE_TEL2;
                    txtTumbon.Text            = _store.STORE_SUBDISTRICT;
                    ddlSector.SelectedValue   = _store.SECTOR_ID.ToString();
                    ddlProvince.SelectedValue = _store.PROVINCE_ID.ToString();
                    ddlProvince.Enabled       = true;
                    ddlZone.SelectedValue     = _store.ZONE_ID.ToString();
                    //if (ddlProvince.SelectedItem.Text.Equals("กรุงเทพมหานคร"))
                    //{
                    ddlRoad.Visible       = true;
                    ddlRoad.SelectedValue = _store.ROAD_ID.ToString();
                    txtRoad.Visible       = false;
                    //}
                    //else
                    //{
                    //    txtRoad.Text = _store.STORE_STREET;
                    //    ddlRoad.Visible = false;
                    //}
                    flag.Text = "Edit";
                }
            }
        }
Beispiel #13
0
 public void should_not_getroadstatus_withinvaliddeveloperkey_and_return_exception()
 {
     PAssert.Throws <RoadRequestException>(() => RoadService.GetRoadStatus("A2", configuration["appId"], "xxxxxx"));
 }
Beispiel #14
0
 public void should_not_getroadstatus_withvalidroadname_and_return_exception()
 {
     PAssert.Throws <RoadRequestException>(() =>
                                           RoadService.GetRoadStatus("Z2", configuration["appId"], configuration["developerKey"]));
 }
Beispiel #15
0
        public void should_getroadstatus_withvalidroadname_and_return_valid_data()
        {
            var actual = RoadService.GetRoadStatus("A2", configuration["appId"], configuration["developerKey"]);

            PAssert.IsTrue(() => actual.GetType() == typeof(RoadRequestResponse));
        }