37 lines
1.3 KiB
Java
37 lines
1.3 KiB
Java
package com.svnlog.web.service;
|
|
|
|
import java.nio.charset.StandardCharsets;
|
|
import java.nio.file.Files;
|
|
import java.nio.file.Path;
|
|
import java.util.Arrays;
|
|
import java.util.Collections;
|
|
|
|
import org.junit.jupiter.api.Assertions;
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
public class AiInputValidatorTest {
|
|
|
|
@Test
|
|
public void shouldRejectEmptyListWhenValidatingInputFiles() {
|
|
AiInputValidator validator = new AiInputValidator();
|
|
Assertions.assertThrows(IllegalArgumentException.class, () -> validator.validate(Collections.<Path>emptyList()));
|
|
}
|
|
|
|
@Test
|
|
public void shouldRejectNonMarkdownFileWhenValidatingInputFiles() throws Exception {
|
|
AiInputValidator validator = new AiInputValidator();
|
|
Path temp = Files.createTempFile("ai-input", ".txt");
|
|
Files.write(temp, "abc".getBytes(StandardCharsets.UTF_8));
|
|
Assertions.assertThrows(IllegalArgumentException.class, () -> validator.validate(Arrays.asList(temp)));
|
|
}
|
|
|
|
@Test
|
|
public void shouldAcceptSmallMarkdownFilesWhenValidatingInputFiles() throws Exception {
|
|
AiInputValidator validator = new AiInputValidator();
|
|
Path temp = Files.createTempFile("ai-input", ".md");
|
|
Files.write(temp, "# title".getBytes(StandardCharsets.UTF_8));
|
|
validator.validate(Arrays.asList(temp));
|
|
Assertions.assertTrue(true);
|
|
}
|
|
}
|