Skip to content

Commit e8a2f0b

Browse files
authored
Merge pull request #8 from paledmi-java/PavelLeonovTeamLead
Pavel leonov team lead
2 parents f8f0d0f + 0db9ad0 commit e8a2f0b

File tree

7 files changed

+32
-42
lines changed

7 files changed

+32
-42
lines changed

savedData.txt

Lines changed: 6 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,8 @@
1+
Client{name='Иван', phoneNumber='+79991234567', idNumber=2}
2+
Client{name='Пётр', phoneNumber='+79997654321', idNumber=1}
13

2-
Client{name='Андреева Дарья', phoneNumber='+79384195474', idNumber=999}
3-
Client{name='Анжела Викторовна Блохина', phoneNumber='+79296568824', idNumber=661}
4-
Client{name='Анжелика Кошелева', phoneNumber='+79804707713', idNumber=78}
5-
Client{name='Антон Воронов', phoneNumber='+79938685129', idNumber=262}
6-
Client{name='Аркадий Игнатьевич Тихонов', phoneNumber='+79337132205', idNumber=23}
7-
Client{name='Бобылев Вячеслав', phoneNumber='+79549089324', idNumber=573}
8-
Client{name='Большаков Матвей Эдуардович', phoneNumber='+79051246042', idNumber=591}
9-
Client{name='Василиса Антоновна Лапина', phoneNumber='+79971387677', idNumber=853}
10-
Client{name='Вера Артёмовна Капустина', phoneNumber='+79591168118', idNumber=461}
11-
Client{name='Вероника Моисеева', phoneNumber='+79058575995', idNumber=889}
12-
Client{name='Виктор Леонидович Зиновьев', phoneNumber='+79272614762', idNumber=627}
13-
Client{name='Гаврилова Алла Владимировна', phoneNumber='+79303034501', idNumber=387}
14-
Client{name='Екатерина Филатова', phoneNumber='+79524244998', idNumber=669}
15-
Client{name='Ефремова Ольга Вячеславовна', phoneNumber='+79201039302', idNumber=778}
16-
Client{name='Игнатий Ильич Антонов', phoneNumber='+79946035137', idNumber=829}
17-
Client{name='Игнатьева Зинаида Вячеславовна', phoneNumber='+79468715374', idNumber=813}
18-
Client{name='Кулагин Дмитрий', phoneNumber='+79019463584', idNumber=93}
19-
Client{name='Лаврентьев Вячеслав Сергеевич', phoneNumber='+79639495445', idNumber=459}
20-
Client{name='Маргарита Викторовна Кузьмина', phoneNumber='+79571424972', idNumber=549}
21-
Client{name='Медведева Валентина', phoneNumber='+79282932301', idNumber=594}
22-
Client{name='Мухина Алина Сергеевна', phoneNumber='+79841015291', idNumber=296}
23-
Client{name='Мухина Раиса Валентиновна', phoneNumber='+79204742853', idNumber=512}
24-
Client{name='Оксана Кулагина', phoneNumber='+79538510155', idNumber=860}
25-
Client{name='Панфилова Арина', phoneNumber='+79678575110', idNumber=927}
26-
Client{name='Попов Роман Евгеньевич', phoneNumber='+79392077705', idNumber=996}
27-
Client{name='Русакова Валентина', phoneNumber='+79499915311', idNumber=3}
28-
Client{name='Субботина Евгения', phoneNumber='+79883134731', idNumber=275}
29-
Client{name='Фадеев Игорь Даниилович', phoneNumber='+79907800005', idNumber=194}
30-
Client{name='Фокин Матвей Витальевич', phoneNumber='+79274394409', idNumber=933}
31-
Client{name='Шаров Юрий', phoneNumber='+79408809462', idNumber=699}
4+
Client{name='Алексей', phoneNumber='+79994444444', idNumber=6}
5+
Client{name='Сергей', phoneNumber='+79993333333', idNumber=5}
6+
7+
Client{name='ВыводТест', phoneNumber='+71111111111', idNumber=77}
328

src/main/java/input/strategy/FileReaderStrategy.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,11 @@ public Optional<Client.ClientBuilder> parseToClient(String line) {
117117
return Optional.empty();
118118
}
119119

120+
if (!name.matches("^([А-ЯЁ][а-яё]+\\s){1,2}[А-ЯЁ][а-яё]+$")) {
121+
System.out.println("Неверный формат имени " + line);
122+
return Optional.empty();
123+
}
124+
120125
if (!phoneNumber.matches("^\\+7\\d{10}$")) {
121126
System.out.println("Неверный формат номера телефона в строке: " + line);
122127
return Optional.empty();

src/main/java/input/strategy/ManualInputReaderStrategy.java

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -129,10 +129,19 @@ private Client inputClient(int clientNumber) {
129129
}
130130

131131
private String promptForName() {
132-
try {
133-
return promptForString("Введите имя", true);
134-
} catch (StopInputException e) {
135-
throw e;
132+
while (true) {
133+
try {
134+
String name = promptForString("Введите имя", true);
135+
136+
if (name.matches("^([А-ЯЁ][а-яё]+\\s){1,2}[А-ЯЁ][а-яё]+$")) {
137+
return name.trim().replaceAll("\\s+", " ");
138+
} else {
139+
System.out.println("Неверный формат! Используйте: Фамилия Имя или Фамилия Имя Отчество");
140+
}
141+
142+
} catch (StopInputException e) {
143+
throw e;
144+
}
136145
}
137146
}
138147

src/test/java/input/strategy/ManualInputReaderStrategyTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ void testGetDataStopsAtLimitOf1000Clients() throws IOException {
175175
StringBuilder inputBuilder = new StringBuilder();
176176
for (int i = 0; i < 1000; i++) {
177177
inputBuilder.append("да\n");
178-
inputBuilder.append("Клиент ").append(i).append("\n");
178+
inputBuilder.append("Иван Иванов").append("\n");
179179
inputBuilder.append("+7").append(String.format("%010d", i)).append("\n");
180180
inputBuilder.append(i).append("\n");
181181
inputBuilder.append("да\n");

src/test/java/userInterface/AppControllerTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,8 @@ void testStartFileReaderStrategy() {
100100

101101
File testFile = new File("test_clients.txt");
102102
try (BufferedWriter writer = new BufferedWriter(new FileWriter(testFile))) {
103-
writer.write("Алексей|+79991112233|1\n");
104-
writer.write("Мария|+79992223344|2\n");
103+
writer.write("Алексей Петров|+79991112233|1\n");
104+
writer.write("Мария Иванова|+79992223344|2\n");
105105
} catch (Exception e){
106106
throw new RuntimeException(e);
107107
}

test_clients.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
Алексей|+79991112233|1
2-
Мария|+79992223344|2
1+
Алексей Петров|+79991112233|1
2+
Мария Иванова|+79992223344|2

wrongTestfile_clients.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
Шаров Юрий;+79408809462;699
2-
Кулагин Дмитрий;+79019463584;93
3-
Мухина Раиса Валентиновна;+79204742853;512
1+
Шаров 1234|+79408809462|699
2+
5834934 Дмитрий|+79019463584|93
3+
14289191248412 241882412|+79204742853|512
44
Мухина Алина Сергеевна;+79841015291;296
55
Аркадий Игнатьевич Тихонов;+79337132205;23
66
Большаков Матвей Эдуардович;+79051246042;591

0 commit comments

Comments
 (0)