guardia-messenger/node_modules/expo-modules-core/ios/Tests/PersistentFileLogSpec.swift
DESKTOP-TKLFCPRython f29f525c77 refactor: 101.79.17.164 → zioinfo.co.kr 전체 도메인 변환 + Manager UI 배포
- 37개 파일 IP → zioinfo.co.kr 치환 (소스/매뉴얼/설정/하네스)
- Manager DrConsole/NetworkConsole/CsapConsole 빌드 + /var/www/manager/ 배포
- 테스트: Manager HTTP 200, ITSM 신규 API 7개 전체 200

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-31 10:09:17 +09:00

74 lines
2.2 KiB
Swift

import ExpoModulesTestCore
@testable import ExpoModulesCore
class PersistentFileLogSpec: ExpoSpec {
override class func spec() {
let log = PersistentFileLog(category: "dev.expo.modules.test.persistentlog")
beforeEach {
self.clearEntriesSync(log: log)
}
it("cleared file has 0 entries") {
let entries = log.readEntries()
expect(entries.count).to(equal(0))
}
it("append one entry works") {
appendEntrySync(log: log, entry: "Test string 1")
let entries = log.readEntries()
expect(entries).notTo(beNil())
expect(entries.count).to(equal(1))
expect(entries[0]).to(equal("Test string 1"))
}
it("append three entries works") {
appendEntrySync(log: log, entry: "Test string 1")
appendEntrySync(log: log, entry: "Test string 2")
appendEntrySync(log: log, entry: "Test string 3")
let entries = log.readEntries()
expect(entries.count).to(equal(3))
expect(entries[0]).to(equal("Test string 1"))
expect(entries[1]).to(equal("Test string 2"))
}
it("filter entries works") {
appendEntrySync(log: log, entry: "Test string 1")
appendEntrySync(log: log, entry: "Test string 2")
appendEntrySync(log: log, entry: "Test string 3")
filterEntriesSync(log: log) { entry in
entry.contains("2")
}
let entries = log.readEntries()
expect(entries).notTo(beNil())
expect(entries.count).to(equal(1))
expect(entries[0]).to(equal("Test string 2"))
}
}
static func clearEntriesSync(log: PersistentFileLog) {
var didClear = false
log.clearEntries { _ in
didClear = true
}
expect(didClear).toEventually(beTrue(), timeout: .milliseconds(500))
}
static func filterEntriesSync(log: PersistentFileLog, filter: @escaping PersistentFileLogFilter) {
var didPurge = false
log.purgeEntriesNotMatchingFilter(filter: filter) { _ in
didPurge = true
}
expect(didPurge).toEventually(beTrue(), timeout: .milliseconds(500))
}
static func appendEntrySync(log: PersistentFileLog, entry: String) {
var didAppend = false
log.appendEntry(entry: entry) { _ in
didAppend = true
}
expect(didAppend).toEventually(beTrue(), timeout: .milliseconds(500))
}
}