fix: update tests

This commit is contained in:
Miwa / Ensan
2025-06-01 21:02:27 +09:00
parent 750d9f87e4
commit 53cb1e3b41
3 changed files with 52 additions and 33 deletions

View File

@ -11,15 +11,36 @@ import XCTest
final class LearningMemoryTests: XCTestCase {
static let resourceURL = Bundle.module.resourceURL!.appendingPathComponent("DictionaryMock", isDirectory: true)
private func getOptionsForMemoryTest(memoryDirectoryURL: URL) -> ConvertRequestOptions {
var options = ConvertRequestOptions.default
options.memoryDirectoryURL = memoryDirectoryURL
options.dictionaryResourceURL = Self.resourceURL
options.learningType = .inputAndOutput
options.maxMemoryCount = 32
return options
}
func testPauseFileIsClearedOnInit() throws {
let dir = ConvertRequestOptions.default.memoryDirectoryURL
try? FileManager.default.createDirectory(at: dir, withIntermediateDirectories: true)
let dir = FileManager.default.temporaryDirectory.appendingPathComponent("LearningMemoryTest-\(UUID().uuidString)", isDirectory: true)
try FileManager.default.createDirectory(at: dir, withIntermediateDirectories: true)
defer { try? FileManager.default.removeItem(at: dir) }
let options = self.getOptionsForMemoryTest(memoryDirectoryURL: dir)
let manager = LearningManager()
_ = manager.setRequestOptions(options)
let element = DicdataElement(word: "テスト", ruby: "テスト", cid: CIDData..cid, mid: MIDData..mid, value: -10)
manager.update(data: [element])
manager.save()
//
let pauseURL = dir.appendingPathComponent(".pause", isDirectory: false)
FileManager.default.createFile(atPath: pauseURL.path, contents: Data())
XCTAssertTrue(LongTermLearningMemory.memoryCollapsed(directoryURL: dir))
// `init`
_ = LearningManager()
//
_ = manager.setRequestOptions(options)
//
XCTAssertFalse(LongTermLearningMemory.memoryCollapsed(directoryURL: dir))
try? FileManager.default.removeItem(at: pauseURL)
@ -30,13 +51,9 @@ final class LearningMemoryTests: XCTestCase {
try FileManager.default.createDirectory(at: dir, withIntermediateDirectories: true)
defer { try? FileManager.default.removeItem(at: dir) }
let options = self.getOptionsForMemoryTest(memoryDirectoryURL: dir)
let manager = LearningManager()
var options = ConvertRequestOptions.default
options.dictionaryResourceURL = Self.resourceURL
options.memoryDirectoryURL = dir
options.learningType = .inputAndOutput
options.maxMemoryCount = 32
_ = manager.setRequestOptions(options: options)
_ = manager.setRequestOptions(options)
let element = DicdataElement(word: "テスト", ruby: "テスト", cid: CIDData..cid, mid: MIDData..mid, value: -10)
manager.update(data: [element])