public void StatesShouldChangeInCorrectOrderWithCorrectTimings() { new TestScheduler().With( scheduler => { scheduler.Start(); var trafficController = new TrafficController(scheduler); trafficController.NextTrafficState.Should().Be(TrafficState.RedRed); scheduler.AdvanceBy(TimeSpan.FromSeconds(1).Ticks); trafficController.NextTrafficState.Should().Be(TrafficState.RedGreen); scheduler.AdvanceBy(TimeSpan.FromSeconds(270).Ticks); trafficController.NextTrafficState.Should().Be(TrafficState.RedYellow); scheduler.AdvanceBy(TimeSpan.FromSeconds(30).Ticks); trafficController.NextTrafficState.Should().Be(TrafficState.GreenRed); scheduler.AdvanceBy(TimeSpan.FromSeconds(270).Ticks); trafficController.NextTrafficState.Should().Be(TrafficState.YellowRed); scheduler.AdvanceBy(TimeSpan.FromSeconds(30).Ticks); trafficController.NextTrafficState.Should().Be(TrafficState.RedRed); }); }
private static void Main(string[] args) { Log.Logger = new LoggerConfiguration() .WriteTo.ColoredConsole() .WriteTo.RollingFile("TrafficController-{Date}.log") .CreateLogger(); var trafficController = new TrafficController(Scheduler.Default); var intersection = new TrafficIntersection(trafficController); intersection.NorthLight.Subscribe(x => Log.Information("North is now {x}", x)); intersection.SouthLight.Subscribe(x => Log.Information("South is now {x}", x)); intersection.WestLight.Subscribe(x => Log.Information("West is now {x}", x)); intersection.EastLight.Subscribe(x => Log.Information("East is now {x}", x)); while (true) { Thread.Sleep(TimeSpan.FromSeconds(1)); } }
public void CallToGetTrafficDataReturnsSuccess() { modelBuilder.Setup(s => s.GetTrafficAsync()).ReturnsAsync(TestHelper.GetTrafficModelData()); var controller = new TrafficController(modelBuilder.Object); Assert.NotNull(controller); var response = controller.GetTraffic().Result; Assert.IsType <OkObjectResult>(response); modelBuilder.Verify(x => x.GetTrafficAsync(), Times.Once); var result = response as OkObjectResult; Assert.NotNull(result); var trafficData = result.Value as IList <TrafficModel>; Assert.NotNull(trafficData); Assert.Equal(3, trafficData.Count); Assert.Equal("Aurora", trafficData[0].City); }
/// <summary> /// Wpisz na formatkę otrzymaną wiadomość i uruchom popUpForm /// </summary> /// <param name="sender"></param> /// <param name="msgNow"></param> private void TrafficController_OnMessageReceived(TrafficController sender, Message msgNow) { if (Int32.Parse(nr) == msgNow.Number) { TypeText(trafficController.FindName(msgNow.Number.ToString()), msgNow.Text, msgNow.DateTime); if (CheckOpened(Text)) { //MessageBox.Show("OTWARTE OKNO"); } else { //MessageBox.Show("NIE OTWARTE OKNO"); //timer1.Enabled = true; popUpForm.labelWho.Text = trafficController.FindName(msgNow.Number.ToString()); popUpForm.labelWhat.Text = msgNow.Text; popUpForm.ShowDialog(); } } }
public void TrafficLightsShouldChangeToExpected() { new TestScheduler().With( scheduler => { scheduler.Start(); var trafficController = new TrafficController(scheduler); // progress by one second past RedRed state to the RedGreen state. scheduler.AdvanceBy(TimeSpan.FromSeconds(1).Ticks); trafficController.NorthLight.Subscribe(state => { state.Should().Be(Light.Red); }); trafficController.SouthLight.Subscribe(state => { state.Should().Be(Light.Red); }); trafficController.WestLight.Subscribe(state => { state.Should().Be(Light.Green); }); trafficController.EastLight.Subscribe(state => { state.Should().Be(Light.Green); }); }); }
/// <summary> /// Wpisz na formatkę otrzymaną wiadomość i uruchom popUpForm /// </summary> /// <param name="sender"></param> /// <param name="msgNow"></param> private void TrafficController_OnMessageReceived(TrafficController sender, Message msgNow) { if (nr == msgNow.Number) { TypeText(trafficController.FindName(msgNow.Number.ToString()), msgNow.Text, msgNow.DateTime); //MessageBox.Show(msgNow.Text); /*if (CheckOpened(Text)) * { * //MessageBox.Show("OTWARTE OKNO"); * } * else * { * MessageBox.Show("NIE OTWARTE OKNO"); * //timer1.Enabled = true; * popUpForm.labelWho.Text = trafficController.FindName(msgNow.Number.ToString()); * popUpForm.labelWhat.Text = msgNow.Text; * popUpForm.ShowDialog(); * }*/ } }
void Start() { AudioListener.volume = AudioVolume; GameTime.Instance.m_timeMultiplier = PlaybackSpeed; m_trafficController = FindObjectOfType <TrafficController>(); m_roadGenerator = FindObjectOfType <RoadGenerator>(); m_controller = FindObjectOfType <SplineFollowControl>(); m_uiController = FindObjectOfType <UIController>(); m_roadGenerator.Regenerate(); m_trafficController.Begin(); m_controller.ControlBegin(); // Spawn riders for (int riderIndex = 0; riderIndex < NumRiders; ++riderIndex) { Rider newRider = Instantiate(RiderPrefab.gameObject).GetComponent <Rider>(); newRider.TeamId = 0; newRider.RiderStart(); m_riders.Add(newRider); m_trafficController.RegisterFocalObject(newRider.gameObject); m_uiController.RegisterPlayerRider(newRider, false); } for (int riderIndex = 0; riderIndex < NumEnemyRiders; ++riderIndex) { Rider newRider = Instantiate(EnemyRiderPrefab.gameObject).GetComponent <Rider>(); newRider.TeamId = 1; newRider.RiderStart(); m_enemyRiders.Add(newRider); m_trafficController.RegisterFocalObject(newRider.gameObject); m_uiController.RegisterPlayerRider(newRider, true); } }
public void ConstructorSuccessful() { var controller = new TrafficController(modelBuilder.Object); Assert.NotNull(controller); }
public void ConstructorThrowsExceptionWhenNullModelBuilder() { var exception = Assert.Throws <ArgumentNullException>(() => { _ = new TrafficController(null); }); exception.Message.Contains("trafficModelBuilder"); }
public bool Inital() { try { MoniCars.Clear(); AllCar = AGVClientDAccess.LoadAGVAchive(); AllLands = AGVClientDAccess.LoadLandByCondition("1=1"); AllSegs = AGVClientDAccess.LoadAllSegment(); SimulatorVar.AllSegs = AllSegs; Stores = AGVClientDAccess.LoadStorages(); System = AGVSimulationDAccess.LoadSystem(); foreach (CarBaseStateInfo item in AllCar) { CarMonitor moniCar = new CarMonitor(); moniCar.AgvID = item.AgvID; moniCar.CurrSite = Convert.ToInt32(item.StandbyLandMark); moniCar.StandbyLandMark = item.StandbyLandMark; double ScalingRate = 0; string ScalingRateStr = System["ScalingRate"].ToString(); try { ScalingRate = Convert.ToDouble(ScalingRateStr); } catch { } if (ScalingRate > 0) { LandmarkInfo CurrLand = AllLands.FirstOrDefault(p => p.LandmarkCode == item.StandbyLandMark); if (CurrLand != null) { moniCar.X = (float)(CurrLand.LandX * ScalingRate); moniCar.Y = (float)(CurrLand.LandY * ScalingRate); } } moniCar.ScalingRate = ScalingRate; MoniCars.Add(moniCar); } if (Car_Ini != null) { Car_Ini(MoniCars); } //Juncts.Clear(); //IList<TrafficController> Traffics = AGVClientDAccess.GetTraffics(); //foreach (TrafficController item in Traffics) //{ // JunctionInfo junct = new JunctionInfo(); // foreach (string s in item.EnterLandCode.Split(',')) // { junct.JunctionLandMarkCodes.Add(s); } // junct.JunctionID = item.JunctionID; // foreach (string s in item.JunctionLandMarkCodes.Split(',')) // { junct.JunctionLandMarkCodes.Add(s); } // junct.RealseLandMarkCode = item.RealseLandMarkCode; // Juncts.Add(junct); //} CountRoute = new RoutePlanData(AllSegs); Traffic = new TrafficController(MoniCars, AllSegs, System, AllLands); timerStarBeStopedCar.Enabled = true; timerStarBeStopedCar.AutoReset = true; timerStarBeStopedCar.Elapsed += TimerStarBeStopedCar_Elapsed; timerFreshTask.Enabled = true; timerFreshTask.AutoReset = true; timerFreshTask.Elapsed += TimerFreshTask_Elapsed; return(true); } catch (Exception ex) { return(false); throw ex; } }
public Dictionary <string, RealtimeModel> statistics() { List <getAllUser_Result> users = new List <getAllUser_Result>(); digimarketEntities1 db = new digimarketEntities1(); using (var data = db.getAllUser()) { users = data.ToList <getAllUser_Result>(); } Dictionary <string, RealtimeModel> realtimeList = new Dictionary <string, RealtimeModel>(); foreach (var user in users) { TrafficController trafficController = new TrafficController(); //List < List < UserStats >> total_stats = new List<List<UserStats>>(); RealtimeModel final = new RealtimeModel() { total_traffic = 0, message = "BackEnd Task for" + user.fullname, country_stats = new List <CountryStat>() }; List <get_user_traffic_Result> res = trafficController.get_all_sites(user.uid); foreach (var item in res) { Authorization auth = new Authorization(item.email); var result = auth.service.Data.Realtime.Get("ga:" + item.ga_id, "rt:activeUsers"); result.Dimensions = "rt:country"; result.Filters = "ga:campaign=@" + user.username; var response = result.Execute(); if (response.TotalResults != 0) { final.total_traffic = final.total_traffic + Int64.Parse(response.TotalsForAllResults["rt:activeUsers"]); foreach (var row in response.Rows) { // UserStats temp = user_stats.Last<UserStats>(); CountryStat cStats = new CountryStat(); cStats = final.country_stats.FirstOrDefault(x => x.country == row[0]); if (cStats == null) { cStats = new CountryStat() { country = row[0], sessions = Int64.Parse(row[1]) }; final.country_stats.Add(cStats); } else { final.country_stats.Remove(cStats); cStats.sessions = cStats.sessions + Int64.Parse(row[1]); final.country_stats.Add(cStats); } } } } realtimeList.Add(user.uid, final); } return(realtimeList); }
public void ShowAirplanes() { TrafficController trafficController = new TrafficController(); trafficController.DoItall(); while (true) { List <Airplane> Pista20Up = trafficController.T1.AirplanesToUp; List <Airplane> Pista20Down = trafficController.T1.AirplanesToDown; List <Airplane> Pista15Up = trafficController.T2.AirplanesToUp; List <Airplane> Pista15Down = trafficController.T2.AirplanesToDown; List <Airplane> Pista10Up = trafficController.T3.AirplanesToUp; List <Airplane> Pista10Down = trafficController.T3.AirplanesToDown; List <Airplane> PistaPouso = trafficController.PP.AirplanesToUp; List <Airplane> PistaDecolagem = trafficController.PD.AirplanesToUp; string airplanes20 = "", airplanes15 = "", airplanes10 = "", airplanesP = "", airplanesD = ""; #region Pista 20 foreach (var item in Pista20Up) { airplanes20 += "(✈ " + item.Index.ToString() + " ↑)"; } foreach (var item in Pista20Down) { airplanes20 += "(✈ " + item.Index.ToString() + " ↓)"; //↓ } #endregion #region pista 10 foreach (var item in Pista10Up) { airplanes10 += "(✈ " + item.Index.ToString() + " ↓)"; } foreach (var item in Pista10Down) { airplanes10 += "(✈ " + item.Index.ToString() + " ↑)"; } #endregion #region Pista 15 foreach (var item in Pista15Up) { airplanes15 += "(✈ " + item.Index.ToString() + " ↓)"; } foreach (var item in Pista15Down) { airplanes15 += "(✈ " + item.Index.ToString() + " ↑)"; } #endregion #region Pouso foreach (var item in PistaPouso) { airplanesP += "(✈ " + item.Index.ToString() + " ↓)"; } #endregion #region Decolagem foreach (var item in PistaDecolagem) { airplanesD += "(✈ " + item.Index.ToString() + " ↑)"; } #endregion UpdateText(label1, airplanes20); UpdateText(label2, airplanes15); UpdateText(label3, airplanes10); UpdateText(label4, airplanesP); UpdateText(label5, airplanesD); Thread.Sleep(1000); } }
public FlowGenerator(ref PrefabManager pmgr, ref TrafficController tcon) { pmgr_ = pmgr; tcon_ = tcon; }