Exemplo n.º 1
0
 /// <summary>
 /// Сохраняет информацию  в лог
 /// </summary>
 /// <param name="arguments"></param>
 /// <returns></returns>
 public Task <bool> SaveToLog(CalculModel arguments)
 {
     //Преобразовывает выражение в строку
     //и записывает информацию в хранилище в отдельном потоке
     return(Task.Factory.StartNew(() => _repository.Add(OperList.CalculString(arguments.Arg1.ToString(),
                                                                              arguments.Arg1.ToString(), arguments.Result.ToString(), arguments.OperationName))));
 }
Exemplo n.º 2
0
 /// <summary>
 /// Операция записи в лог
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public bool AddRecordAsync(CalculViewModel model)
 {
     //Пять секунд спокойствия
     //Task.Delay(5000);
     //Преобразуем операцию в строку лога и записываем в хранилище
     return(repository.Add(OperList.CalculString(model.Argument1,
                                                 model.Argument2, model.Result, model.selectedOperator)));
 }
Exemplo n.º 3
0
 /// <summary>
 /// Получает из хранилища последние 5 записей
 /// и возвращает их в виде массива строк
 /// </summary>
 /// <param name="n"></param>
 /// <returns></returns>
 public async Task <string[]> GetString5(int n = 5)
 {
     //Получаем данные из хранилища
     //Преобразовываем их в массив строк
     return(await Task.Run(
                () => _repository.Get5(n)
                .Select(r => OperList.HistoryString(r.When, r.What))
                .ToArray <string>()));
 }
Exemplo n.º 4
0
        public void CalculString0Test()
        {
            //arrange


            //act
            var result = OperList.CalculString("1", "2", "3", "Сложение");

            //assert
            Assert.AreEqual("1 + 2 = 3", result);
        }
Exemplo n.º 5
0
        public void CalculString3Test()
        {
            //arrange


            //act
            var result = OperList.CalculString("1", "2", "0,5", "Деление");

            //assert
            Assert.AreEqual("1 / 2 = 0,5", result);
        }
Exemplo n.º 6
0
        public void CalculString2Test()
        {
            //arrange


            //act
            var result = OperList.CalculString("1", "2", "2", "Умножение");

            //assert
            Assert.AreEqual("1 * 2 = 2", result);
        }
Exemplo n.º 7
0
        public void CalculString1Test()
        {
            //arrange


            //act
            var result = OperList.CalculString("1", "2", "-2", "Вычитание");

            //assert
            Assert.AreEqual("1 - 2 = -2", result);
        }
Exemplo n.º 8
0
        public void HistoryStringTest()
        {
            //arrange
            var what = "1 + 2 = 3";
            var when = "02.08.2012 10:30:00";

            //act
            var result = OperList.HistoryString(when, what);

            //assert
            Assert.AreEqual("02.08.2012 10:30:00 | 1 + 2 = 3", result);
        }