Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
F
Front-End
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
abdullh.alsoleman
Front-End
Commits
c8f234d3
Unverified
Commit
c8f234d3
authored
Aug 31, 2020
by
Ben Konyi
Committed by
GitHub
Aug 31, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Reland "Re-enable the Dart Development Service (DDS) (#64671)" (#64847)
This reverts commit
2436de13
.
parent
7e3e311b
Changes
25
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
138 additions
and
58 deletions
+138
-58
android_device.dart
packages/flutter_tools/lib/src/android/android_device.dart
+1
-1
dds.dart
packages/flutter_tools/lib/src/base/dds.dart
+6
-11
drive.dart
packages/flutter_tools/lib/src/commands/drive.dart
+9
-3
run.dart
packages/flutter_tools/lib/src/commands/run.dart
+8
-8
test.dart
packages/flutter_tools/lib/src/commands/test.dart
+2
-0
desktop_device.dart
packages/flutter_tools/lib/src/desktop_device.dart
+1
-1
fuchsia_device.dart
packages/flutter_tools/lib/src/fuchsia/fuchsia_device.dart
+10
-4
devices.dart
packages/flutter_tools/lib/src/ios/devices.dart
+2
-2
simulators.dart
packages/flutter_tools/lib/src/ios/simulators.dart
+6
-3
mdns_discovery.dart
packages/flutter_tools/lib/src/mdns_discovery.dart
+4
-2
resident_runner.dart
packages/flutter_tools/lib/src/resident_runner.dart
+7
-1
flutter_command.dart
packages/flutter_tools/lib/src/runner/flutter_command.dart
+2
-0
flutter_platform.dart
packages/flutter_tools/lib/src/test/flutter_platform.dart
+22
-8
runner.dart
packages/flutter_tools/lib/src/test/runner.dart
+3
-0
flutter_tester.dart
packages/flutter_tools/lib/src/tester/flutter_tester.dart
+2
-2
attach_test.dart
...utter_tools/test/commands.shard/hermetic/attach_test.dart
+8
-5
drive_test.dart
...lutter_tools/test/commands.shard/hermetic/drive_test.dart
+3
-1
test_test.dart
...flutter_tools/test/commands.shard/hermetic/test_test.dart
+1
-0
cold_test.dart
packages/flutter_tools/test/general.shard/cold_test.dart
+2
-0
fuchsia_device_test.dart
...tools/test/general.shard/fuchsia/fuchsia_device_test.dart
+7
-2
hot_test.dart
packages/flutter_tools/test/general.shard/hot_test.dart
+2
-0
ios_device_start_prebuilt_test.dart
...est/general.shard/ios/ios_device_start_prebuilt_test.dart
+5
-1
mdns_discovery_test.dart
...flutter_tools/test/general.shard/mdns_discovery_test.dart
+20
-0
resident_runner_test.dart
...lutter_tools/test/general.shard/resident_runner_test.dart
+4
-1
vmservice_integration_test.dart
...ls/test/integration.shard/vmservice_integration_test.dart
+1
-2
No files found.
packages/flutter_tools/lib/src/android/android_device.dart
View file @
c8f234d3
...
@@ -620,7 +620,7 @@ class AndroidDevice extends Device {
...
@@ -620,7 +620,7 @@ class AndroidDevice extends Device {
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
await
getLogReader
(),
await
getLogReader
(),
portForwarder:
portForwarder
,
portForwarder:
portForwarder
,
hostPort:
debuggingOptions
.
hostVmServicePort
,
hostPort:
debuggingOptions
.
disableDds
?
debuggingOptions
.
hostVmServicePort
:
0
,
devicePort:
debuggingOptions
.
deviceVmServicePort
,
devicePort:
debuggingOptions
.
deviceVmServicePort
,
ipv6:
ipv6
,
ipv6:
ipv6
,
);
);
...
...
packages/flutter_tools/lib/src/base/dds.dart
View file @
c8f234d3
...
@@ -15,30 +15,24 @@ import 'logger.dart';
...
@@ -15,30 +15,24 @@ import 'logger.dart';
class
DartDevelopmentService
{
class
DartDevelopmentService
{
DartDevelopmentService
({
@required
this
.
logger
});
DartDevelopmentService
({
@required
this
.
logger
});
// TODO(bkonyi): enable once VM service can handle SSE forwarding for
// Devtools (https://github.com/flutter/flutter/issues/62507)
static
const
bool
ddsDisabled
=
true
;
final
Logger
logger
;
final
Logger
logger
;
dds
.
DartDevelopmentService
_ddsInstance
;
dds
.
DartDevelopmentService
_ddsInstance
;
Uri
get
uri
=>
_ddsInstance
.
uri
;
Future
<
void
>
startDartDevelopmentService
(
Future
<
void
>
startDartDevelopmentService
(
Uri
observatoryUri
,
Uri
observatoryUri
,
int
hostPort
,
bool
ipv6
,
bool
ipv6
,
bool
disableServiceAuthCodes
,
)
async
{
)
async
{
if
(
ddsDisabled
)
{
logger
.
printTrace
(
'DDS is currently disabled due to '
'https://github.com/flutter/flutter/issues/62507'
);
return
;
}
final
Uri
ddsUri
=
Uri
(
final
Uri
ddsUri
=
Uri
(
scheme:
'http'
,
scheme:
'http'
,
host:
(
ipv6
?
host:
(
ipv6
?
io
.
InternetAddress
.
loopbackIPv6
:
io
.
InternetAddress
.
loopbackIPv6
:
io
.
InternetAddress
.
loopbackIPv4
io
.
InternetAddress
.
loopbackIPv4
).
host
,
).
host
,
port:
0
,
port:
hostPort
??
0
,
);
);
logger
.
printTrace
(
logger
.
printTrace
(
'Launching a Dart Developer Service (DDS) instance at
$ddsUri
, '
'Launching a Dart Developer Service (DDS) instance at
$ddsUri
, '
...
@@ -48,6 +42,7 @@ class DartDevelopmentService {
...
@@ -48,6 +42,7 @@ class DartDevelopmentService {
_ddsInstance
=
await
dds
.
DartDevelopmentService
.
startDartDevelopmentService
(
_ddsInstance
=
await
dds
.
DartDevelopmentService
.
startDartDevelopmentService
(
observatoryUri
,
observatoryUri
,
serviceUri:
ddsUri
,
serviceUri:
ddsUri
,
enableAuthCodes:
!
disableServiceAuthCodes
,
);
);
logger
.
printTrace
(
'DDS is listening at
${_ddsInstance.uri}
.'
);
logger
.
printTrace
(
'DDS is listening at
${_ddsInstance.uri}
.'
);
}
on
dds
.
DartDevelopmentServiceException
catch
(
e
)
{
}
on
dds
.
DartDevelopmentServiceException
catch
(
e
)
{
...
...
packages/flutter_tools/lib/src/commands/drive.dart
View file @
c8f234d3
...
@@ -235,12 +235,18 @@ class DriveCommand extends RunCommandBase {
...
@@ -235,12 +235,18 @@ class DriveCommand extends RunCommandBase {
}
}
observatoryUri
=
result
.
observatoryUri
.
toString
();
observatoryUri
=
result
.
observatoryUri
.
toString
();
// TODO(bkonyi): add web support (https://github.com/flutter/flutter/issues/61259)
// TODO(bkonyi): add web support (https://github.com/flutter/flutter/issues/61259)
if
(!
isWebPlatform
)
{
if
(!
isWebPlatform
&&
!
disableDds
)
{
try
{
try
{
// If there's another flutter_tools instance still connected to the target
// If there's another flutter_tools instance still connected to the target
// application, DDS will already be running remotely and this call will fail.
// application, DDS will already be running remotely and this call will fail.
// We can ignore this and continue to use the remote DDS instance.
// We can ignore this and continue to use the remote DDS instance.
await
device
.
dds
.
startDartDevelopmentService
(
Uri
.
parse
(
observatoryUri
),
ipv6
);
await
device
.
dds
.
startDartDevelopmentService
(
Uri
.
parse
(
observatoryUri
),
hostVmservicePort
,
ipv6
,
disableServiceAuthCodes
,
);
observatoryUri
=
device
.
dds
.
uri
.
toString
();
}
on
dds
.
DartDevelopmentServiceException
catch
(
_
)
{
}
on
dds
.
DartDevelopmentServiceException
catch
(
_
)
{
globals
.
printTrace
(
'Note: DDS is already connected to
$observatoryUri
.'
);
globals
.
printTrace
(
'Note: DDS is already connected to
$observatoryUri
.'
);
}
}
...
@@ -478,7 +484,7 @@ Future<LaunchResult> _startApp(
...
@@ -478,7 +484,7 @@ Future<LaunchResult> _startApp(
debuggingOptions:
DebuggingOptions
.
enabled
(
debuggingOptions:
DebuggingOptions
.
enabled
(
command
.
getBuildInfo
(),
command
.
getBuildInfo
(),
startPaused:
true
,
startPaused:
true
,
hostVmServicePort:
command
.
hostVmservicePort
,
hostVmServicePort:
(
webUri
!=
null
||
command
.
disableDds
)
?
command
.
hostVmservicePort
:
0
,
verboseSystemLogs:
command
.
verboseSystemLogs
,
verboseSystemLogs:
command
.
verboseSystemLogs
,
cacheSkSL:
command
.
cacheSkSL
,
cacheSkSL:
command
.
cacheSkSL
,
dumpSkpOnShaderCompilation:
command
.
dumpSkpOnShaderCompilation
,
dumpSkpOnShaderCompilation:
command
.
dumpSkpOnShaderCompilation
,
...
...
packages/flutter_tools/lib/src/commands/run.dart
View file @
c8f234d3
...
@@ -66,7 +66,12 @@ abstract class RunCommandBase extends FlutterCommand with DeviceBasedDevelopment
...
@@ -66,7 +66,12 @@ abstract class RunCommandBase extends FlutterCommand with DeviceBasedDevelopment
help:
'A file to write the attached vmservice uri to after an'
help:
'A file to write the attached vmservice uri to after an'
' application is started.'
,
' application is started.'
,
valueHelp:
'project/example/out.txt'
valueHelp:
'project/example/out.txt'
);
)
..
addFlag
(
'disable-service-auth-codes'
,
negatable:
false
,
hide:
!
verboseHelp
,
help:
'No longer require an authentication code to connect to the VM '
'service (not recommended).'
);
usesWebOptions
(
hide:
!
verboseHelp
);
usesWebOptions
(
hide:
!
verboseHelp
);
usesTargetOption
();
usesTargetOption
();
usesPortOptions
();
usesPortOptions
();
...
@@ -75,13 +80,14 @@ abstract class RunCommandBase extends FlutterCommand with DeviceBasedDevelopment
...
@@ -75,13 +80,14 @@ abstract class RunCommandBase extends FlutterCommand with DeviceBasedDevelopment
usesTrackWidgetCreation
(
verboseHelp:
verboseHelp
);
usesTrackWidgetCreation
(
verboseHelp:
verboseHelp
);
addNullSafetyModeOptions
(
hide:
!
verboseHelp
);
addNullSafetyModeOptions
(
hide:
!
verboseHelp
);
usesDeviceUserOption
();
usesDeviceUserOption
();
addDdsOptions
(
verboseHelp:
verboseHelp
);
}
}
bool
get
traceStartup
=>
boolArg
(
'trace-startup'
);
bool
get
traceStartup
=>
boolArg
(
'trace-startup'
);
bool
get
cacheSkSL
=>
boolArg
(
'cache-sksl'
);
bool
get
cacheSkSL
=>
boolArg
(
'cache-sksl'
);
bool
get
dumpSkpOnShaderCompilation
=>
boolArg
(
'dump-skp-on-shader-compilation'
);
bool
get
dumpSkpOnShaderCompilation
=>
boolArg
(
'dump-skp-on-shader-compilation'
);
bool
get
purgePersistentCache
=>
boolArg
(
'purge-persistent-cache'
);
bool
get
purgePersistentCache
=>
boolArg
(
'purge-persistent-cache'
);
bool
get
disableServiceAuthCodes
=>
boolArg
(
'disable-service-auth-codes'
);
String
get
route
=>
stringArg
(
'route'
);
String
get
route
=>
stringArg
(
'route'
);
}
}
...
@@ -205,11 +211,6 @@ class RunCommand extends RunCommandBase {
...
@@ -205,11 +211,6 @@ class RunCommand extends RunCommandBase {
'results out to "refresh_benchmark.json", and exit. This flag is '
'results out to "refresh_benchmark.json", and exit. This flag is '
'intended for use in generating automated flutter benchmarks.'
,
'intended for use in generating automated flutter benchmarks.'
,
)
)
..
addFlag
(
'disable-service-auth-codes'
,
negatable:
false
,
hide:
!
verboseHelp
,
help:
'No longer require an authentication code to connect to the VM '
'service (not recommended).'
)
..
addFlag
(
'web-initialize-platform'
,
..
addFlag
(
'web-initialize-platform'
,
negatable:
true
,
negatable:
true
,
defaultsTo:
true
,
defaultsTo:
true
,
...
@@ -226,7 +227,6 @@ class RunCommand extends RunCommandBase {
...
@@ -226,7 +227,6 @@ class RunCommand extends RunCommandBase {
'Currently this is only supported on Android devices. This option '
'Currently this is only supported on Android devices. This option '
'cannot be paired with --use-application-binary.'
'cannot be paired with --use-application-binary.'
);
);
addDdsOptions
(
verboseHelp:
verboseHelp
);
}
}
@override
@override
...
...
packages/flutter_tools/lib/src/commands/test.dart
View file @
c8f234d3
...
@@ -132,6 +132,7 @@ class TestCommand extends FlutterCommand {
...
@@ -132,6 +132,7 @@ class TestCommand extends FlutterCommand {
'This flag is ignored if --start-paused or coverage are requested. '
'This flag is ignored if --start-paused or coverage are requested. '
'The vmservice will be enabled no matter what in those cases.'
'The vmservice will be enabled no matter what in those cases.'
);
);
addDdsOptions
(
verboseHelp:
verboseHelp
);
}
}
/// The interface for starting and configuring the tester.
/// The interface for starting and configuring the tester.
...
@@ -275,6 +276,7 @@ class TestCommand extends FlutterCommand {
...
@@ -275,6 +276,7 @@ class TestCommand extends FlutterCommand {
enableObservatory:
collector
!=
null
||
startPaused
||
boolArg
(
'enable-vmservice'
),
enableObservatory:
collector
!=
null
||
startPaused
||
boolArg
(
'enable-vmservice'
),
startPaused:
startPaused
,
startPaused:
startPaused
,
disableServiceAuthCodes:
disableServiceAuthCodes
,
disableServiceAuthCodes:
disableServiceAuthCodes
,
disableDds:
disableDds
,
ipv6:
boolArg
(
'ipv6'
),
ipv6:
boolArg
(
'ipv6'
),
machine:
machine
,
machine:
machine
,
buildMode:
BuildMode
.
debug
,
buildMode:
BuildMode
.
debug
,
...
...
packages/flutter_tools/lib/src/desktop_device.dart
View file @
c8f234d3
...
@@ -134,7 +134,7 @@ abstract class DesktopDevice extends Device {
...
@@ -134,7 +134,7 @@ abstract class DesktopDevice extends Device {
}
}
final
ProtocolDiscovery
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
_deviceLogReader
,
final
ProtocolDiscovery
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
_deviceLogReader
,
devicePort:
debuggingOptions
?.
deviceVmServicePort
,
devicePort:
debuggingOptions
?.
deviceVmServicePort
,
hostPort:
debuggingOptions
?.
hostVmServicePort
,
hostPort:
(
debuggingOptions
?.
disableDds
??
false
)
?
debuggingOptions
?.
hostVmServicePort
:
0
,
ipv6:
ipv6
,
ipv6:
ipv6
,
);
);
try
{
try
{
...
...
packages/flutter_tools/lib/src/fuchsia/fuchsia_device.dart
View file @
c8f234d3
...
@@ -55,8 +55,14 @@ Future<vm_service.VmService> _kDefaultFuchsiaIsolateDiscoveryConnector(Uri uri)
...
@@ -55,8 +55,14 @@ Future<vm_service.VmService> _kDefaultFuchsiaIsolateDiscoveryConnector(Uri uri)
Future
<
void
>
_kDefaultDartDevelopmentServiceStarter
(
Future
<
void
>
_kDefaultDartDevelopmentServiceStarter
(
Device
device
,
Device
device
,
Uri
observatoryUri
,
Uri
observatoryUri
,
bool
disableServiceAuthCodes
,
)
async
{
)
async
{
await
device
.
dds
.
startDartDevelopmentService
(
observatoryUri
,
true
);
await
device
.
dds
.
startDartDevelopmentService
(
observatoryUri
,
0
,
true
,
disableServiceAuthCodes
,
);
}
}
/// Read the log for a particular device.
/// Read the log for a particular device.
...
@@ -738,7 +744,7 @@ class FuchsiaIsolateDiscoveryProtocol {
...
@@ -738,7 +744,7 @@ class FuchsiaIsolateDiscoveryProtocol {
final
String
_isolateName
;
final
String
_isolateName
;
final
Completer
<
Uri
>
_foundUri
=
Completer
<
Uri
>();
final
Completer
<
Uri
>
_foundUri
=
Completer
<
Uri
>();
final
Future
<
vm_service
.
VmService
>
Function
(
Uri
)
_vmServiceConnector
;
final
Future
<
vm_service
.
VmService
>
Function
(
Uri
)
_vmServiceConnector
;
final
Future
<
void
>
Function
(
Device
,
Uri
)
_ddsStarter
;
final
Future
<
void
>
Function
(
Device
,
Uri
,
bool
)
_ddsStarter
;
// whether to only poll once.
// whether to only poll once.
final
bool
_pollOnce
;
final
bool
_pollOnce
;
Timer
_pollingTimer
;
Timer
_pollingTimer
;
...
@@ -781,8 +787,8 @@ class FuchsiaIsolateDiscoveryProtocol {
...
@@ -781,8 +787,8 @@ class FuchsiaIsolateDiscoveryProtocol {
final
int
localPort
=
await
_device
.
portForwarder
.
forward
(
port
);
final
int
localPort
=
await
_device
.
portForwarder
.
forward
(
port
);
try
{
try
{
final
Uri
uri
=
Uri
.
parse
(
'http://[
$_ipv6Loopback
]:
$localPort
'
);
final
Uri
uri
=
Uri
.
parse
(
'http://[
$_ipv6Loopback
]:
$localPort
'
);
await
_ddsStarter
(
_device
,
uri
);
await
_ddsStarter
(
_device
,
uri
,
true
);
service
=
await
_vmServiceConnector
(
uri
);
service
=
await
_vmServiceConnector
(
_device
.
dds
.
uri
);
_ports
[
port
]
=
service
;
_ports
[
port
]
=
service
;
}
on
SocketException
catch
(
err
)
{
}
on
SocketException
catch
(
err
)
{
globals
.
printTrace
(
'Failed to connect to
$localPort
:
$err
'
);
globals
.
printTrace
(
'Failed to connect to
$localPort
:
$err
'
);
...
...
packages/flutter_tools/lib/src/ios/devices.dart
View file @
c8f234d3
...
@@ -399,7 +399,7 @@ class IOSDevice extends Device {
...
@@ -399,7 +399,7 @@ class IOSDevice extends Device {
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
getLogReader
(
app:
package
),
getLogReader
(
app:
package
),
portForwarder:
portForwarder
,
portForwarder:
portForwarder
,
hostPort:
debuggingOptions
.
hostVmServicePort
,
hostPort:
debuggingOptions
.
disableDds
?
debuggingOptions
.
hostVmServicePort
:
0
,
devicePort:
debuggingOptions
.
deviceVmServicePort
,
devicePort:
debuggingOptions
.
deviceVmServicePort
,
ipv6:
ipv6
,
ipv6:
ipv6
,
);
);
...
@@ -436,7 +436,7 @@ class IOSDevice extends Device {
...
@@ -436,7 +436,7 @@ class IOSDevice extends Device {
assumedDevicePort:
assumedObservatoryPort
,
assumedDevicePort:
assumedObservatoryPort
,
device:
this
,
device:
this
,
usesIpv6:
ipv6
,
usesIpv6:
ipv6
,
hostVmservicePort:
debuggingOptions
.
hostVmServicePort
,
hostVmservicePort:
debuggingOptions
.
disableDds
?
debuggingOptions
.
hostVmServicePort
:
0
,
packageId:
packageId
,
packageId:
packageId
,
packageName:
FlutterProject
.
current
().
manifest
.
appName
,
packageName:
FlutterProject
.
current
().
manifest
.
appName
,
);
);
...
...
packages/flutter_tools/lib/src/ios/simulators.dart
View file @
c8f234d3
...
@@ -424,8 +424,11 @@ class IOSSimulator extends Device {
...
@@ -424,8 +424,11 @@ class IOSSimulator extends Device {
if
(
debuggingOptions
.
skiaDeterministicRendering
)
'--skia-deterministic-rendering'
,
if
(
debuggingOptions
.
skiaDeterministicRendering
)
'--skia-deterministic-rendering'
,
if
(
debuggingOptions
.
useTestFonts
)
'--use-test-fonts'
,
if
(
debuggingOptions
.
useTestFonts
)
'--use-test-fonts'
,
if
(
debuggingOptions
.
traceAllowlist
!=
null
)
'--trace-allowlist="
${debuggingOptions.traceAllowlist}
"'
,
if
(
debuggingOptions
.
traceAllowlist
!=
null
)
'--trace-allowlist="
${debuggingOptions.traceAllowlist}
"'
,
if
(
dartVmFlags
.
isNotEmpty
)
'--dart-flags=
$dartVmFlags
'
if
(
dartVmFlags
.
isNotEmpty
)
'--dart-flags=
$dartVmFlags
'
,
'--observatory-port=
${debuggingOptions.hostVmServicePort ?? 0}
'
,
if
(
debuggingOptions
.
disableDds
)
'--observatory-port=
${debuggingOptions.hostVmServicePort ?? 0}
'
else
'--observatory-port=0'
],
],
];
];
...
@@ -434,7 +437,7 @@ class IOSSimulator extends Device {
...
@@ -434,7 +437,7 @@ class IOSSimulator extends Device {
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
getLogReader
(
app:
package
),
getLogReader
(
app:
package
),
ipv6:
ipv6
,
ipv6:
ipv6
,
hostPort:
debuggingOptions
.
hostVmServicePort
,
hostPort:
debuggingOptions
.
disableDds
?
debuggingOptions
.
hostVmServicePort
:
0
,
devicePort:
debuggingOptions
.
deviceVmServicePort
,
devicePort:
debuggingOptions
.
deviceVmServicePort
,
);
);
}
}
...
...
packages/flutter_tools/lib/src/mdns_discovery.dart
View file @
c8f234d3
...
@@ -239,7 +239,9 @@ Future<Uri> buildObservatoryUri(
...
@@ -239,7 +239,9 @@ Future<Uri> buildObservatoryUri(
if
(!
path
.
endsWith
(
'/'
))
{
if
(!
path
.
endsWith
(
'/'
))
{
path
+=
'/'
;
path
+=
'/'
;
}
}
final
int
actualHostPort
=
hostVmservicePort
??
await
device
hostVmservicePort
??=
0
;
.
portForwarder
.
forward
(
devicePort
);
final
int
actualHostPort
=
hostVmservicePort
==
0
?
await
device
.
portForwarder
.
forward
(
devicePort
)
:
hostVmservicePort
;
return
Uri
(
scheme:
'http'
,
host:
host
,
port:
actualHostPort
,
path:
path
);
return
Uri
(
scheme:
'http'
,
host:
host
,
port:
actualHostPort
,
path:
path
);
}
}
packages/flutter_tools/lib/src/resident_runner.dart
View file @
c8f234d3
...
@@ -205,6 +205,8 @@ class FlutterDevice {
...
@@ -205,6 +205,8 @@ class FlutterDevice {
ReloadMethod
reloadMethod
,
ReloadMethod
reloadMethod
,
GetSkSLMethod
getSkSLMethod
,
GetSkSLMethod
getSkSLMethod
,
PrintStructuredErrorLogMethod
printStructuredErrorLogMethod
,
PrintStructuredErrorLogMethod
printStructuredErrorLogMethod
,
int
hostVmServicePort
,
bool
disableServiceAuthCodes
=
false
,
bool
disableDds
=
false
,
bool
disableDds
=
false
,
bool
ipv6
=
false
,
bool
ipv6
=
false
,
})
{
})
{
...
@@ -220,12 +222,14 @@ class FlutterDevice {
...
@@ -220,12 +222,14 @@ class FlutterDevice {
if
(!
disableDds
)
{
if
(!
disableDds
)
{
await
device
.
dds
.
startDartDevelopmentService
(
await
device
.
dds
.
startDartDevelopmentService
(
observatoryUri
,
observatoryUri
,
hostVmServicePort
,
ipv6
,
ipv6
,
disableServiceAuthCodes
,
);
);
}
}
try
{
try
{
service
=
await
connectToVmService
(
service
=
await
connectToVmService
(
observatoryU
ri
,
disableDds
?
observatoryUri
:
device
.
dds
.
u
ri
,
reloadSources:
reloadSources
,
reloadSources:
reloadSources
,
restart:
restart
,
restart:
restart
,
compileExpression:
compileExpression
,
compileExpression:
compileExpression
,
...
@@ -1232,10 +1236,12 @@ abstract class ResidentRunner {
...
@@ -1232,10 +1236,12 @@ abstract class ResidentRunner {
restart:
restart
,
restart:
restart
,
compileExpression:
compileExpression
,
compileExpression:
compileExpression
,
disableDds:
debuggingOptions
.
disableDds
,
disableDds:
debuggingOptions
.
disableDds
,
hostVmServicePort:
debuggingOptions
.
hostVmServicePort
,
reloadMethod:
reloadMethod
,
reloadMethod:
reloadMethod
,
getSkSLMethod:
getSkSLMethod
,
getSkSLMethod:
getSkSLMethod
,
printStructuredErrorLogMethod:
printStructuredErrorLog
,
printStructuredErrorLogMethod:
printStructuredErrorLog
,
ipv6:
ipv6
,
ipv6:
ipv6
,
disableServiceAuthCodes:
debuggingOptions
.
disableServiceAuthCodes
);
);
// This will wait for at least one flutter view before returning.
// This will wait for at least one flutter view before returning.
final
Status
status
=
globals
.
logger
.
startProgress
(
final
Status
status
=
globals
.
logger
.
startProgress
(
...
...
packages/flutter_tools/lib/src/runner/flutter_command.dart
View file @
c8f234d3
...
@@ -314,6 +314,8 @@ abstract class FlutterCommand extends Command<void> {
...
@@ -314,6 +314,8 @@ abstract class FlutterCommand extends Command<void> {
);
);
}
}
bool
get
disableDds
=>
boolArg
(
'disable-dds'
);
/// Gets the vmservice port provided to in the 'observatory-port' or
/// Gets the vmservice port provided to in the 'observatory-port' or
/// 'host-vmservice-port option.
/// 'host-vmservice-port option.
///
///
...
...
packages/flutter_tools/lib/src/test/flutter_platform.dart
View file @
c8f234d3
...
@@ -4,6 +4,7 @@
...
@@ -4,6 +4,7 @@
import
'dart:async'
;
import
'dart:async'
;
import
'package:dds/dds.dart'
;
import
'package:meta/meta.dart'
;
import
'package:meta/meta.dart'
;
import
'package:package_config/package_config.dart'
;
import
'package:package_config/package_config.dart'
;
import
'package:stream_channel/stream_channel.dart'
;
import
'package:stream_channel/stream_channel.dart'
;
...
@@ -52,6 +53,7 @@ FlutterPlatform installHook({
...
@@ -52,6 +53,7 @@ FlutterPlatform installHook({
bool
machine
=
false
,
bool
machine
=
false
,
bool
startPaused
=
false
,
bool
startPaused
=
false
,
bool
disableServiceAuthCodes
=
false
,
bool
disableServiceAuthCodes
=
false
,
bool
disableDds
=
false
,
int
port
=
0
,
int
port
=
0
,
String
precompiledDillPath
,
String
precompiledDillPath
,
Map
<
String
,
String
>
precompiledDillFiles
,
Map
<
String
,
String
>
precompiledDillFiles
,
...
@@ -89,6 +91,7 @@ FlutterPlatform installHook({
...
@@ -89,6 +91,7 @@ FlutterPlatform installHook({
enableObservatory:
enableObservatory
,
enableObservatory:
enableObservatory
,
startPaused:
startPaused
,
startPaused:
startPaused
,
disableServiceAuthCodes:
disableServiceAuthCodes
,
disableServiceAuthCodes:
disableServiceAuthCodes
,
disableDds:
disableDds
,
explicitObservatoryPort:
observatoryPort
,
explicitObservatoryPort:
observatoryPort
,
host:
_kHosts
[
serverType
],
host:
_kHosts
[
serverType
],
port:
port
,
port:
port
,
...
@@ -233,6 +236,7 @@ class FlutterPlatform extends PlatformPlugin {
...
@@ -233,6 +236,7 @@ class FlutterPlatform extends PlatformPlugin {
this.machine,
this.machine,
this.startPaused,
this.startPaused,
this.disableServiceAuthCodes,
this.disableServiceAuthCodes,
this.disableDds,
this.explicitObservatoryPort,
this.explicitObservatoryPort,
this.host,
this.host,
this.port,
this.port,
...
@@ -255,6 +259,7 @@ class FlutterPlatform extends PlatformPlugin {
...
@@ -255,6 +259,7 @@ class FlutterPlatform extends PlatformPlugin {
final bool machine;
final bool machine;
final bool startPaused;
final bool startPaused;
final bool disableServiceAuthCodes;
final bool disableServiceAuthCodes;
final bool disableDds;
final int explicitObservatoryPort;
final int explicitObservatoryPort;
final InternetAddress host;
final InternetAddress host;
final int port;
final int port;
...
@@ -402,7 +407,7 @@ class FlutterPlatform extends PlatformPlugin {
...
@@ -402,7 +407,7 @@ class FlutterPlatform extends PlatformPlugin {
controllerSinkClosed
=
true
;
controllerSinkClosed
=
true
;
}));
}));
// Prepare our WebSocket server to talk to the engine subproces.
// Prepare our WebSocket server to talk to the engine subproces
s
.
final
HttpServer
server
=
await
bind
(
host
,
port
);
final
HttpServer
server
=
await
bind
(
host
,
port
);
finalizers
.
add
(()
async
{
finalizers
.
add
(()
async
{
globals
.
printTrace
(
'test
$ourTestCount
: shutting down test harness socket server'
);
globals
.
printTrace
(
'test
$ourTestCount
: shutting down test harness socket server'
);
...
@@ -496,15 +501,16 @@ class FlutterPlatform extends PlatformPlugin {
...
@@ -496,15 +501,16 @@ class FlutterPlatform extends PlatformPlugin {
assert
(
processObservatoryUri
==
null
);
assert
(
processObservatoryUri
==
null
);
assert
(
explicitObservatoryPort
==
null
||
assert
(
explicitObservatoryPort
==
null
||
explicitObservatoryPort
==
detectedUri
.
port
);
explicitObservatoryPort
==
detectedUri
.
port
);
if
(
startPaused
&&
!
machine
)
{
if
(!
disableDds
)
{
globals
.
printStatus
(
'The test process has been started.'
);
final
DartDevelopmentService
dds
=
await
DartDevelopmentService
.
startDartDevelopmentService
(
globals
.
printStatus
(
'You can now connect to it using observatory. To connect, load the following Web site in your browser:'
);
detectedUri
,
globals
.
printStatus
(
'
$detectedUri
'
);
enableAuthCodes:
!
disableServiceAuthCodes
,
globals
.
printStatus
(
'You should first set appropriate breakpoints, then resume the test in the debugger.'
);
);
processObservatoryUri
=
dds
.
uri
;
globals
.
printTrace
(
'Dart Development Service started at
${dds.uri}
, forwarding to VM service at
${dds.remoteVmServiceUri}
.'
);
}
else
{
}
else
{
globals
.
printTrace
(
'test
$ourTestCount
: using observatory uri
$detectedUri
from pid
${process.pid}
'
)
;
processObservatoryUri
=
detectedUri
;
}
}
processObservatoryUri
=
detectedUri
;
{
{
globals
.
printTrace
(
'Connecting to service protocol:
$processObservatoryUri
'
);
globals
.
printTrace
(
'Connecting to service protocol:
$processObservatoryUri
'
);
final
Future
<
vm_service
.
VmService
>
localVmService
=
connectToVmService
(
processObservatoryUri
,
final
Future
<
vm_service
.
VmService
>
localVmService
=
connectToVmService
(
processObservatoryUri
,
...
@@ -513,6 +519,14 @@ class FlutterPlatform extends PlatformPlugin {
...
@@ -513,6 +519,14 @@ class FlutterPlatform extends PlatformPlugin {
globals
.
printTrace
(
'Successfully connected to service protocol:
$processObservatoryUri
'
);
globals
.
printTrace
(
'Successfully connected to service protocol:
$processObservatoryUri
'
);
}));
}));
}
}
if
(
startPaused
&&
!
machine
)
{
globals
.
printStatus
(
'The test process has been started.'
);
globals
.
printStatus
(
'You can now connect to it using observatory. To connect, load the following Web site in your browser:'
);
globals
.
printStatus
(
'
$processObservatoryUri
'
);
globals
.
printStatus
(
'You should first set appropriate breakpoints, then resume the test in the debugger.'
);
}
else
{
globals
.
printTrace
(
'test
$ourTestCount
: using observatory uri
$processObservatoryUri
from pid
${process.pid}
'
);
}
gotProcessObservatoryUri
.
complete
();
gotProcessObservatoryUri
.
complete
();
watcher
?.
handleStartedProcess
(
watcher
?.
handleStartedProcess
(
ProcessEvent
(
ourTestCount
,
process
,
processObservatoryUri
));
ProcessEvent
(
ourTestCount
,
process
,
processObservatoryUri
));
...
...
packages/flutter_tools/lib/src/test/runner.dart
View file @
c8f234d3
...
@@ -36,6 +36,7 @@ abstract class FlutterTestRunner {
...
@@ -36,6 +36,7 @@ abstract class FlutterTestRunner {
bool
enableObservatory
=
false
,
bool
enableObservatory
=
false
,
bool
startPaused
=
false
,
bool
startPaused
=
false
,
bool
disableServiceAuthCodes
=
false
,
bool
disableServiceAuthCodes
=
false
,
bool
disableDds
=
false
,
bool
ipv6
=
false
,
bool
ipv6
=
false
,
bool
machine
=
false
,
bool
machine
=
false
,
String
precompiledDillPath
,
String
precompiledDillPath
,
...
@@ -71,6 +72,7 @@ class _FlutterTestRunnerImpl implements FlutterTestRunner {
...
@@ -71,6 +72,7 @@ class _FlutterTestRunnerImpl implements FlutterTestRunner {
bool
enableObservatory
=
false
,
bool
enableObservatory
=
false
,
bool
startPaused
=
false
,
bool
startPaused
=
false
,
bool
disableServiceAuthCodes
=
false
,
bool
disableServiceAuthCodes
=
false
,
bool
disableDds
=
false
,
bool
ipv6
=
false
,
bool
ipv6
=
false
,
bool
machine
=
false
,
bool
machine
=
false
,
String
precompiledDillPath
,
String
precompiledDillPath
,
...
@@ -169,6 +171,7 @@ class _FlutterTestRunnerImpl implements FlutterTestRunner {
...
@@ -169,6 +171,7 @@ class _FlutterTestRunnerImpl implements FlutterTestRunner {
machine:
machine
,
machine:
machine
,
startPaused:
startPaused
,
startPaused:
startPaused
,
disableServiceAuthCodes:
disableServiceAuthCodes
,
disableServiceAuthCodes:
disableServiceAuthCodes
,
disableDds:
disableDds
,
serverType:
serverType
,
serverType:
serverType
,
precompiledDillPath:
precompiledDillPath
,
precompiledDillPath:
precompiledDillPath
,
precompiledDillFiles:
precompiledDillFiles
,
precompiledDillFiles:
precompiledDillFiles
,
...
...
packages/flutter_tools/lib/src/tester/flutter_tester.dart
View file @
c8f234d3
...
@@ -178,7 +178,7 @@ class FlutterTesterDevice extends Device {
...
@@ -178,7 +178,7 @@ class FlutterTesterDevice extends Device {
if
(
debuggingOptions
.
disableServiceAuthCodes
)
if
(
debuggingOptions
.
disableServiceAuthCodes
)
'--disable-service-auth-codes'
,
'--disable-service-auth-codes'
,
if
(
debuggingOptions
.
hasObservatoryPort
)
if
(
debuggingOptions
.
hasObservatoryPort
)
'--observatory-port=
${debuggingOptions.
hostVmServicePort
}
'
,
'--observatory-port=
${debuggingOptions.
disableDds ? debuggingOptions.hostVmServicePort : 0
}
'
,
applicationKernelFilePath
applicationKernelFilePath
];
];
...
@@ -205,7 +205,7 @@ class FlutterTesterDevice extends Device {
...
@@ -205,7 +205,7 @@ class FlutterTesterDevice extends Device {
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
observatoryDiscovery
=
ProtocolDiscovery
.
observatory
(
getLogReader
(),
getLogReader
(),
hostPort:
debuggingOptions
.
hostVmServicePort
,
hostPort:
debuggingOptions
.
disableDds
?
debuggingOptions
.
hostVmServicePort
:
0
,
devicePort:
debuggingOptions
.
deviceVmServicePort
,
devicePort:
debuggingOptions
.
deviceVmServicePort
,
ipv6:
ipv6
,
ipv6:
ipv6
,
);
);
...
...
packages/flutter_tools/test/commands.shard/hermetic/attach_test.dart
View file @
c8f234d3
...
@@ -90,8 +90,8 @@ void main() {
...
@@ -90,8 +90,8 @@ void main() {
when
(
portForwarder
.
unforward
(
any
))
when
(
portForwarder
.
unforward
(
any
))
.
thenAnswer
((
_
)
async
{});
.
thenAnswer
((
_
)
async
{});
when
(
device
.
dds
).
thenReturn
(
mockDds
);
when
(
device
.
dds
).
thenReturn
(
mockDds
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
false
)).
thenReturn
(
null
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
,
false
,
any
)).
thenReturn
(
null
);
when
(
mockDds
.
uri
).
thenReturn
(
Uri
.
parse
(
'http://localhost:8181'
));
final
HttpClientRequest
httpClientRequest
=
MockHttpClientRequest
();
final
HttpClientRequest
httpClientRequest
=
MockHttpClientRequest
();
httpClient
=
MockHttpClient
();
httpClient
=
MockHttpClient
();
when
(
httpClient
.
putUrl
(
any
))
when
(
httpClient
.
putUrl
(
any
))
...
@@ -317,7 +317,8 @@ void main() {
...
@@ -317,7 +317,8 @@ void main() {
)).
thenReturn
(
mockHotRunner
);
)).
thenReturn
(
mockHotRunner
);
when
(
mockHotRunner
.
exited
).
thenReturn
(
false
);
when
(
mockHotRunner
.
exited
).
thenReturn
(
false
);
when
(
mockHotRunner
.
isWaitingForObservatory
).
thenReturn
(
false
);
when
(
mockHotRunner
.
isWaitingForObservatory
).
thenReturn
(
false
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
false
)).
thenReturn
(
null
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
,
false
,
any
)).
thenReturn
(
null
);
when
(
mockDds
.
uri
).
thenReturn
(
Uri
.
parse
(
'http://localhost:8181'
));
testDeviceManager
.
addDevice
(
device
);
testDeviceManager
.
addDevice
(
device
);
when
(
device
.
getLogReader
(
includePastLogs:
anyNamed
(
'includePastLogs'
)))
when
(
device
.
getLogReader
(
includePastLogs:
anyNamed
(
'includePastLogs'
)))
...
@@ -396,7 +397,8 @@ void main() {
...
@@ -396,7 +397,8 @@ void main() {
)).
thenReturn
(
mockHotRunner
);
)).
thenReturn
(
mockHotRunner
);
when
(
mockHotRunner
.
exited
).
thenReturn
(
false
);
when
(
mockHotRunner
.
exited
).
thenReturn
(
false
);
when
(
mockHotRunner
.
isWaitingForObservatory
).
thenReturn
(
false
);
when
(
mockHotRunner
.
isWaitingForObservatory
).
thenReturn
(
false
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
false
)).
thenReturn
(
null
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
,
false
,
any
)).
thenReturn
(
null
);
when
(
mockDds
.
uri
).
thenReturn
(
Uri
.
parse
(
'http://localhost:8181'
));
testDeviceManager
.
addDevice
(
device
);
testDeviceManager
.
addDevice
(
device
);
...
@@ -442,8 +444,9 @@ void main() {
...
@@ -442,8 +444,9 @@ void main() {
.
thenAnswer
((
_
)
async
{});
.
thenAnswer
((
_
)
async
{});
when
(
device
.
dds
)
when
(
device
.
dds
)
.
thenReturn
(
mockDds
);
.
thenReturn
(
mockDds
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
))
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
,
any
,
any
))
.
thenReturn
(
null
);
.
thenReturn
(
null
);
when
(
mockDds
.
uri
).
thenReturn
(
Uri
.
parse
(
'http://localhost:8181'
));
});
});
testUsingContext
(
'succeeds in ipv4 mode'
,
()
async
{
testUsingContext
(
'succeeds in ipv4 mode'
,
()
async
{
...
...
packages/flutter_tools/test/commands.shard/hermetic/drive_test.dart
View file @
c8f234d3
...
@@ -71,7 +71,8 @@ void main() {
...
@@ -71,7 +71,8 @@ void main() {
void
applyDdsMocks
(
Device
device
)
{
void
applyDdsMocks
(
Device
device
)
{
final
MockDartDevelopmentService
mockDds
=
MockDartDevelopmentService
();
final
MockDartDevelopmentService
mockDds
=
MockDartDevelopmentService
();
when
(
device
.
dds
).
thenReturn
(
mockDds
);
when
(
device
.
dds
).
thenReturn
(
mockDds
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
)).
thenReturn
(
null
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
,
any
,
any
)).
thenReturn
(
null
);
when
(
mockDds
.
uri
).
thenReturn
(
Uri
.
parse
(
'http://localhost:8181'
));
}
}
testUsingContext
(
'returns 1 when test file is not found'
,
()
async
{
testUsingContext
(
'returns 1 when test file is not found'
,
()
async
{
...
@@ -224,6 +225,7 @@ void main() {
...
@@ -224,6 +225,7 @@ void main() {
'drive'
,
'drive'
,
'--target=
$testApp
'
,
'--target=
$testApp
'
,
'--no-pub'
,
'--no-pub'
,
'--disable-dds'
,
'--device-user'
,
'--device-user'
,
'10'
,
'10'
,
];
];
...
...
packages/flutter_tools/test/commands.shard/hermetic/test_test.dart
View file @
c8f234d3
...
@@ -168,6 +168,7 @@ class FakeFlutterTestRunner implements FlutterTestRunner {
...
@@ -168,6 +168,7 @@ class FakeFlutterTestRunner implements FlutterTestRunner {
String
excludeTags
,
String
excludeTags
,
bool
enableObservatory
=
false
,
bool
enableObservatory
=
false
,
bool
startPaused
=
false
,
bool
startPaused
=
false
,
bool
disableDds
=
false
,
bool
disableServiceAuthCodes
=
false
,
bool
disableServiceAuthCodes
=
false
,
bool
ipv6
=
false
,
bool
ipv6
=
false
,
bool
machine
=
false
,
bool
machine
=
false
,
...
...
packages/flutter_tools/test/general.shard/cold_test.dart
View file @
c8f234d3
...
@@ -140,6 +140,8 @@ class TestFlutterDevice extends FlutterDevice {
...
@@ -140,6 +140,8 @@ class TestFlutterDevice extends FlutterDevice {
GetSkSLMethod
getSkSLMethod
,
GetSkSLMethod
getSkSLMethod
,
PrintStructuredErrorLogMethod
printStructuredErrorLogMethod
,
PrintStructuredErrorLogMethod
printStructuredErrorLogMethod
,
bool
disableDds
=
false
,
bool
disableDds
=
false
,
bool
disableServiceAuthCodes
=
false
,
int
hostVmServicePort
,
bool
ipv6
=
false
,
bool
ipv6
=
false
,
})
async
{
})
async
{
throw
exception
;
throw
exception
;
...
...
packages/flutter_tools/test/general.shard/fuchsia/fuchsia_device_test.dart
View file @
c8f234d3
...
@@ -10,6 +10,7 @@ import 'package:flutter_tools/src/application_package.dart';
...
@@ -10,6 +10,7 @@ import 'package:flutter_tools/src/application_package.dart';
import
'package:flutter_tools/src/artifacts.dart'
;
import
'package:flutter_tools/src/artifacts.dart'
;
import
'package:flutter_tools/src/base/common.dart'
;
import
'package:flutter_tools/src/base/common.dart'
;
import
'package:flutter_tools/src/base/context.dart'
;
import
'package:flutter_tools/src/base/context.dart'
;
import
'package:flutter_tools/src/base/dds.dart'
;
import
'package:flutter_tools/src/base/file_system.dart'
;
import
'package:flutter_tools/src/base/file_system.dart'
;
import
'package:flutter_tools/src/base/io.dart'
;
import
'package:flutter_tools/src/base/io.dart'
;
import
'package:flutter_tools/src/base/logger.dart'
;
import
'package:flutter_tools/src/base/logger.dart'
;
...
@@ -769,10 +770,13 @@ void main() {
...
@@ -769,10 +770,13 @@ void main() {
fuchsiaDevice
,
fuchsiaDevice
,
expectedIsolateName
,
expectedIsolateName
,
(
Uri
uri
)
async
=>
fakeVmServiceHost
.
vmService
,
(
Uri
uri
)
async
=>
fakeVmServiceHost
.
vmService
,
(
Device
device
,
Uri
uri
)
=>
null
,
(
Device
device
,
Uri
uri
,
bool
enableServiceAuthCodes
)
=>
null
,
true
,
// only poll once.
true
,
// only poll once.
);
);
final
MockDartDevelopmentService
mockDds
=
MockDartDevelopmentService
();
when
(
fuchsiaDevice
.
dds
).
thenReturn
(
mockDds
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
,
any
,
any
)).
thenReturn
(
null
);
when
(
mockDds
.
uri
).
thenReturn
(
Uri
.
parse
(
'example'
));
when
(
fuchsiaDevice
.
servicePorts
())
when
(
fuchsiaDevice
.
servicePorts
())
.
thenAnswer
((
Invocation
invocation
)
async
=>
<
int
>[
1
]);
.
thenAnswer
((
Invocation
invocation
)
async
=>
<
int
>[
1
]);
when
(
portForwarder
.
forward
(
1
))
when
(
portForwarder
.
forward
(
1
))
...
@@ -1600,5 +1604,6 @@ class MockFuchsiaSdk extends Mock implements FuchsiaSdk {
...
@@ -1600,5 +1604,6 @@ class MockFuchsiaSdk extends Mock implements FuchsiaSdk {
final
FuchsiaDevFinder
fuchsiaDevFinder
;
final
FuchsiaDevFinder
fuchsiaDevFinder
;
}
}
class
MockDartDevelopmentService
extends
Mock
implements
DartDevelopmentService
{}
class
MockFuchsiaWorkflow
extends
Mock
implements
FuchsiaWorkflow
{}
class
MockFuchsiaWorkflow
extends
Mock
implements
FuchsiaWorkflow
{}
class
MockCache
extends
Mock
implements
Cache
{}
class
MockCache
extends
Mock
implements
Cache
{}
packages/flutter_tools/test/general.shard/hot_test.dart
View file @
c8f234d3
...
@@ -578,8 +578,10 @@ class TestFlutterDevice extends FlutterDevice {
...
@@ -578,8 +578,10 @@ class TestFlutterDevice extends FlutterDevice {
ReloadMethod
reloadMethod
,
ReloadMethod
reloadMethod
,
GetSkSLMethod
getSkSLMethod
,
GetSkSLMethod
getSkSLMethod
,
PrintStructuredErrorLogMethod
printStructuredErrorLogMethod
,
PrintStructuredErrorLogMethod
printStructuredErrorLogMethod
,
bool
disableServiceAuthCodes
=
false
,
bool
disableDds
=
false
,
bool
disableDds
=
false
,
bool
ipv6
=
false
,
bool
ipv6
=
false
,
int
hostVmServicePort
})
async
{
})
async
{
throw
exception
;
throw
exception
;
}
}
...
...
packages/flutter_tools/test/general.shard/ios/ios_device_start_prebuilt_test.dart
View file @
c8f234d3
...
@@ -7,6 +7,7 @@ import 'dart:async';
...
@@ -7,6 +7,7 @@ import 'dart:async';
import
'package:file/memory.dart'
;
import
'package:file/memory.dart'
;
import
'package:flutter_tools/src/application_package.dart'
;
import
'package:flutter_tools/src/application_package.dart'
;
import
'package:flutter_tools/src/artifacts.dart'
;
import
'package:flutter_tools/src/artifacts.dart'
;
import
'package:flutter_tools/src/base/dds.dart'
;
import
'package:flutter_tools/src/base/file_system.dart'
;
import
'package:flutter_tools/src/base/file_system.dart'
;
import
'package:flutter_tools/src/base/io.dart'
as
io
;
import
'package:flutter_tools/src/base/io.dart'
as
io
;
import
'package:flutter_tools/src/base/logger.dart'
;
import
'package:flutter_tools/src/base/logger.dart'
;
...
@@ -135,7 +136,8 @@ void main() {
...
@@ -135,7 +136,8 @@ void main() {
when
(
MDnsObservatoryDiscovery
.
instance
.
getObservatoryUri
(
when
(
MDnsObservatoryDiscovery
.
instance
.
getObservatoryUri
(
any
,
any
,
any
,
any
,
usesIpv6:
anyNamed
(
'usesIpv6'
)
usesIpv6:
anyNamed
(
'usesIpv6'
),
hostVmservicePort:
anyNamed
(
'hostVmservicePort'
)
)).
thenAnswer
((
Invocation
invocation
)
async
=>
uri
);
)).
thenAnswer
((
Invocation
invocation
)
async
=>
uri
);
final
LaunchResult
launchResult
=
await
device
.
startApp
(
iosApp
,
final
LaunchResult
launchResult
=
await
device
.
startApp
(
iosApp
,
...
@@ -367,6 +369,7 @@ void main() {
...
@@ -367,6 +369,7 @@ void main() {
any
,
any
,
any
,
any
,
usesIpv6:
anyNamed
(
'usesIpv6'
),
usesIpv6:
anyNamed
(
'usesIpv6'
),
hostVmservicePort:
anyNamed
(
'hostVmservicePort'
)
)).
thenAnswer
((
Invocation
invocation
)
async
=>
uri
);
)).
thenAnswer
((
Invocation
invocation
)
async
=>
uri
);
final
LaunchResult
launchResult
=
await
device
.
startApp
(
iosApp
,
final
LaunchResult
launchResult
=
await
device
.
startApp
(
iosApp
,
...
@@ -454,3 +457,4 @@ class MockMDnsObservatoryDiscovery extends Mock implements MDnsObservatoryDiscov
...
@@ -454,3 +457,4 @@ class MockMDnsObservatoryDiscovery extends Mock implements MDnsObservatoryDiscov
class
MockArtifacts
extends
Mock
implements
Artifacts
{}
class
MockArtifacts
extends
Mock
implements
Artifacts
{}
class
MockCache
extends
Mock
implements
Cache
{}
class
MockCache
extends
Mock
implements
Cache
{}
class
MockVmService
extends
Mock
implements
VmService
{}
class
MockVmService
extends
Mock
implements
VmService
{}
class
MockDartDevelopmentService
extends
Mock
implements
DartDevelopmentService
{}
\ No newline at end of file
packages/flutter_tools/test/general.shard/mdns_discovery_test.dart
View file @
c8f234d3
...
@@ -5,6 +5,7 @@
...
@@ -5,6 +5,7 @@
import
'dart:async'
;
import
'dart:async'
;
import
'package:flutter_tools/src/base/io.dart'
;
import
'package:flutter_tools/src/base/io.dart'
;
import
'package:flutter_tools/src/device.dart'
;
import
'package:flutter_tools/src/mdns_discovery.dart'
;
import
'package:flutter_tools/src/mdns_discovery.dart'
;
import
'package:mockito/mockito.dart'
;
import
'package:mockito/mockito.dart'
;
import
'package:multicast_dns/multicast_dns.dart'
;
import
'package:multicast_dns/multicast_dns.dart'
;
...
@@ -207,6 +208,25 @@ void main() {
...
@@ -207,6 +208,25 @@ void main() {
throwsA
(
isA
<
Exception
>()),
throwsA
(
isA
<
Exception
>()),
);
);
});
});
testUsingContext
(
'Correctly builds Observatory URI with hostVmservicePort == 0'
,
()
async
{
final
MDnsClient
client
=
getMockClient
(
<
PtrResourceRecord
>[
PtrResourceRecord
(
'foo'
,
year3000
,
domainName:
'bar'
),
],
<
String
,
List
<
SrvResourceRecord
>>{
'bar'
:
<
SrvResourceRecord
>[
SrvResourceRecord
(
'bar'
,
year3000
,
port:
123
,
weight:
1
,
priority:
1
,
target:
'appId'
),
],
},
);
final
MockIOSDevice
mockDevice
=
MockIOSDevice
();
when
(
mockDevice
.
portForwarder
).
thenReturn
(
const
NoOpDevicePortForwarder
());
final
MDnsObservatoryDiscovery
portDiscovery
=
MDnsObservatoryDiscovery
(
mdnsClient:
client
);
final
Uri
uri
=
await
portDiscovery
.
getObservatoryUri
(
'bar'
,
mockDevice
,
hostVmservicePort:
0
);
expect
(
uri
.
toString
(),
'http://127.0.0.1:123/'
);
});
});
});
}
}
...
...
packages/flutter_tools/test/general.shard/resident_runner_test.dart
View file @
c8f234d3
...
@@ -2097,7 +2097,8 @@ void main() {
...
@@ -2097,7 +2097,8 @@ void main() {
final
MockDeviceLogReader
mockLogReader
=
MockDeviceLogReader
();
final
MockDeviceLogReader
mockLogReader
=
MockDeviceLogReader
();
when
(
mockDevice
.
getLogReader
(
app:
anyNamed
(
'app'
))).
thenReturn
(
mockLogReader
);
when
(
mockDevice
.
getLogReader
(
app:
anyNamed
(
'app'
))).
thenReturn
(
mockLogReader
);
when
(
mockDevice
.
dds
).
thenReturn
(
mockDds
);
when
(
mockDevice
.
dds
).
thenReturn
(
mockDds
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
)).
thenReturn
(
null
);
when
(
mockDds
.
startDartDevelopmentService
(
any
,
any
,
any
,
any
)).
thenReturn
(
null
);
when
(
mockDds
.
uri
).
thenReturn
(
Uri
.
parse
(
'http://localhost:8181'
));
final
TestFlutterDevice
flutterDevice
=
TestFlutterDevice
(
final
TestFlutterDevice
flutterDevice
=
TestFlutterDevice
(
mockDevice
,
mockDevice
,
...
@@ -2184,10 +2185,12 @@ class FakeFlutterDevice extends FlutterDevice {
...
@@ -2184,10 +2185,12 @@ class FakeFlutterDevice extends FlutterDevice {
ReloadSources
reloadSources
,
ReloadSources
reloadSources
,
Restart
restart
,
Restart
restart
,
bool
disableDds
=
false
,
bool
disableDds
=
false
,
bool
disableServiceAuthCodes
=
false
,
bool
ipv6
=
false
,
bool
ipv6
=
false
,
CompileExpression
compileExpression
,
CompileExpression
compileExpression
,
ReloadMethod
reloadMethod
,
ReloadMethod
reloadMethod
,
GetSkSLMethod
getSkSLMethod
,
GetSkSLMethod
getSkSLMethod
,
int
hostVmServicePort
,
PrintStructuredErrorLogMethod
printStructuredErrorLogMethod
,
PrintStructuredErrorLogMethod
printStructuredErrorLogMethod
,
})
async
{
}
})
async
{
}
...
...
packages/flutter_tools/test/integration.shard/vmservice_integration_test.dart
View file @
c8f234d3
...
@@ -6,7 +6,6 @@ import 'dart:async';
...
@@ -6,7 +6,6 @@ import 'dart:async';
import
'dart:io'
;
// ignore: dart_io_import
import
'dart:io'
;
// ignore: dart_io_import
import
'package:file/file.dart'
;
import
'package:file/file.dart'
;
import
'package:flutter_tools/src/base/dds.dart'
;
import
'package:flutter_tools/src/base/file_system.dart'
;
import
'package:flutter_tools/src/base/file_system.dart'
;
import
'package:matcher/matcher.dart'
;
import
'package:matcher/matcher.dart'
;
import
'package:vm_service/vm_service.dart'
;
import
'package:vm_service/vm_service.dart'
;
...
@@ -47,7 +46,7 @@ void main() {
...
@@ -47,7 +46,7 @@ void main() {
for
(
final
Protocol
protocol
in
protocolList
.
protocols
)
{
for
(
final
Protocol
protocol
in
protocolList
.
protocols
)
{
expect
(
protocol
.
protocolName
,
anyOf
(
'VM Service'
,
'DDS'
));
expect
(
protocol
.
protocolName
,
anyOf
(
'VM Service'
,
'DDS'
));
}
}
}
,
skip:
DartDevelopmentService
.
ddsDisabled
);
});
test
(
'flutterVersion can be called'
,
()
async
{
test
(
'flutterVersion can be called'
,
()
async
{
final
Response
response
=
final
Response
response
=
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment