/
monzikov
/
past-solution
Обзор
Документация
Войти
/
monzikov
/
past-solution
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/test/java/edu/mai/pastsolution/LcsSimilarityTest.java
95 строк
3 KB
Yuri Monzikov
add past-solution code
04 июл 2026, 14:38
04 июл 2026, 14:38
1516693
Код
Авторство
О чём код?
package edu.mai.pastsolution; import org.junit.jupiter.api.Test; import java.util.List; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; class LcsSimilarityTest { private final LcsSimilarity lcsSimilarity = new LcsSimilarity(); @Test void getAllSubstringsShouldReturnEmptySetWhenStringIsNull() { List<String> result = lcsSimilarity.getAllSubstrings(null); assertTrue(result.isEmpty()); } @Test void getAllSubstringsShouldReturnEmptySetWhenStringIsEmpty() { List<String> result = lcsSimilarity.getAllSubstrings(""); assertTrue(result.isEmpty()); } @Test void getAllSubstringsShouldReturnAllSubstringsForSimpleString() { List<String> result = lcsSimilarity.getAllSubstrings("ABC"); assertEquals( List.of("ABC", "AB","AC", "BC","A", "B", "C"), result ); } @Test void getAllSubstringsShouldReturnUniqueSubstrings() { List<String> result = lcsSimilarity.getAllSubstrings("AAA"); assertEquals( List.of("AAA", "AA", "A"), result ); } @Test void calculateSimilarityShouldReturnZeroWhenFirstStringIsNull() { double result = lcsSimilarity.calculateSimilarity(null, "ABC"); assertEquals(0.0, result); } @Test void calculateSimilarityShouldReturnZeroWhenSecondStringIsNull() { double result = lcsSimilarity.calculateSimilarity("ABC", null); assertEquals(0.0, result); } @Test void calculateSimilarityShouldReturnOneWhenBothStringsAreEmpty() { double result = lcsSimilarity.calculateSimilarity("", ""); assertEquals(1.0, result); } @Test void calculateSimilarityShouldReturnOneForEqualStrings() { double result = lcsSimilarity.calculateSimilarity("ABC", "ABC"); assertEquals(1.0, result); } @Test void calculateSimilarityShouldReturnZeroForDifferentStrings() { double result = lcsSimilarity.calculateSimilarity("ABC", "XYZ"); assertEquals(0.0, result); } @Test void calculateSimilarityShouldReturnPartialSimilarity() { double result = lcsSimilarity.calculateSimilarity("ABCDEF", "ACE"); assertEquals(0.5, result); } @Test void calculateSimilarityShouldReturnPartialSimilarityForDifferentLengths() { double result = lcsSimilarity.calculateSimilarity("AGGTAB", "GXTXAYB"); assertEquals(4.0 / 7.0, result, 0.000001); } }