示例#1
0
        public void FinamCreatingTest()
        {
            FinamPosition test = new FinamPosition("vtb");

            // Проверка позиции на правильность.
            // Для того, чтобы позиция была корректной, она должна содержать
            // Значение даты на текущий момента, значение цены, а так же значение валюты

            // Проверяем, что значения отличаются от значений по умолчанию
            Assert.NotEqual(0.0, test.CurrentCost);
            Assert.NotEqual(string.Empty, test.Currency);
            // Проверяем, что дата соответстует дате проведения теста (без времени)
            Assert.Equal(DateTime.Now.Date, test.LastUpdate.Date);
        }
示例#2
0
        static void Main(string[] args)
        {
            const string       source      = "Sber";
            Settings           appSettings = SettingsHandler.GetSettings("develop");
            PositionDictionary dict        = new PositionDictionary(appSettings, source);

            List <string> namesOfPosition = new List <string>()
            {
                "vtb",
                "aeroflot",
                "gazprom",
                "nornickel-gmk",
                "lukoil"
            };

            // Проверка, есть ли позиции, которые перечислены в списке позиций, в словаре для конкретного источника данных
            foreach (string name in namesOfPosition)
            {
                if (!dict.Contains(name))
                {
                    Console.WriteLine($"Для словаря {source} отсутствует ключ {name}");
                    Console.WriteLine($"Для продолжения осуществите ввод значения, которое соответствует ключe {name} для словаря {source}");
                    string value = Console.ReadLine();
                    if (dict.Validate(value))
                    {
                        dict[name] = value;
                    }
                    else
                    {
                        Console.WriteLine($"Введенное значение '{value}' не прошло валидацию и не будет добавлено в справочник");
                    }
                }
            }

            // Если в словарь были применены изменения - провести сохранение данных изменений
            if (dict.IsChanged)
            {
                dict.SaveData();
            }


            foreach (string name in namesOfPosition)
            {
                FinamPosition test = new FinamPosition(name);
                Console.WriteLine(test);
            }
        }