| OLD | NEW |
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 /** | 5 /** |
| 6 * @constructor | 6 * @constructor |
| 7 * @implements {settings.FingerprintBrowserProxy} | 7 * @implements {settings.FingerprintBrowserProxy} |
| 8 * @extends {settings.TestBrowserProxy} | 8 * @extends {settings.TestBrowserProxy} |
| 9 */ | 9 */ |
| 10 var TestFingerprintBrowserProxy = function() { | 10 var TestFingerprintBrowserProxy = function() { |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 119 settings.FingerprintBrowserProxyImpl.instance_ = browserProxy; | 119 settings.FingerprintBrowserProxyImpl.instance_ = browserProxy; |
| 120 | 120 |
| 121 PolymerTest.clearBody(); | 121 PolymerTest.clearBody(); |
| 122 fingerprintList = document.createElement('settings-fingerprint-list'); | 122 fingerprintList = document.createElement('settings-fingerprint-list'); |
| 123 document.body.appendChild(fingerprintList); | 123 document.body.appendChild(fingerprintList); |
| 124 dialog = fingerprintList.$.setupFingerprint; | 124 dialog = fingerprintList.$.setupFingerprint; |
| 125 addAnotherButton = dialog.$.addAnotherButton; | 125 addAnotherButton = dialog.$.addAnotherButton; |
| 126 Polymer.dom.flush(); | 126 Polymer.dom.flush(); |
| 127 return browserProxy.whenCalled('getFingerprintsList').then(function() { | 127 return browserProxy.whenCalled('getFingerprintsList').then(function() { |
| 128 assertEquals(0, fingerprintList.fingerprints_.length); | 128 assertEquals(0, fingerprintList.fingerprints_.length); |
| 129 browserProxy.resetResolver('getFingerprintsList'); |
| 129 }); | 130 }); |
| 130 }); | 131 }); |
| 131 | 132 |
| 132 // Verify running through the enroll session workflow | 133 // Verify running through the enroll session workflow |
| 133 // (settings-setup-fingerprint-dialog) works as expected. | 134 // (settings-setup-fingerprint-dialog) works as expected. |
| 134 test('EnrollingFingerprint', function() { | 135 test('EnrollingFingerprint', function() { |
| 135 assertFalse(dialog.$.dialog.open); | 136 assertFalse(dialog.$.dialog.open); |
| 136 MockInteractions.tap(fingerprintList.$$('.action-button')); | 137 MockInteractions.tap(fingerprintList.$$('.action-button')); |
| 137 return browserProxy.whenCalled('startEnroll').then(function() { | 138 return browserProxy.whenCalled('startEnroll').then(function() { |
| 138 assertTrue(dialog.$.dialog.open); | 139 assertTrue(dialog.$.dialog.open); |
| (...skipping 25 matching lines...) Expand all Loading... |
| 164 }); | 165 }); |
| 165 }); | 166 }); |
| 166 }); | 167 }); |
| 167 | 168 |
| 168 // Verify enrolling a fingerprint, then enrolling another without closing the | 169 // Verify enrolling a fingerprint, then enrolling another without closing the |
| 169 // dialog works as intended. | 170 // dialog works as intended. |
| 170 test('EnrollingAnotherFingerprint', function() { | 171 test('EnrollingAnotherFingerprint', function() { |
| 171 assertFalse(dialog.$.dialog.open); | 172 assertFalse(dialog.$.dialog.open); |
| 172 MockInteractions.tap(fingerprintList.$$('.action-button')); | 173 MockInteractions.tap(fingerprintList.$$('.action-button')); |
| 173 return browserProxy.whenCalled('startEnroll').then(function() { | 174 return browserProxy.whenCalled('startEnroll').then(function() { |
| 175 browserProxy.resetResolver('startEnroll'); |
| 176 |
| 174 assertTrue(dialog.$.dialog.open); | 177 assertTrue(dialog.$.dialog.open); |
| 175 assertEquals(0, dialog.receivedScanCount_); | 178 assertEquals(0, dialog.receivedScanCount_); |
| 176 assertFalse(isVisible(addAnotherButton)); | 179 assertFalse(isVisible(addAnotherButton)); |
| 177 browserProxy.scanReceived(settings.FingerprintResultType.SUCCESS, true); | 180 browserProxy.scanReceived(settings.FingerprintResultType.SUCCESS, true); |
| 178 assertEquals(settings.FingerprintSetupStep.READY, dialog.step_); | 181 assertEquals(settings.FingerprintSetupStep.READY, dialog.step_); |
| 179 | 182 |
| 180 // Once the first fingerprint is enrolled, verify that enrolling the | |
| 181 // second fingerprint without closing the dialog works as expected. | |
| 182 return browserProxy.whenCalled('getFingerprintsList'); | |
| 183 }).then(function() { | |
| 184 assertEquals(1, fingerprintList.fingerprints_.length); | |
| 185 assertTrue(dialog.$.dialog.open); | 183 assertTrue(dialog.$.dialog.open); |
| 186 assertTrue(isVisible(addAnotherButton)); | 184 assertTrue(isVisible(addAnotherButton)); |
| 187 MockInteractions.tap(addAnotherButton); | 185 MockInteractions.tap(addAnotherButton); |
| 188 return browserProxy.whenCalled('startEnroll'); | 186 |
| 187 // Once the first fingerprint is enrolled, verify that enrolling the |
| 188 // second fingerprint without closing the dialog works as expected. |
| 189 return Promise.all([ |
| 190 browserProxy.whenCalled('startEnroll'), |
| 191 browserProxy.whenCalled('getFingerprintsList')]); |
| 189 }).then(function() { | 192 }).then(function() { |
| 193 browserProxy.resetResolver('getFingerprintsList'); |
| 194 |
| 190 assertTrue(dialog.$.dialog.open); | 195 assertTrue(dialog.$.dialog.open); |
| 191 assertFalse(isVisible(addAnotherButton)); | 196 assertFalse(isVisible(addAnotherButton)); |
| 192 browserProxy.scanReceived(settings.FingerprintResultType.SUCCESS, true); | 197 browserProxy.scanReceived(settings.FingerprintResultType.SUCCESS, true); |
| 198 |
| 199 // Verify that by tapping the continue button we should exit the dialog |
| 200 // and the fingerprint list should have two fingerprints registered. |
| 201 MockInteractions.tap(dialog.$.closeButton); |
| 193 return browserProxy.whenCalled('getFingerprintsList'); | 202 return browserProxy.whenCalled('getFingerprintsList'); |
| 194 }).then(function() { | 203 }).then(function() { |
| 195 assertEquals(2, fingerprintList.fingerprints_.length); | 204 assertEquals(2, fingerprintList.fingerprints_.length); |
| 196 }); | 205 }); |
| 197 }); | 206 }); |
| 198 | 207 |
| 199 test('CancelEnrollingFingerprint', function() { | 208 test('CancelEnrollingFingerprint', function() { |
| 200 assertFalse(dialog.$.dialog.open); | 209 assertFalse(dialog.$.dialog.open); |
| 201 MockInteractions.tap(fingerprintList.$$('.action-button')); | 210 MockInteractions.tap(fingerprintList.$$('.action-button')); |
| 202 return browserProxy.whenCalled('startEnroll').then(function() { | 211 return browserProxy.whenCalled('startEnroll').then(function() { |
| (...skipping 11 matching lines...) Expand all Loading... |
| 214 }).then(function() { | 223 }).then(function() { |
| 215 assertEquals(0, fingerprintList.fingerprints_.length); | 224 assertEquals(0, fingerprintList.fingerprints_.length); |
| 216 }); | 225 }); |
| 217 }); | 226 }); |
| 218 | 227 |
| 219 test('RemoveFingerprint', function() { | 228 test('RemoveFingerprint', function() { |
| 220 browserProxy.setFingerprints(['Label 1', 'Label 2']); | 229 browserProxy.setFingerprints(['Label 1', 'Label 2']); |
| 221 fingerprintList.updateFingerprintsList_(); | 230 fingerprintList.updateFingerprintsList_(); |
| 222 | 231 |
| 223 return browserProxy.whenCalled('getFingerprintsList').then(function() { | 232 return browserProxy.whenCalled('getFingerprintsList').then(function() { |
| 233 browserProxy.resetResolver('getFingerprintsList'); |
| 224 assertEquals(2, fingerprintList.fingerprints_.length); | 234 assertEquals(2, fingerprintList.fingerprints_.length); |
| 225 fingerprintList.onFingerprintDeleteTapped_(createFakeEvent(0)); | 235 fingerprintList.onFingerprintDeleteTapped_(createFakeEvent(0)); |
| 226 | 236 |
| 227 return Promise.all([ | 237 return Promise.all([ |
| 228 browserProxy.whenCalled('removeEnrollment'), | 238 browserProxy.whenCalled('removeEnrollment'), |
| 229 browserProxy.whenCalled('getFingerprintsList')]); | 239 browserProxy.whenCalled('getFingerprintsList')]); |
| 230 }).then(function() { | 240 }).then(function() { |
| 231 assertEquals(1, fingerprintList.fingerprints_.length); | 241 assertEquals(1, fingerprintList.fingerprints_.length); |
| 232 }); | 242 }); |
| 233 }); | 243 }); |
| (...skipping 16 matching lines...) Expand all Loading... |
| 250 }); | 260 }); |
| 251 }); | 261 }); |
| 252 | 262 |
| 253 test('AddingNewFingerprint', function() { | 263 test('AddingNewFingerprint', function() { |
| 254 browserProxy.setFingerprints(['1', '2', '3', '4', '5']); | 264 browserProxy.setFingerprints(['1', '2', '3', '4', '5']); |
| 255 fingerprintList.updateFingerprintsList_(); | 265 fingerprintList.updateFingerprintsList_(); |
| 256 | 266 |
| 257 // Verify that new fingerprints cannot be added when there are already five | 267 // Verify that new fingerprints cannot be added when there are already five |
| 258 // registered fingerprints. | 268 // registered fingerprints. |
| 259 return browserProxy.whenCalled('getFingerprintsList').then(function() { | 269 return browserProxy.whenCalled('getFingerprintsList').then(function() { |
| 270 browserProxy.resetResolver('getFingerprintsList'); |
| 260 assertEquals(5, fingerprintList.fingerprints_.length); | 271 assertEquals(5, fingerprintList.fingerprints_.length); |
| 261 assertTrue(fingerprintList.$$('.action-button').disabled); | 272 assertTrue(fingerprintList.$$('.action-button').disabled); |
| 262 fingerprintList.onFingerprintDeleteTapped_(createFakeEvent(0)); | 273 fingerprintList.onFingerprintDeleteTapped_(createFakeEvent(0)); |
| 263 | 274 |
| 264 return Promise.all([ | 275 return Promise.all([ |
| 265 browserProxy.whenCalled('removeEnrollment'), | 276 browserProxy.whenCalled('removeEnrollment'), |
| 266 browserProxy.whenCalled('getFingerprintsList')]); | 277 browserProxy.whenCalled('getFingerprintsList')]); |
| 267 }).then(function() { | 278 }).then(function() { |
| 268 assertEquals(4, fingerprintList.fingerprints_.length); | 279 assertEquals(4, fingerprintList.fingerprints_.length); |
| 269 assertFalse( | 280 assertFalse( |
| 270 fingerprintList.$$('.action-button').disabled); | 281 fingerprintList.$$('.action-button').disabled); |
| 271 }); | 282 }); |
| 272 }); | 283 }); |
| 273 }); | 284 }); |
| OLD | NEW |