Improve input validation

This commit is contained in:
RatzzFatzz
2025-12-04 22:09:24 +01:00
parent 0f6bc271b1
commit 9ab417f71d
21 changed files with 239 additions and 177 deletions

View File

@@ -1,6 +1,6 @@
package at.pcgamingfreaks.mkvaudiosubtitlechanger.impl;
import at.pcgamingfreaks.mkvaudiosubtitlechanger.config.Config;
import at.pcgamingfreaks.mkvaudiosubtitlechanger.config.InputConfig;
import at.pcgamingfreaks.mkvaudiosubtitlechanger.util.DateUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.extension.ExtendWith;
@@ -57,8 +57,8 @@ class FileFilterTest {
when(file.getName()).thenReturn(List.of(path.split("/")).get(1));
when(file.toPath()).thenReturn(Path.of(TEST_FILE));
Config.getInstance(true).setIncludePattern(Pattern.compile(pattern));
if (filterDate != null) Config.getInstance().setFilterDate(filterDate);
InputConfig.getInstance(true).setIncludePattern(Pattern.compile(pattern));
if (filterDate != null) InputConfig.getInstance().setFilterDate(filterDate);
try (MockedStatic<DateUtils> mockedFiles = Mockito.mockStatic(DateUtils.class)) {
mockedFiles

View File

@@ -1,6 +1,6 @@
package at.pcgamingfreaks.mkvaudiosubtitlechanger.impl;
import at.pcgamingfreaks.mkvaudiosubtitlechanger.config.Config;
import at.pcgamingfreaks.mkvaudiosubtitlechanger.config.InputConfig;
import at.pcgamingfreaks.mkvaudiosubtitlechanger.model.AttributeConfig;
import at.pcgamingfreaks.mkvaudiosubtitlechanger.model.FileAttribute;
import at.pcgamingfreaks.mkvaudiosubtitlechanger.model.FileInfo;
@@ -30,7 +30,7 @@ class MkvFileProcessorTest {
@ParameterizedTest
@MethodSource
void detectDesiredTracks(AttributeConfig expectedMatch, List<FileAttribute> tracks, AttributeConfig... configs) {
Config.getInstance().setPreferredSubtitles(Set.of());
InputConfig.getInstance().setPreferredSubtitles(Set.of());
FileInfo info = new FileInfo(null);
MkvFileProcessor processor = new MkvFileProcessor();
processor.detectDesiredTracks(info, tracks, tracks, configs);
@@ -52,8 +52,8 @@ class MkvFileProcessorTest {
@ParameterizedTest
@MethodSource
void retrieveNonForcedTracks(List<FileAttribute> attributes, List<FileAttribute> expected) {
Config.getInstance().setPreferredSubtitles(Set.of());
Config.getInstance().setForcedKeywords(Set.of("forced"));
InputConfig.getInstance().setPreferredSubtitles(Set.of());
InputConfig.getInstance().setForcedKeywords(Set.of("forced"));
MkvFileProcessor processor = new MkvFileProcessor();
List<FileAttribute> actual = processor.retrieveNonForcedTracks(attributes);
@@ -77,8 +77,8 @@ class MkvFileProcessorTest {
@ParameterizedTest
@MethodSource
void retrieveNonCommentaryTracks(List<FileAttribute> attributes, List<FileAttribute> expected) {
Config.getInstance().setPreferredSubtitles(Set.of());
Config.getInstance().setCommentaryKeywords(Set.of("commentary"));
InputConfig.getInstance().setPreferredSubtitles(Set.of());
InputConfig.getInstance().setCommentaryKeywords(Set.of("commentary"));
MkvFileProcessor processor = new MkvFileProcessor();
List<FileAttribute> actual = processor.retrieveNonCommentaryTracks(attributes);