fix compiler error in testcases

This commit is contained in:
John Estropia
2019-10-25 16:17:25 +09:00
parent 4baeb6d922
commit e5163d22cb
6 changed files with 23 additions and 13 deletions

View File

@@ -79,7 +79,7 @@ struct ColorsDemo {
static let palettes: ListPublisher<Palette> = { static let palettes: ListPublisher<Palette> = {
return ColorsDemo.stack.listPublisher( return ColorsDemo.stack.publishList(
From<Palette>() From<Palette>()
.sectionBy(\.colorName) .sectionBy(\.colorName)
.orderBy(.ascending(\.hue)) .orderBy(.ascending(\.hue))

View File

@@ -31,7 +31,7 @@ final class SwiftUIContainerViewController: UIViewController {
let hostingController = UIHostingController( let hostingController = UIHostingController(
rootView: SwiftUIView( rootView: SwiftUIView(
palettes: ColorsDemo.stack.listPublisher( palettes: ColorsDemo.stack.publishList(
From<Palette>() From<Palette>()
.sectionBy(\.colorName) .sectionBy(\.colorName)
.orderBy(.ascending(\.hue)) .orderBy(.ascending(\.hue))

View File

@@ -171,7 +171,7 @@ struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View { static var previews: some View {
SwiftUIView( SwiftUIView(
palettes: ColorsDemo.stack.listPublisher( palettes: ColorsDemo.stack.publishList(
From<Palette>() From<Palette>()
.sectionBy(\.colorName) .sectionBy(\.colorName)
.orderBy(.ascending(\.hue)) .orderBy(.ascending(\.hue))

View File

@@ -203,8 +203,8 @@ class ListPublisherTests: BaseTestDataTestCase {
XCTAssertEqual(listPublisher.snapshot.numberOfSections, 2) XCTAssertEqual(listPublisher.snapshot.numberOfSections, 2)
XCTAssertTrue(listPublisher.snapshot.hasItems()) XCTAssertTrue(listPublisher.snapshot.hasItems())
XCTAssertTrue(listPublisher.snapshot.hasItems(inSectionIndex: 0)) XCTAssertTrue(listPublisher.snapshot.hasItems(inSectionIndex: 0))
XCTAssertEqual(listPublisher.snapshot.numberOfItems(inSectionIndex: 0), 2) XCTAssertEqual(listPublisher.snapshot.numberOfItems(inSectionIndex: 0), 1)
XCTAssertEqual(listPublisher.snapshot.numberOfItems(inSectionIndex: 1), 3) XCTAssertEqual(listPublisher.snapshot.numberOfItems(inSectionIndex: 1), 4)
didChangeExpectation.fulfill() didChangeExpectation.fulfill()
} }

View File

@@ -56,8 +56,8 @@ class ObjectPublisherTests: BaseTestDataTestCase {
let didChangeExpectation = self.expectation(description: "didChange") let didChangeExpectation = self.expectation(description: "didChange")
objectPublisher.addObserver(observer) { objectPublisher in objectPublisher.addObserver(observer) { objectPublisher in
XCTAssertEqual(objectPublisher.snapshot?.testNumber, NSNumber(value: 10)) XCTAssertEqual(objectPublisher.object?.testNumber, NSNumber(value: 10))
XCTAssertEqual(objectPublisher.snapshot?.testString, "nil:TestEntity1:10") XCTAssertEqual(objectPublisher.object?.testString, "nil:TestEntity1:10")
didChangeExpectation.fulfill() didChangeExpectation.fulfill()
} }

View File

@@ -120,17 +120,27 @@ extension NSManagedObjectContext {
return (updated: [], deleted: []) return (updated: [], deleted: [])
} }
if userInfo[NSInvalidatedAllObjectsKey] != nil {
let context = notification.object as! NSManagedObjectContext
return (updated: Set(context.registeredObjects.map({ $0.objectID })), deleted: [])
}
var updatedObjectIDs: Set<NSManagedObjectID> = [] var updatedObjectIDs: Set<NSManagedObjectID> = []
if let updatedObjects = userInfo[NSUpdatedObjectsKey] as? Set<NSManagedObjectID> { if let updatedObjects = userInfo[NSUpdatedObjectsKey] as? Set<NSManagedObject> {
updatedObjectIDs.formUnion(updatedObjects) updatedObjectIDs.formUnion(updatedObjects.map({ $0.objectID }))
} }
if let mergedObjects = userInfo[NSRefreshedObjectsKey] as? Set<NSManagedObjectID> { if let mergedObjects = userInfo[NSRefreshedObjectsKey] as? Set<NSManagedObject> {
updatedObjectIDs.formUnion(mergedObjects) updatedObjectIDs.formUnion(mergedObjects.map({ $0.objectID }))
} }
let deletedObjectIDs: Set<NSManagedObjectID> = (userInfo[NSDeletedObjectsKey] as? Set<NSManagedObjectID>) ?? [] if let mergedObjects = userInfo[NSInvalidatedObjectsKey] as? Set<NSManagedObject> {
return (updated: updatedObjectIDs, deleted: deletedObjectIDs)
updatedObjectIDs.formUnion(mergedObjects.map({ $0.objectID }))
}
let deletedObjectIDs: Set<NSManagedObject> = (userInfo[NSDeletedObjectsKey] as? Set<NSManagedObject>) ?? []
return (updated: updatedObjectIDs, deleted: Set(deletedObjectIDs.map({ $0.objectID })))
} }
) )
} }