Интерфейсы
HelloUDPClient
должен реализовывать интерфейс HelloClientHelloUDPServer
должен реализовывать интерфейс HelloServer
Тестирование
- простой вариант:
- клиент:
info.kgeorgiy.java.advanced.hello client <полное имя класса>
- сервер:
info.kgeorgiy.java.advanced.hello server <полное имя класса>
- клиент:
- сложный вариант:
- на противоположной стороне находится система, дающая ответы на различных языках
- клиент:
info.kgeorgiy.java.advanced.hello client-i18n <полное имя класса>
- сервер:
info.kgeorgiy.java.advanced.hello server-i18n <полное имя класса>
- продвинутый вариант:
- на противоположной стороне находится старая система, не полностью соответствующая последней версии спецификации
- клиент:
info.kgeorgiy.java.advanced.hello client-evil <полное имя класса>
- сервер:
info.kgeorgiy.java.advanced.hello server-evil <полное имя класса>
Тестирование
- простой вариант:
info.kgeorgiy.java.advanced.crawler easy <полное имя класса>
- сложный вариант:
info.kgeorgiy.java.advanced.crawler hard <полное имя класса>
- продвинутый вариант: интерфейс
info.kgeorgiy.java.advanced.crawler advanced <полное имя класса>
Исходный код тестов:
Тестирование
- простой вариант:
info.kgeorgiy.java.advanced.mapper scalar <полное имя класса>
- сложный вариант:
info.kgeorgiy.java.advanced.mapper list <полное имя класса>
- продвинутый вариант:
info.kgeorgiy.java.advanced.mapper advanced <полное имя класса>
Исходный код тестов:
Тестирование
-
простой вариант:
info.kgeorgiy.java.advanced.concurrent scalar <полное имя класса>
Класс должен реализовывать интерфейс ScalarIP.
-
сложный вариант:
info.kgeorgiy.java.advanced.concurrent list <полное имя класса>
Класс должен реализовывать интерфейс ListIP.
-
продвинутый вариант:
info.kgeorgiy.java.advanced.concurrent advanced <полное имя класса>
Класс должен реализовывать интерфейс AdvancedIP.
Исходный код тестов:
Класс Implementor
должен дополнительно реализовывать интерфейс
JarImpler.
Исходный код
- простой вариант (
jar-interface
): тесты - сложный вариант (
jar-class
): тесты - продвинутый вариант (
jar-advanced
): тесты
Тестовый модуль: info.kgeorgiy.java.advanced.implementor
Класс Implementor
должен реализовывать интерфейс
Impler.
Исходный код
- простой вариант (
interface
): тесты - сложный вариант (
class
): тесты - продвинутый вариант (
advanced
): тесты - предварительные тесты бонусного варианта (
covariant
): тесты
Тестовый модуль: info.kgeorgiy.java.advanced.implementor
Исходный код
- простой вариант (
StudentQuery
): интерфейс, тесты - сложный вариант (
GroupQuery
): интерфейс, тесты - продвинутый вариант (
AdvancedQuery
): интерфейс, тесты
Тестовый модуль: info.kgeorgiy.java.advanced.student
Исходный код
- простой вариант (
SortedSet
): тесты - сложный вариант (
NavigableSet
): тесты - продвинутый вариант (
AdvancedSet
): тесты
Тестовый модуль: info.kgeorgiy.java.advanced.arrayset
Исходный код
- простой вариант (
Walk
): тесты - сложный вариант (
RecursiveWalk
): тесты - продвинутый вариант (
AdvancedWalk
): должный проходить тесты от простого и с ложного вариантов
Тестовый модуль: info.kgeorgiy.java.advanced.walk
Для того, чтобы протестировать программу:
- Скачайте
- тесты
- базовый модуль
- тестовый модуль (свой для каждого ДЗ)
- библиотеки
- тесты
- Откомпилируйте решение домашнего задания
- Протестируйте домашнее задание
- Текущая директория должна:
- содержать все скачанные
.jar
файлы; - содержать скомпилированное решение;
- не содержать скомпилированные самостоятельно тесты.
- содержать все скачанные
- Запустите тесты:
java -cp . -p . -m <тестовый модуль> <вариант> <полное имя класса>
- Пример для простого варианта ДЗ-1:
java -cp . -p . -m info.kgeorgiy.java.advanced.walk Walk <полное имя класса>
- Текущая директория должна: