-
Notifications
You must be signed in to change notification settings - Fork 0
Stas3d/lms-kryzsta
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
TO RUN TESTS mvn clean test TO RUN APPLICATION, PUT FILE WITH DATA TO /input FOLDER AND RUN mvn exec:java -Dexec.args="FILE.txt" Example mvn exec:java -Dexec.args="dataSheet.lms" Notice: This application requires java7/maven3 environment. -добавлен для юнит-тестов private static Parser parser = new ParserImpl() -экземпляр класса приведен к интерфейсу ParserImpl => Parser -В displayMethod добавлен для else перед foreach ============ ============ The Problem Существует система, которая работает с торговыми операциями и обеспечивает проверку превышения допустимых значений для каждой из операций. Система должна показать пользователю, в какой из операций произошло нарушение. Input Система обрабатывает все входящие данные как текст, первая строка должна быть “LIMITS”, после чего в указываются существующие ограничения. Ограничения описываются для следующих полей: страна, валюта, значение. Далее указывается слово “OPERATIONS”, после чего указывается в каждой из строк операции по следующим полям: ID (во внешней системе), страна, валюта, значение, дата операции. Считается, что произошло нарушение в том случае, если значение в операции превышает соответствующий лимит на более, чем 5%. Example LIMITS USA USD 1000 Ukraine UAH 2000 Ukraine UAH 150 Poland USD 700 Poland UAH 0 OPERATIONS 111 USA USD 100 117 USA UAH 100000 131 Ukraine UAH 4000 159 Poland RUB 10000 198 Ukraine UAH 2001 201 USA USD 7000 Output Необходимо вывести список операций, в которых произошло нарушение и указать в процентном соотношении превышение лимита для данной операции Example 131 200% 201 700% Restrictions - В случае ошибки данных(неверный формат, отрицательное значение и тд) обработка прекращается и пользователю отображается сообщение”Input data error” - В случае, если лимита для данной страны/валюты не существует - операция проходит успешно What we are looking for Целью данного задания не является получить полноценное приложение(не стоит использовать все известные шаблоны, графический интерфейс или оптимизацию производительности, достаточно будет чтения данных с файла и вывода результата в файл или консоль). Особое внимание будет уделено способности писать код максимально чисто и понятно, используя известные конвенции по написанию кода. Плюсом будет написание модульных тестов. Результатом должен быть zip файл с исходниками, а также Ant или Maven скрипт для сборки и запуска приложения.
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published