Save automatically, improve mocks
This commit is contained in:
@ -60,6 +60,10 @@ final class Post: Item, DateItem, LocalizedItem {
|
||||
super.init(content: content, id: id)
|
||||
}
|
||||
|
||||
// MARK: Storage
|
||||
|
||||
var savedData: Data?
|
||||
|
||||
// MARK: Tags
|
||||
|
||||
func usedTags() -> [Tag] {
|
||||
@ -173,7 +177,7 @@ final class Post: Item, DateItem, LocalizedItem {
|
||||
}
|
||||
}
|
||||
|
||||
extension Post {
|
||||
extension Post: StorageItem {
|
||||
|
||||
convenience init(context: LoadingContext, id: String, data: Data) {
|
||||
self.init(
|
||||
@ -187,9 +191,10 @@ extension Post {
|
||||
german: .init(context: context, data: data.german),
|
||||
english: .init(context: context, data: data.english),
|
||||
linkedPage: data.linkedPageId.map(context.page))
|
||||
savedData = data
|
||||
}
|
||||
|
||||
struct Data: Codable {
|
||||
struct Data: Codable, Equatable {
|
||||
let isDraft: Bool
|
||||
let createdDate: Date
|
||||
let startDate: Date
|
||||
@ -211,4 +216,8 @@ extension Post {
|
||||
english: english.data,
|
||||
linkedPageId: linkedPage?.id)
|
||||
}
|
||||
|
||||
func saveToDisk(_ data: Data) -> Bool {
|
||||
content.storage.save(post: data, for: id)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user