Skip to content

Commit 2762463

Browse files
committed
test(diagnostics): улучшены тесты MagicDateDiagnosticTest с добавлением комментариев и улучшением читаемости
- Добавлены комментарии к тестам для лучшего понимания их целей. - Упрощены утверждения в тестах, убраны избыточные комментарии. - Обновлены проверки диапазонов для различных форматов дат и присваиваний, обеспечивая полное покрытие тестовых случаев.
1 parent 3417507 commit 2762463

File tree

1 file changed

+58
-51
lines changed

1 file changed

+58
-51
lines changed

src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MagicDateDiagnosticTest.java

Lines changed: 58 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -82,56 +82,61 @@ void testConfigure() {
8282
.hasRange(65, 22, 32);
8383
}
8484

85+
/**
86+
* Тест для проверки различных форматов дат.
87+
* Проверяет, что невалидные даты генерируют диагностики.
88+
*/
8589
@Test
8690
void testValidDateFormats() {
87-
// Тест для проверки различных форматов дат
8891
List<Diagnostic> diagnostics = getDiagnostics();
8992

90-
// Проверяем, что невалидные даты генерируют диагностики
9193
assertThat(diagnostics, true)
92-
.hasRange(11, 12, 22) // "00020101" - должна быть диагностика
93-
.hasRange(12, 12, 28) // "00020101121314" - должна быть диагностика
94-
.hasRange(13, 7, 17) // '00010102' - должна быть диагностика
95-
.hasRange(14, 14, 24); // '12340101' - должна быть диагностика
94+
.hasRange(11, 12, 22)
95+
.hasRange(12, 12, 28)
96+
.hasRange(13, 7, 17)
97+
.hasRange(14, 14, 24);
9698
}
9799

100+
/**
101+
* Тест для проверки исключенных дат (авторизованных).
102+
* Проверяет, что авторизованные даты не генерируют диагностики.
103+
* Авторизованная дата не должна генерировать диагностику.
104+
* Невалидный формат не должен генерировать диагностику.
105+
*/
98106
@Test
99107
void testExcludedDates() {
100-
// Тест для проверки исключенных дат (авторизованных)
101108
List<Diagnostic> diagnostics = getDiagnostics();
102109

103-
// Проверяем, что авторизованные даты не генерируют диагностики
104-
// Строка 22: Дата("00010101") - авторизованная дата, не должна генерировать диагностику
105-
// Строка 23: '0001-01why not?01' - невалидный формат, не должна генерировать диагностику
106110
assertThat(diagnostics, true)
107-
.hasRange(23, 7, 26); // '0001-01why not?02' - должна быть диагностика
111+
.hasRange(23, 7, 26);
108112
}
109113

114+
/**
115+
* Тест для проверки подавления диагностики при простом присваивании даты.
116+
* Проверяет, что присваивания дат генерируют диагностики.
117+
*/
110118
@Test
111119
void testSimpleDateAssignment() {
112-
// Тест для проверки подавления диагностики при простом присваивании даты
113120
List<Diagnostic> diagnostics = getDiagnostics();
114121

115-
// Проверяем, что присваивания дат генерируют диагностики
116122
assertThat(diagnostics, true)
117-
.hasRange(11, 12, 22) // День = Дата("00020101");
118-
.hasRange(12, 12, 28) // День = Дата("00020101121314") + Шаг;
119-
.hasRange(13, 7, 17); // День = '00010102' + Шаг;
123+
.hasRange(11, 12, 22)
124+
.hasRange(12, 12, 28)
125+
.hasRange(13, 7, 17);
120126
}
121127

