mirror of
https://github.com/TheAlgorithms/Java.git
synced 2025-07-06 00:54:32 +08:00
64 lines
1.7 KiB
Java
64 lines
1.7 KiB
Java
package com.thealgorithms.searches;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
class KMPSearchTest {
|
|
|
|
@Test
|
|
// valid test case
|
|
public void kmpSearchTestLast() {
|
|
String txt = "ABABDABACDABABCABAB";
|
|
String pat = "ABABCABAB";
|
|
KMPSearch kmpSearch = new KMPSearch();
|
|
int value = kmpSearch.kmpSearch(pat, txt);
|
|
System.out.println(value);
|
|
assertEquals(value, 10);
|
|
}
|
|
|
|
@Test
|
|
// valid test case
|
|
public void kmpSearchTestFront() {
|
|
String txt = "AAAAABAAABA";
|
|
String pat = "AAAA";
|
|
KMPSearch kmpSearch = new KMPSearch();
|
|
int value = kmpSearch.kmpSearch(pat, txt);
|
|
System.out.println(value);
|
|
assertEquals(value, 0);
|
|
}
|
|
|
|
@Test
|
|
// valid test case
|
|
public void kmpSearchTestMiddle() {
|
|
String txt = "AAACAAAAAC";
|
|
String pat = "AAAA";
|
|
KMPSearch kmpSearch = new KMPSearch();
|
|
int value = kmpSearch.kmpSearch(pat, txt);
|
|
System.out.println(value);
|
|
assertEquals(value, 4);
|
|
}
|
|
|
|
@Test
|
|
// valid test case
|
|
public void kmpSearchTestNotFound() {
|
|
String txt = "AAABAAAA";
|
|
String pat = "AAAA";
|
|
KMPSearch kmpSearch = new KMPSearch();
|
|
int value = kmpSearch.kmpSearch(pat, txt);
|
|
System.out.println(value);
|
|
assertEquals(value, 4);
|
|
}
|
|
|
|
@Test
|
|
// not valid test case
|
|
public void kmpSearchTest4() {
|
|
String txt = "AABAAA";
|
|
String pat = "AAAA";
|
|
KMPSearch kmpSearch = new KMPSearch();
|
|
int value = kmpSearch.kmpSearch(pat, txt);
|
|
System.out.println(value);
|
|
assertEquals(value, -1);
|
|
}
|
|
}
|