private IEvalCase[] Load(string fileName)
 {
     using (WebClient client = new WebClient())
     {
         var timer = new Timer();
         var res = CaseLoader.LoadCase(new StreamReader(new MemoryStream(client.DownloadData(PetrovichEvalMaster+fileName)),Encoding.UTF8));
         Debug.WriteLine($"Загружен файл {fileName} за {timer}");
         return res;
     }
 }
示例#2
0
 public void Evaluate(EvaluateParameters parameters)
 {
     var timer = new Timer();
     var errors = new List<IEvalCase>();
     var caseData = parameters.CaseAccessor(_caseSource);
     int totalGood = 0;
     foreach (var @case in caseData)
     {
         string inflectResult;
         var isActive = EvaluateCase(parameters, @case, out inflectResult);
         @case.Result = inflectResult;
         if (isActive)
             totalGood++;
         else
         {
             errors.Add(@case);
         }
     }
     var rate = (double) totalGood/ caseData.Length;
     Debug.WriteLine("");
     Debug.WriteLine($"Проверен '{parameters.Description}' за {timer} (на 1000 {timer.Duration.TotalSeconds * 1000/ (caseData.Length):R} сек.) точность '{rate}'");
     File.WriteAllLines(parameters.Description+".errors.txt", errors.Select(x=>x.ToString()));
 }