[flutter_tool] Add analytics events for ios-mdns fallback success/failure (#41482)

This commit is contained in:
Zachary Anderson 2019-09-27 12:18:59 -07:00 committed by GitHub
parent 618fac92c9
commit feaaa5d738
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 2 deletions

View file

@ -377,7 +377,7 @@ class IOSDevice extends Device {
return LaunchResult.succeeded(observatoryUri: localUri);
}
} catch (error) {
printError('Failed to establish a debug connection with $id: $error');
printError('Failed to establish a debug connection with $id using mdns: $error');
}
// Fallback to manual protocol discovery.
@ -387,13 +387,15 @@ class IOSDevice extends Device {
printTrace('Waiting for observatory port.');
localUri = await observatoryDiscovery.uri;
if (localUri != null) {
UsageEvent('ios-mdns', 'fallback-success').send();
return LaunchResult.succeeded(observatoryUri: localUri);
}
} catch (error) {
printError('Failed to establish a debug connection with $id: $error');
printError('Failed to establish a debug connection with $id using logs: $error');
} finally {
await observatoryDiscovery?.cancel();
}
UsageEvent('ios-mdns', 'fallback-failure').send();
return LaunchResult.failed();
} finally {
installStatus.stop();

View file

@ -219,6 +219,7 @@ void main() {
platformArgs: <String, dynamic>{},
);
verify(mockUsage.sendEvent('ios-mdns', 'failure')).called(1);
verify(mockUsage.sendEvent('ios-mdns', 'fallback-success')).called(1);
expect(launchResult.started, isTrue);
expect(launchResult.hasObservatory, isTrue);
expect(await device.stopApp(mockApp), isFalse);
@ -250,6 +251,8 @@ void main() {
debuggingOptions: DebuggingOptions.enabled(const BuildInfo(BuildMode.debug, null)),
platformArgs: <String, dynamic>{},
);
verify(mockUsage.sendEvent('ios-mdns', 'failure')).called(1);
verify(mockUsage.sendEvent('ios-mdns', 'fallback-failure')).called(1);
expect(launchResult.started, isFalse);
expect(launchResult.hasObservatory, isFalse);
}, overrides: <Type, Generator>{
@ -259,6 +262,7 @@ void main() {
MDnsObservatoryDiscovery: () => mockMDnsObservatoryDiscovery,
Platform: () => macPlatform,
ProcessManager: () => mockProcessManager,
Usage: () => mockUsage,
});
testUsingContext(' succeeds in release mode', () async {