From 57703bd0577ac99e9347b597011a1da9d9ece69e Mon Sep 17 00:00:00 2001 From: Omar Ahmed Date: Tue, 28 Mar 2023 09:41:52 +0200 Subject: [PATCH 1/5] hide covpass notice for revoced certificates --- .../Views/HealthCertificateQRCodeView.swift | 2 +- .../HealthCertificateQRCodeViewModel.swift | 3 ++ .../HealthCertificateQRCodeViewTests.swift | 28 +++++++++++++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeView.swift b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeView.swift index c8d92c8f44f..e7efaf63d20 100644 --- a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeView.swift +++ b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeView.swift @@ -46,7 +46,7 @@ class HealthCertificateQRCodeView: UIView { qrCodeImageView.accessibilityLabel = viewModel.accessibilityLabel qrCodeImageView.accessibilityIdentifier = viewModel.qrCodeAccessibilityIdentifier blockingView.isHidden = !viewModel.shouldBlockCertificateCode - covPassCheckInfoStackView.isHidden = viewModel.shouldBlockCertificateCode + covPassCheckInfoStackView.isHidden = viewModel.shouldBlockCertificateCode || viewModel.shouldHideCovPassNotice onCovPassCheckInfoButtonTap = viewModel.onCovPassCheckInfoButtonTap subscriptions.removeAll() diff --git a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift index 030c464debc..711d01eda7c 100644 --- a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift +++ b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift @@ -19,6 +19,7 @@ struct HealthCertificateQRCodeViewModel { onCovPassCheckInfoButtonTap: @escaping () -> Void ) { self.shouldBlockCertificateCode = !healthCertificate.isUsable && !(showRealQRCodeIfValidityStateBlocked && healthCertificate.validityState == .blocked) + self.shouldHideCovPassNotice = healthCertificate.validityState == .revoked self.imageAccessibilityTraits = imageAccessibilityTraits self.accessibilityLabel = accessibilityLabel self.qrCodeAccessibilityIdentifier = qrCodeAccessibilityIdentifier @@ -38,6 +39,7 @@ struct HealthCertificateQRCodeViewModel { onCovPassCheckInfoButtonTap: @escaping () -> Void ) { self.shouldBlockCertificateCode = shouldBlockCertificateCode + self.shouldHideCovPassNotice = false self.imageAccessibilityTraits = imageAccessibilityTraits self.accessibilityLabel = accessibilityLabel self.qrCodeAccessibilityIdentifier = qrCodeAccessibilityIdentifier @@ -54,6 +56,7 @@ struct HealthCertificateQRCodeViewModel { case bottom } + let shouldHideCovPassNotice: Bool let shouldBlockCertificateCode: Bool let imageAccessibilityTraits: UIAccessibilityTraits let accessibilityLabel: String diff --git a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/__tests__/HealthCertificateQRCodeViewTests.swift b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/__tests__/HealthCertificateQRCodeViewTests.swift index 5deb3d072d9..4b269d4febd 100644 --- a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/__tests__/HealthCertificateQRCodeViewTests.swift +++ b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/__tests__/HealthCertificateQRCodeViewTests.swift @@ -67,5 +67,33 @@ class HealthCertificateQRCodeViewTests: XCTestCase { // THEN XCTAssertTrue(qrCodeView.covPassCheckInfoStackViewIsHidden) } + func testGIVEN_QRCodeView_WHEN_ConfigureWithRevocedHealthcertificate_THEN_NoticeLabelIsNotisible() throws { + // GIVEN + let qrCodeView = HealthCertificateQRCodeView(frame: CGRect(x: 0, y: 0, width: 320, height: 240)) + + let healthCertificate = try HealthCertificate( + base45: try base45Fake( + digitalCovidCertificate: DigitalCovidCertificate.fake( + testEntries: [.fake()] + ) + ), + validityState: .revoked + ) + + let viewModel = HealthCertificateQRCodeViewModel( + healthCertificate: healthCertificate, + showRealQRCodeIfValidityStateBlocked: false, + imageAccessibilityTraits: .image, + accessibilityLabel: "", + qrCodeAccessibilityIdentifier: "", + covPassCheckInfoPosition: .top, + onCovPassCheckInfoButtonTap: {} + ) + // WHEN + qrCodeView.configure(with: viewModel) + + // THEN + XCTAssertTrue(qrCodeView.covPassCheckInfoStackViewIsHidden) + } } From 5fb654214e1bc75cc6d4f523bd20a232f790f00d Mon Sep 17 00:00:00 2001 From: Omar Ahmed Date: Tue, 28 Mar 2023 09:48:26 +0200 Subject: [PATCH 2/5] refactoring --- .../HealthCertifiedPerson/HealthCertifiedPersonCellModel.swift | 1 + .../Views/HealthCertificateQRCodeViewModel.swift | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Overview/Cells/HealthCertifiedPerson/HealthCertifiedPersonCellModel.swift b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Overview/Cells/HealthCertifiedPerson/HealthCertifiedPersonCellModel.swift index 27353ea7951..d88f1504a68 100644 --- a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Overview/Cells/HealthCertifiedPerson/HealthCertifiedPersonCellModel.swift +++ b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Overview/Cells/HealthCertifiedPerson/HealthCertifiedPersonCellModel.swift @@ -113,6 +113,7 @@ class HealthCertifiedPersonCellModel { qrCodeViewModel = HealthCertificateQRCodeViewModel( base45: decodingFailedHealthCertificate.base45, shouldBlockCertificateCode: false, + shouldHideCovPassNotice: false, imageAccessibilityTraits: .image, accessibilityLabel: AppStrings.HealthCertificate.Overview.covidDescription, qrCodeAccessibilityIdentifier: AccessibilityIdentifiers.HealthCertificate.qrCodeView(of: decodingFailedHealthCertificate.base45), diff --git a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift index 711d01eda7c..58690d76464 100644 --- a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift +++ b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift @@ -32,6 +32,7 @@ struct HealthCertificateQRCodeViewModel { init( base45: Base45, shouldBlockCertificateCode: Bool, + shouldHideCovPassNotice: Bool = false imageAccessibilityTraits: UIAccessibilityTraits, accessibilityLabel: String, qrCodeAccessibilityIdentifier: String, @@ -39,7 +40,7 @@ struct HealthCertificateQRCodeViewModel { onCovPassCheckInfoButtonTap: @escaping () -> Void ) { self.shouldBlockCertificateCode = shouldBlockCertificateCode - self.shouldHideCovPassNotice = false + self.shouldHideCovPassNotice = shouldHideCovPassNotice self.imageAccessibilityTraits = imageAccessibilityTraits self.accessibilityLabel = accessibilityLabel self.qrCodeAccessibilityIdentifier = qrCodeAccessibilityIdentifier From 520a2ab55984cb7eba8d434e4586f08889c8d465 Mon Sep 17 00:00:00 2001 From: Omar Ahmed Date: Tue, 28 Mar 2023 13:55:08 +0200 Subject: [PATCH 3/5] add missing comma --- src/xcode/ENA/ENA/Resources/ENATest.entitlements | 2 -- .../Views/HealthCertificateQRCodeViewModel.swift | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/xcode/ENA/ENA/Resources/ENATest.entitlements b/src/xcode/ENA/ENA/Resources/ENATest.entitlements index 5da520b9b48..3450cedd2f4 100644 --- a/src/xcode/ENA/ENA/Resources/ENATest.entitlements +++ b/src/xcode/ENA/ENA/Resources/ENATest.entitlements @@ -15,8 +15,6 @@ com.apple.developer.exposure-notification - com.apple.developer.exposure-notification-logging - com.apple.developer.exposure-notification-test com.apple.developer.exposure-notification-test-skip-file-verification diff --git a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift index 58690d76464..bd6cc6ccdee 100644 --- a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift +++ b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift @@ -32,7 +32,7 @@ struct HealthCertificateQRCodeViewModel { init( base45: Base45, shouldBlockCertificateCode: Bool, - shouldHideCovPassNotice: Bool = false + shouldHideCovPassNotice: Bool, imageAccessibilityTraits: UIAccessibilityTraits, accessibilityLabel: String, qrCodeAccessibilityIdentifier: String, From e841c0b591eb74fbcb97060a7d694e436c04d89a Mon Sep 17 00:00:00 2001 From: Omar Ahmed Date: Tue, 28 Mar 2023 13:56:32 +0200 Subject: [PATCH 4/5] Revert "add missing comma" This reverts commit 520a2ab55984cb7eba8d434e4586f08889c8d465. --- src/xcode/ENA/ENA/Resources/ENATest.entitlements | 2 ++ .../Views/HealthCertificateQRCodeViewModel.swift | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/xcode/ENA/ENA/Resources/ENATest.entitlements b/src/xcode/ENA/ENA/Resources/ENATest.entitlements index 3450cedd2f4..5da520b9b48 100644 --- a/src/xcode/ENA/ENA/Resources/ENATest.entitlements +++ b/src/xcode/ENA/ENA/Resources/ENATest.entitlements @@ -15,6 +15,8 @@ com.apple.developer.exposure-notification + com.apple.developer.exposure-notification-logging + com.apple.developer.exposure-notification-test com.apple.developer.exposure-notification-test-skip-file-verification diff --git a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift index bd6cc6ccdee..58690d76464 100644 --- a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift +++ b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift @@ -32,7 +32,7 @@ struct HealthCertificateQRCodeViewModel { init( base45: Base45, shouldBlockCertificateCode: Bool, - shouldHideCovPassNotice: Bool, + shouldHideCovPassNotice: Bool = false imageAccessibilityTraits: UIAccessibilityTraits, accessibilityLabel: String, qrCodeAccessibilityIdentifier: String, From ef6346d3b5af7050402a117dfa243681293e0c97 Mon Sep 17 00:00:00 2001 From: Omar Ahmed Date: Tue, 28 Mar 2023 13:58:21 +0200 Subject: [PATCH 5/5] add missing comma. --- .../Views/HealthCertificateQRCodeViewModel.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift index 58690d76464..bd6cc6ccdee 100644 --- a/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift +++ b/src/xcode/ENA/ENA/Source/Scenes/HealthCertificates/Views/HealthCertificateQRCodeViewModel.swift @@ -32,7 +32,7 @@ struct HealthCertificateQRCodeViewModel { init( base45: Base45, shouldBlockCertificateCode: Bool, - shouldHideCovPassNotice: Bool = false + shouldHideCovPassNotice: Bool, imageAccessibilityTraits: UIAccessibilityTraits, accessibilityLabel: String, qrCodeAccessibilityIdentifier: String,