Files
legado-ios/Tests/LegadoCoreTests/BookRepositoryTests.swift
T

22 lines
839 B
Swift

import Foundation
import Testing
@testable import LegadoCore
struct BookRepositoryTests {
@Test func persistsBooksAtomically() async throws {
let directory = FileManager.default.temporaryDirectory
.appending(path: UUID().uuidString, directoryHint: .isDirectory)
let fileURL = directory.appending(path: "books.json")
defer { try? FileManager.default.removeItem(at: directory) }
let repository = FileBookRepository(fileURL: fileURL)
var book = Book(bookUrl: "https://example.test/book/1", name: "测试书", author: "作者", origin: "https://example.test")
book.durChapterIndex = 3
try await repository.save([book])
let restored = try await repository.load()
#expect(restored == [book])
#expect(restored.first?.durChapterIndex == 3)
}
}