Первый релиз WhisperKey
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
import XCTest
|
||||
@testable import WhisperKey
|
||||
|
||||
final class TextCleanerTests: XCTestCase {
|
||||
func testGlossaryAndFillers() {
|
||||
let result = TextCleaner.clean(
|
||||
"Эм, проверка CompuSegro, pocketbase и caddy, короче, работает.",
|
||||
removeFillers: true,
|
||||
glossary: "CampusAgro, PocketBase, Caddy"
|
||||
)
|
||||
XCTAssertEqual(result, "Проверка CampusAgro, PocketBase и Caddy, работает.")
|
||||
}
|
||||
|
||||
func testPreservesTextWhenFillerRemovalDisabled() {
|
||||
let result = TextCleaner.clean(
|
||||
"Ну вот, PocketBase работает.",
|
||||
removeFillers: false,
|
||||
glossary: "PocketBase"
|
||||
)
|
||||
XCTAssertEqual(result, "Ну вот, PocketBase работает.")
|
||||
}
|
||||
|
||||
func testDropsCommonSilenceHallucinations() {
|
||||
XCTAssertEqual(
|
||||
TextCleaner.clean(
|
||||
"Продолжение следует... Продолжение следует...",
|
||||
removeFillers: true,
|
||||
glossary: ""
|
||||
),
|
||||
""
|
||||
)
|
||||
}
|
||||
|
||||
func testStripsHallucinatedEndingAndAppliesPhoneticAliases() {
|
||||
XCTAssertEqual(
|
||||
TextCleaner.clean(
|
||||
"комп Агро, Покетбейс, Постричь. SQL и Кэдди. Спасибо за просмотр.",
|
||||
removeFillers: true,
|
||||
glossary: "CampusAgro, PocketBase, PostgreSQL, Caddy"
|
||||
),
|
||||
"CampusAgro, PocketBase, PostgreSQL и Caddy"
|
||||
)
|
||||
}
|
||||
|
||||
func testDropsSubtitleCreditHallucination() {
|
||||
XCTAssertEqual(
|
||||
TextCleaner.clean(
|
||||
"Субтитры создавал DimaTorzok",
|
||||
removeFillers: true,
|
||||
glossary: ""
|
||||
),
|
||||
""
|
||||
)
|
||||
}
|
||||
|
||||
func testRemovesEmbeddedSubtitleCreditsWithoutDroppingSpeech() {
|
||||
XCTAssertEqual(
|
||||
TextCleaner.clean(
|
||||
"Ну запускай похуй. Редактор субтитров А.Семкин Корректор А.Егорова Сбор лидов.",
|
||||
removeFillers: true,
|
||||
glossary: ""
|
||||
),
|
||||
"Ну запускай похуй. Сбор лидов."
|
||||
)
|
||||
}
|
||||
|
||||
func testJoinsTechnicalChunksWithoutArtificialSentenceBoundary() {
|
||||
XCTAssertEqual(
|
||||
TranscriptJoiner.prepare(
|
||||
"Модель понимает.",
|
||||
continuesPrevious: true,
|
||||
continuesNext: true,
|
||||
glossary: ""
|
||||
),
|
||||
"модель понимает"
|
||||
)
|
||||
}
|
||||
|
||||
func testPreservesGlossaryCapitalizationWhenJoiningChunks() {
|
||||
XCTAssertEqual(
|
||||
TranscriptJoiner.prepare(
|
||||
"PocketBase работает.",
|
||||
continuesPrevious: true,
|
||||
continuesNext: false,
|
||||
glossary: "CampusAgro, PocketBase, Caddy"
|
||||
),
|
||||
"PocketBase работает."
|
||||
)
|
||||
}
|
||||
|
||||
func testKeepsSentenceStartAfterRealPause() {
|
||||
XCTAssertEqual(
|
||||
TranscriptJoiner.prepare(
|
||||
"Это новое предложение.",
|
||||
continuesPrevious: false,
|
||||
continuesNext: false,
|
||||
glossary: ""
|
||||
),
|
||||
"Это новое предложение."
|
||||
)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user