Skip to content

Commit 5e0420f

Browse files
committed
Don't override designated initializer
1 parent 0cae0c6 commit 5e0420f

File tree

2 files changed

+36
-39
lines changed

2 files changed

+36
-39
lines changed

swift-sdk/Internal/IterableCoreDataPersistence.swift

Lines changed: 12 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,15 @@ enum PersistenceConst {
2222
}
2323

2424
let sharedManagedObjectModel: NSManagedObjectModel? = {
25-
guard let url = PersistentContainer.dataModelUrl(fromBundles: [Bundle.main, Bundle(for: PersistentContainer.self)]) else {
25+
let firstBundleURL: URL? = [Bundle.main, Bundle(for: PersistentContainer.self)].lazy.compactMap { bundle in
26+
ResourceHelper.url(
27+
forResource: PersistenceConst.dataModelFileName,
28+
withExtension: PersistenceConst.dataModelExtension,
29+
fromBundle: bundle
30+
)
31+
}.first
32+
33+
guard let url = firstBundleURL else {
2634
ITBError("Could not find \(PersistenceConst.dataModelFileName).\(PersistenceConst.dataModelExtension) in bundle")
2735
return nil
2836
}
@@ -39,30 +47,16 @@ final class PersistentContainer: NSPersistentContainer, @unchecked Sendable {
3947
return backgroundContext
4048
}
4149

42-
override init(
43-
name: String = PersistenceConst.dataModelFileName,
44-
managedObjectModel: NSManagedObjectModel? = sharedManagedObjectModel
45-
) {
46-
if let managedObjectModel {
50+
init() {
51+
let name = PersistenceConst.dataModelFileName
52+
if let managedObjectModel = sharedManagedObjectModel {
4753
super.init(name: name, managedObjectModel: managedObjectModel)
4854
} else {
4955
super.init(name: name)
5056
}
5157
viewContext.automaticallyMergesChangesFromParent = true
5258
viewContext.mergePolicy = NSMergePolicy(merge: NSMergePolicyType.mergeByPropertyStoreTrumpMergePolicyType)
5359
}
54-
55-
static func dataModelUrl(fromBundles bundles: [Bundle]) -> URL? {
56-
bundles.lazy.compactMap(dataModelUrl(fromBundle:)).first
57-
}
58-
59-
private static func dataModelUrl(fromBundle bundle: Bundle) -> URL? {
60-
ResourceHelper.url(
61-
forResource: PersistenceConst.dataModelFileName,
62-
withExtension: PersistenceConst.dataModelExtension,
63-
fromBundle: bundle
64-
)
65-
}
6660
}
6761

6862
final class CoreDataPersistenceContextProvider: IterablePersistenceContextProvider {

tests/endpoint-tests/OfflineModeE2ETests.swift

Lines changed: 24 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -81,42 +81,45 @@ class OfflineModeEndpointTests: XCTestCase {
8181
"messageId": "msg_1",
8282
],
8383
]
84-
api.trackPushOpen(pushPayload,
85-
dataFields: ["data_field1": "value1"],
86-
onSuccess: { _ in
87-
expectation1.fulfill()
88-
}) { reason, _ in
84+
api.trackPushOpen(
85+
pushPayload,
86+
dataFields: ["data_field1": "value1"],
87+
onSuccess: { _ in
88+
expectation1.fulfill()
89+
}
90+
) { reason, _ in
8991
XCTFail(reason ?? "failed")
9092
}
91-
93+
9294
wait(for: [expectation1], timeout: 15)
9395
}
94-
96+
9597
func test04TrackEvent() throws {
9698
let expectation1 = expectation(description: #function)
9799
let localStorage = MockLocalStorage()
98100
localStorage.offlineMode = true
99-
let api = InternalIterableAPI.initializeForE2E(apiKey: Self.apiKey,
100-
localStorage: localStorage)
101+
let api = InternalIterableAPI.initializeForE2E(
102+
apiKey: Self.apiKey,
103+
localStorage: localStorage
104+
)
101105
api.email = "[email protected]"
102-
103-
api.track("event1",
104-
dataFields: ["data_field1": "value1"],
105-
onSuccess: { _ in
106-
expectation1.fulfill()
107-
}) { reason, _ in
106+
107+
api.track(
108+
"event1",
109+
dataFields: ["data_field1": "value1"],
110+
onSuccess: { _ in
111+
expectation1.fulfill()
112+
}
113+
) { reason, _ in
108114
XCTFail(reason ?? "failed")
109115
}
110-
116+
111117
wait(for: [expectation1], timeout: 15)
112118
}
113-
119+
114120
private static let apiKey = Environment.apiKey!
115121
private static let pushCampaignId = Environment.pushCampaignId!
116122
private static let pushTemplateId = Environment.pushTemplateId!
117123
private static let inAppCampaignId = Environment.inAppCampaignId!
118-
private lazy var persistenceContextProvider: IterablePersistenceContextProvider = {
119-
let provider = CoreDataPersistenceContextProvider()!
120-
return provider
121-
}()
124+
private lazy var persistenceContextProvider: IterablePersistenceContextProvider = CoreDataPersistenceContextProvider()
122125
}

0 commit comments

Comments
 (0)