@@ -34,16 +34,16 @@ extension MockCardReaderSettingsAlerts: BluetoothReaderConnnectionAlertsProvidin
3434 typealias AlertDetails = CardPresentPaymentsModalViewModel
3535
3636 func scanningForReader( cancel: @escaping ( ) -> Void ) -> CardPresentPaymentsModalViewModel {
37- if mode == . cancelScanning {
37+ switch mode {
38+ case . cancelScanning:
3839 cancel ( )
39- }
40-
41- if mode == . continueSearchingAfterConnectionFailure {
40+ case . continueSearchingAfterConnectionFailure:
4241 /// If we've already presented a found reader once before, cancel this second search
43- ///
4442 if didPresentFoundReader {
4543 cancel ( )
4644 }
45+ default :
46+ break
4747 }
4848
4949 return MockCardPresentPaymentsModalViewModel ( )
@@ -92,13 +92,7 @@ extension MockCardReaderSettingsAlerts: BluetoothReaderConnnectionAlertsProvidin
9292 func connectingFailed( error: Error ,
9393 retrySearch: @escaping ( ) -> Void ,
9494 cancelSearch: @escaping ( ) -> Void ) -> CardPresentPaymentsModalViewModel {
95- if mode == . continueSearchingAfterConnectionFailure {
96- retrySearch ( )
97- }
98-
99- if mode == . cancelSearchingAfterConnectionFailure {
100- cancelSearch ( )
101- }
95+ retryOrCancelIfNeeded ( retry: retrySearch, cancel: cancelSearch)
10296 return MockCardPresentPaymentsModalViewModel ( )
10397 }
10498
@@ -107,37 +101,19 @@ extension MockCardReaderSettingsAlerts: BluetoothReaderConnnectionAlertsProvidin
107101 openWCSettings: ( ( ) -> Void ) ? ,
108102 retrySearch: @escaping ( ) -> Void ,
109103 cancelSearch: @escaping ( ) -> Void ) -> CardPresentPaymentsModalViewModel {
110- if mode == . continueSearchingAfterConnectionFailure {
111- retrySearch ( )
112- }
113-
114- if mode == . cancelSearchingAfterConnectionFailure {
115- cancelSearch ( )
116- }
104+ retryOrCancelIfNeeded ( retry: retrySearch, cancel: cancelSearch)
117105 return MockCardPresentPaymentsModalViewModel ( )
118106 }
119107
120108 func connectingFailedInvalidPostalCode( retrySearch: @escaping ( ) -> Void ,
121109 cancelSearch: @escaping ( ) -> Void ) -> CardPresentPaymentsModalViewModel {
122- if mode == . continueSearchingAfterConnectionFailure {
123- retrySearch ( )
124- }
125-
126- if mode == . cancelSearchingAfterConnectionFailure {
127- cancelSearch ( )
128- }
110+ retryOrCancelIfNeeded ( retry: retrySearch, cancel: cancelSearch)
129111 return MockCardPresentPaymentsModalViewModel ( )
130112 }
131113
132114 func connectingFailedCriticallyLowBattery( retrySearch: @escaping ( ) -> Void ,
133115 cancelSearch: @escaping ( ) -> Void ) -> CardPresentPaymentsModalViewModel {
134- if mode == . continueSearchingAfterConnectionFailure {
135- retrySearch ( )
136- }
137-
138- if mode == . cancelSearchingAfterConnectionFailure {
139- cancelSearch ( )
140- }
116+ retryOrCancelIfNeeded ( retry: retrySearch, cancel: cancelSearch)
141117 return MockCardPresentPaymentsModalViewModel ( )
142118 }
143119
@@ -149,12 +125,7 @@ extension MockCardReaderSettingsAlerts: BluetoothReaderConnnectionAlertsProvidin
149125 func updatingFailedLowBattery( batteryLevel: Double ? ,
150126 retrySearch: @escaping ( ) -> Void ,
151127 close: @escaping ( ) -> Void ) -> CardPresentPaymentsModalViewModel {
152- if mode == . continueSearchingAfterConnectionFailure {
153- retrySearch ( )
154- }
155- if mode == . cancelSearchingAfterConnectionFailure {
156- close ( )
157- }
128+ retryOrCancelIfNeeded ( retry: retrySearch, cancel: close)
158129 return MockCardPresentPaymentsModalViewModel ( )
159130 }
160131
@@ -188,6 +159,17 @@ extension MockCardReaderSettingsAlerts: BluetoothReaderConnnectionAlertsProvidin
188159 }
189160 return MockCardPresentPaymentsModalViewModel ( )
190161 }
162+
163+ private func retryOrCancelIfNeeded( retry: @escaping ( ) -> Void , cancel: @escaping ( ) -> Void ) {
164+ switch mode {
165+ case . cancelSearchingAfterConnectionFailure:
166+ cancel ( )
167+ case . continueSearchingAfterConnectionFailure:
168+ retry ( )
169+ default :
170+ break
171+ }
172+ }
191173}
192174
193175
0 commit comments