示例#1
0
        private void Get_Allergy_Forcast_Date(Dictionary <DateTime, DateResult> PollenComDateResults, string dayKeyword, int DayOffset)
        {
            var divCurrent = _webDriver.FindElements(By.Id("today")).Where(a => a.Text.ToLowerInvariant().Contains(dayKeyword)).FirstOrDefault();

            if (divCurrent != null)
            {
                var allergens    = new List <string>();
                var divAllergens = divCurrent.FindElement(By.XPath("following-sibling::*"));
                var liAllergens  = divAllergens.FindElements(By.TagName("li"));
                foreach (var liAllergen in liAllergens)
                {
                    allergens.Add(
                        liAllergen.GetAttribute("innerText").RemoveHTMLFormatting()
                        );
                }

                var pollenComDateResult = new DateResult
                {
                    level             = Convert.ToDouble(divCurrent.FindElement(By.ClassName("forecast-level")).Text),
                    level_description = divCurrent.FindElement(By.ClassName("forecast-level-desc")).Text,
                    allergens         = allergens,
                };
                PollenComDateResults.Add(DateTime.Today.AddDays(DayOffset), pollenComDateResult);
            }
        }
示例#2
0
        public Result GetForecast(string zipcode)
        {
            var result = new Result();

            _webDriver.GoToUrl($"https://www.pollen.com/forecast/current/pollen/{zipcode}");
            result.webPageResults.Add(_webDriver.GetWebPageResult(_webDriver.FindElement(By.Id("forecast-chart"))));
            Get_Allergy_Forcast_Date(result.pollenComDateResults, "yesterday", -1);
            Get_Allergy_Forcast_Date(result.pollenComDateResults, "today", 0);
            Get_Allergy_Forcast_Date(result.pollenComDateResults, "tomorrow", 1);

            _webDriver.GoToUrl($"https://www.pollen.com/forecast/historic/pollen/{zipcode}");
            result.webPageResults.Add(_webDriver.GetWebPageResult(_webDriver.FindElement(By.Id("highcharts-0"))));

            _webDriver.GoToUrl($"https://www.pollen.com/forecast/extended/pollen/{zipcode}");
            result.webPageResults.Add(_webDriver.GetWebPageResult(_webDriver.FindElement(By.Id("highcharts-0"))));
            var extendedPlot = _webDriver.FindElement(By.XPath("//*[@class='highcharts-data-labels highcharts-series-0 highcharts-tracker']"));
            var extendedDays = extendedPlot.FindElements(By.TagName("tspan"));
            var Date         = DateTime.Today;

            foreach (var day in extendedDays)
            {
                if (!result.pollenComDateResults.ContainsKey(Date))
                {
                    var pollenComDateResult = new DateResult
                    {
                        level = Convert.ToDouble(day.Text.RemoveHTMLFormatting())
                    };
                    result.pollenComDateResults.Add(Date, pollenComDateResult);
                }
                Date = Date.AddDays(1);
            }

            return(result);
        }
示例#3
0
        public PatientData()
        {
            PatientAge = new Result("Age", "years");

            GestationalAge = new Result("Gestational Age", "weeks");

            FemurLength = new Result("Femur Length", "mm");

            PatientName = new StringResult("Patient Name");

            PatientID = new StringResult("Patient ID");

            PatientDOB = new DateResult("DOB");

            StudyDate = new DateResult("Study Date");

            EstimatedDueDate = new DateResult("Estimated Due Date");

            ReasonForStudy = new StringResult("Reason For Study");

            ReferringPhysician = new StringResult("Referring Physician");

            EchoType = new MultipleChoiceResult("Echo Type", new List <string>()
            {
                "Fetal Echo"
            });

            ReportingDoctor = new MultipleChoiceResult("Reporting Doctor", new List <string>()
            {
                "Dr Paul Brooks"
            });

            UpdateGestationalAgeResult();
        }
        public void Init()
        {
            _log                 = Substitute.For <ILog>();
            _dateCalculator      = Substitute.For <IDateCalculator>();
            _powerService        = Substitute.For <IPowerService>();
            _positionAggregator  = Substitute.For <IPositionAggregator>();
            _fileNameGenerator   = Substitute.For <IFileNameGenerator>();
            _reportContentWriter = Substitute.For <IReportContentWriter>();
            _file                = Substitute.For <IFile>();
            _reportGenerator     = new ReportGenerator(_log, _dateCalculator, _powerService, _positionAggregator, _fileNameGenerator, _reportContentWriter, _file);

            _reportFolder = @"C:\Temp\";
            _dates        = new DateResult {
                ExtractDateTime = new DateTime(2015, 10, 5, 23, 34, 0), RequestDate = new DateTime(2015, 10, 6)
            };

            _powerTradeOne = new PowerTrade();
            _powerTradeTwo = new PowerTrade();
            _powerTrades   = new[] { _powerTradeOne, _powerTradeTwo };
            _powerPosition = new PowerPosition(_dates.RequestDate);
            _fileName      = "PowerPositions.csv";
            _content       = "Local time, Volume etc";

            _dateCalculator.Calculate().Returns(_dates);
            _powerService.GetTrades(_dates.RequestDate).Returns(_powerTrades);
            _positionAggregator.Aggregate(_dates.RequestDate, Arg.Is <List <PowerTrade> >(x => x[0] == _powerTradeOne && x[1] == _powerTradeTwo)).Returns(_powerPosition);
            _fileNameGenerator.Generate(_dates.ExtractDateTime).Returns(_fileName);
            _reportContentWriter.Write(_powerPosition).Returns(_content);
        }
示例#5
0
 public DateFieldControl(DateResult result, Action onUpdate = null)
 {
     InitializeComponent();
     OnUpdate = onUpdate;
     //d = new DatePickerPopupForm(this);
     //d.TopMost = true;
     Result = result;
     ResultTitleLabel.Text = result.Name;
     ValidateValue(null, null);
 }
 void ReleaseDesignerOutlets()
 {
     if (DateResult != null)
     {
         DateResult.Dispose();
         DateResult = null;
     }
     if (TimeResult != null)
     {
         TimeResult.Dispose();
         TimeResult = null;
     }
 }
示例#7
0
        private static void AppendField(StringBuilder builder, string name, DateResult value)
        {
            builder.Append(name);

            if (value == null)
            {
                builder.Append("<empty>");
            }
            else
            {
                builder.Append(value.Date.ToString());
            }

            builder.Append(System.Environment.NewLine);
        }
示例#8
0
        public void GetValue_DateTests(string strDate, string[] formats, DateResult expected)
        {
            //Given
            _cell.Setup(x => x.ToString()).Returns(strDate);

            //When
            var value = CellExtensions.GetValue(_cell.Object, new FieldConfig
            {
                Type        = "date",
                Validations = new ValidationOptions
                {
                    Formats = formats
                }
            });

            //Then
            value.Should().BeEquivalentTo(expected);
        }