Skip to content

Commit d59bda9

Browse files
author
Vailence
committed
MOBILE-164: Collapse duplicate ISO-8601 formatter into the MindboxLogger primitive
1 parent bccb40c commit d59bda9

5 files changed

Lines changed: 6 additions & 54 deletions

File tree

Mindbox.xcodeproj/project.pbxproj

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -464,7 +464,6 @@
464464
D2F7E24C2BADC4CA00B24BB8 /* MockSessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2F7E24B2BADC4CA00B24BB8 /* MockSessionManager.swift */; };
465465
DEC482157E5249DBBFAEFC9A /* FeatureTogglesModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9778038796A8426ABDED1E97 /* FeatureTogglesModel.swift */; };
466466
EA395B77BB16CEFE6DC91D1D /* TransparentViewSyncOperationResponseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B7DAFAB687945FA908DB1AC /* TransparentViewSyncOperationResponseTests.swift */; };
467-
F26DFF81C3FF57C3DE68DEDC /* Date+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326423031CA9C6BF0E62BEFD /* Date+Extensions.swift */; };
468467
F30005442CFF3F7D004BE915 /* ABTestStubs.swift in Sources */ = {isa = PBXBuildFile; fileRef = F30005432CFF3F7D004BE915 /* ABTestStubs.swift */; };
469468
F306291A2BD27D7500EF6609 /* InappFrequencyTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F30629192BD27D7500EF6609 /* InappFrequencyTests.swift */; };
470469
F30654BB2F1A83520058808C /* MindboxWebViewFacade.swift in Sources */ = {isa = PBXBuildFile; fileRef = F30654BA2F1A83520058808C /* MindboxWebViewFacade.swift */; };
@@ -766,7 +765,6 @@
766765
31ED2DF025C4456600301FAD /* TestConfig_Invalid_1.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = TestConfig_Invalid_1.plist; sourceTree = "<group>"; };
767766
31ED2DF125C4456600301FAD /* TestConfig_Invalid_3.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = TestConfig_Invalid_3.plist; sourceTree = "<group>"; };
768767
31ED2DF925C4459400301FAD /* TestConfig_Invalid_4.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = TestConfig_Invalid_4.plist; sourceTree = "<group>"; };
769-
326423031CA9C6BF0E62BEFD /* Date+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "Date+Extensions.swift"; sourceTree = "<group>"; };
770768
33072F2D2664C24F001F1AB2 /* AreaResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AreaResponse.swift; sourceTree = "<group>"; };
771769
33072F2F2664C2E4001F1AB2 /* SubscriptionResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SubscriptionResponse.swift; sourceTree = "<group>"; };
772770
33072F312664C357001F1AB2 /* ProductListResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProductListResponse.swift; sourceTree = "<group>"; };
@@ -3576,7 +3574,6 @@
35763574
BB4D7CC62BDEC51D008E3AB8 /* Notification+Extensions.swift */,
35773575
BB65630F2BE3BA430090C473 /* UIApplication+Extensions.swift */,
35783576
F31DB4072F56A50E00DCEB85 /* NSError+Extensions.swift */,
3579-
326423031CA9C6BF0E62BEFD /* Date+Extensions.swift */,
35803577
F3482F292A65DCFC002A41EC /* String+Extensions.swift */,
35813578
);
35823579
path = Extensions;
@@ -4660,7 +4657,6 @@
46604657
B3A625502689F8B600B6A3B7 /* BenefitResponse.swift in Sources */,
46614658
84C65E6425D4FBBB008996FA /* MobileApplicationInfoUpdated.swift in Sources */,
46624659
84DEE8AD25CC036A00C98CC7 /* MBDatabaseRepository.swift in Sources */,
4663-
F26DFF81C3FF57C3DE68DEDC /* Date+Extensions.swift in Sources */,
46644660
6182078DDFC681D168546DAD /* HapticService.swift in Sources */,
46654661
A1B2C3D4E5F6A7B8C9D0E1F2 /* MotionService.swift in Sources */,
46664662
6182078DDFC681D168546DAE /* HapticRequest.swift in Sources */,

Mindbox/Extensions/Date+Extensions.swift

Lines changed: 0 additions & 39 deletions
This file was deleted.

Mindbox/InAppMessages/Presentation/Views/WebView/Debug/MindboxWebViewFacade.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
import UIKit
1010
import WebKit
11+
import MindboxLogger
1112

1213
private enum PayloadKey {
1314
static let sdkVersion = "sdkVersion"
@@ -238,7 +239,7 @@ extension MindboxWebViewFacade {
238239
]
239240

240241
if let firstInitDate = persistenceStorage.firstInitializationDateTime {
241-
params[PayloadKey.firstInitializationDateTime] = firstInitDate.iso8601
242+
params[PayloadKey.firstInitializationDateTime] = firstInitDate.toString(withFormat: .utc)
242243
}
243244

244245
return params

Mindbox/Model/Common/MBDate.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ public final class DateTime: MBDate {
2828
}
2929

3030
override func decodeWithFormat(_ rawString: String) -> Date? {
31-
return Date.fromISO8601(rawString)
31+
return rawString.toDate(withFormat: .utc)
32+
?? rawString.toDate(withFormat: .utcWithMillis)
3233
}
3334
}
3435

MindboxTests/InApp/Tests/InappShowFailureManagerTests.swift

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import XCTest
1010
import UIKit
1111
@testable import Mindbox
12+
@testable import MindboxLogger
1213

1314
final class InappShowFailureManagerTests: XCTestCase {
1415
private var databaseRepository: InappShowFailureDatabaseRepositoryMock!
@@ -65,7 +66,7 @@ final class InappShowFailureManagerTests: XCTestCase {
6566
let event = try XCTUnwrap(databaseRepository.createdEvents.first)
6667
let failure = try XCTUnwrap(decodeFailures(from: event)?.first)
6768
XCTAssertFalse(failure.dateTimeUtc.isEmpty)
68-
XCTAssertNotNil(makeUTCFormatter().date(from: failure.dateTimeUtc))
69+
XCTAssertNotNil(failure.dateTimeUtc.toDate(withFormat: .utc))
6970
}
7071

7172
func testAddFailure_duplicateInappId_isIgnored() throws {
@@ -359,14 +360,6 @@ private extension InappShowFailureManagerTests {
359360
BodyDecoder<InAppShowFailuresBody>(decodable: event.body)?.body.failures
360361
}
361362

362-
func makeUTCFormatter() -> DateFormatter {
363-
let formatter = DateFormatter()
364-
formatter.locale = Locale(identifier: "en_US_POSIX")
365-
formatter.timeZone = TimeZone(secondsFromGMT: 0)
366-
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss'Z'"
367-
return formatter
368-
}
369-
370363
func applyFeatureToggle(shouldSendInAppShowError: Bool) {
371364
let settingsJSON = """
372365
{

0 commit comments

Comments
 (0)