128+
/**
129+
* Тест для проверки подавления диагностики при возврате даты из функции.
130+
* Проверяет, что возврат дат из функций НЕ генерирует диагностики.
131+
* Возврат дат не должен генерировать диагностики.
132+
* Это проверяется отсутствием диагностик в этих строках.
133+
*/
122134
@Test
123135
void testReturnSimpleDate() {
124-
// Тест для проверки подавления диагностики при возврате даты из функции
125136
List<Diagnostic> diagnostics = getDiagnostics();
126137

127-
// Проверяем, что возврат дат из функций НЕ генерирует диагностики
128-
// Строки 2 и 6: Возврат '39991231235959' и '99990101000000' - не должны генерировать диагностики
129-
// Это проверяется отсутствием диагностик в этих строках
130-
131-
// Проверяем, что общее количество диагностик соответствует ожидаемому
132138
assertThat(diagnostics).hasSize(17);
133139

134-
// Проверяем, что диагностики есть в других местах, но НЕ в строках с возвратом дат
135140
assertThat(diagnostics, true)
136141
.hasRange(11, 12, 22)
137142
.hasRange(12, 12, 28)
@@ -152,48 +157,50 @@ void testReturnSimpleDate() {
152157
.hasRange(65, 22, 32);
153158
}
154159

160+
/**
161+
* Тест для проверки подавления диагностики при присваивании с методом Дата().
162+
* Проверяет, что присваивания с методом Дата() генерируют диагностики.
163+
*/
155164
@Test
156165
void testAssignmentWithDateMethod() {
157-
// Тест для проверки подавления диагностики при присваивании с методом Дата()
158166
List<Diagnostic> diagnostics = getDiagnostics();
159167

160-
// Проверяем, что присваивания с методом Дата() генерируют диагностики
161168
assertThat(diagnostics, true)
162-
.hasRange(11, 12, 22) // День = Дата("00020101");
163-
.hasRange(12, 12, 28) // День = Дата("00020101121314") + Шаг;
164-
.hasRange(25, 87, 97) // ИменаПараметров = ... Дата("00050101")
165-
.hasRange(26, 80, 90) // ИменаПараметров = ... "00050101", "00050101"
169+
.hasRange(11, 12, 22)
170+
.hasRange(12, 12, 28)
171+
.hasRange(25, 87, 97)
172+
.hasRange(26, 80, 90)
166173
.hasRange(26, 92, 102);
167174
}
168175

176+
/**
177+
* Тест для проверки подавления диагностики при присваивании свойства структуры.
178+
* Проверяет, что диагностика подавлена при присваивании свойства структуры.
179+
* Присваивание свойства структуры не должно генерировать диагностику.
180+
*/
169181
@Test
170182
void testStructurePropertyAssignment() {
171-
// Тест для проверки подавления диагностики при присваивании свойства структуры
172-
// Используем существующий файл с тестовыми данными
173183
List<Diagnostic> diagnostics = getDiagnostics();
174184

175-
// Проверяем, что диагностика на строке 30 подавлена (не входит в список)
176-
// Строка 30: Выполнить("00020501121314" + '12350101') - присваивание свойства структуры
177185
assertThat(diagnostics, true)
178-
.hasRange(11, 12, 22) // День = Дата("00020101");
179-
.hasRange(12, 12, 28) // День = Дата("00020101121314") + Шаг;
180-
.hasRange(13, 7, 17) // День = '00010102' + Шаг;
181-
.hasRange(14, 14, 24) // Пока Сейчас < '12340101' Цикл
182-
.hasRange(23, 7, 26) // День = '0001-01why not?02' + Шаг;
183-
.hasRange(25, 87, 97) // ИменаПараметров = ... Дата("00050101")
184-
.hasRange(26, 80, 90) // ИменаПараметров = ... "00050101", "00050101"
185-
.hasRange(26, 92, 102) // ИменаПараметров = ... "00050101", "00050101"
186-
.hasRange(27, 22, 32) // Настройки = Настройки('12350101');
187-
.hasRange(28, 19, 35) // Настройки.Свойство("00020501121314", ...)
188-
.hasRange(29, 10, 26) // Выполнить("00020501121314" + '12350101')
189-
.hasRange(29, 29, 39) // Выполнить("00020501121314" + '12350101')
190-
.hasRange(58, 17, 27) // Значение = ?(А = '39990202', ...)
191-
.hasRange(58, 29, 45) // Значение = ?(А = '39990202', ...)
192-
.hasRange(58, 47, 63) // Значение = ?(А = '39990202', ...)
193-
.hasRange(60, 19, 29) // Если Сейчас < Дата("12340101") Тогда
194-
.hasRange(65, 22, 32); // Функция Метод(Дата1 = '39990202')
186+
.hasRange(11, 12, 22)
187+
.hasRange(12, 12, 28)
188+
.hasRange(13, 7, 17)
189+
.hasRange(14, 14, 24)
190+
.hasRange(23, 7, 26)
191+
.hasRange(25, 87, 97)
192+
.hasRange(26, 80, 90)
193+
.hasRange(26, 92, 102)
194+
.hasRange(27, 22, 32)
195+
.hasRange(28, 19, 35)
196+
.hasRange(29, 10, 26)
197+
.hasRange(29, 29, 39)
198+
.hasRange(58, 17, 27)
199+
.hasRange(58, 29, 45)
200+
.hasRange(58, 47, 63)
201+
.hasRange(60, 19, 29)
202+
.hasRange(65, 22, 32);
195203

196-
// Проверяем, что общее количество диагностик равно 17 (без изменений)
197204
assertThat(diagnostics).hasSize(17);
198205
}
199206

0 commit comments

Comments
 (0)