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
dce8f712
Unverified
Commit
dce8f712
authored
Feb 13, 2021
by
Jonah Williams
Committed by
GitHub
Feb 13, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[flutter_tools] do not use context logger in gradle (#75940)
parent
835c7fab
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
90 additions
and
56 deletions
+90
-56
gradle.dart
packages/flutter_tools/lib/src/android/gradle.dart
+41
-42
application_package.dart
packages/flutter_tools/lib/src/application_package.dart
+1
-1
logger.dart
packages/flutter_tools/lib/src/base/logger.dart
+2
-2
terminal.dart
packages/flutter_tools/lib/src/base/terminal.dart
+3
-3
context_runner.dart
packages/flutter_tools/lib/src/context_runner.dart
+3
-1
android_gradle_builder_test.dart
...st/general.shard/android/android_gradle_builder_test.dart
+9
-4
gradle_test.dart
...flutter_tools/test/general.shard/android/gradle_test.dart
+5
-3
logger_test.dart
...es/flutter_tools/test/general.shard/base/logger_test.dart
+26
-0
No files found.
packages/flutter_tools/lib/src/android/gradle.dart
View file @
dce8f712
This diff is collapsed.
Click to expand it.
packages/flutter_tools/lib/src/application_package.dart
View file @
dce8f712
...
...
@@ -65,7 +65,7 @@ class ApplicationPackageFactory {
case
TargetPlatform
.
android_x64
:
case
TargetPlatform
.
android_x86
:
if
(
_androidSdk
?.
licensesAvailable
==
true
&&
_androidSdk
?.
latestVersion
==
null
)
{
await
checkGradleDependencies
();
await
checkGradleDependencies
(
_logger
);
}
if
(
applicationBinary
==
null
)
{
return
await
AndroidApk
.
fromAndroidProject
(
...
...
packages/flutter_tools/lib/src/base/logger.dart
View file @
dce8f712
...
...
@@ -413,7 +413,6 @@ class WindowsStdoutLogger extends StdoutLogger {
@override
void
writeToStdOut
(
String
message
)
{
// TODO(jcollins-g): wrong abstraction layer for this, move to [Stdio].
final
String
windowsMessage
=
_terminal
.
supportsEmoji
?
message
:
message
.
replaceAll
(
'🔥'
,
''
)
...
...
@@ -421,7 +420,8 @@ class WindowsStdoutLogger extends StdoutLogger {
.
replaceAll
(
'✗'
,
'X'
)
.
replaceAll
(
'✓'
,
'√'
)
.
replaceAll
(
'🔨'
,
''
)
.
replaceAll
(
'💪'
,
''
);
.
replaceAll
(
'💪'
,
''
)
.
replaceAll
(
'✏️'
,
''
);
_stdio
.
stdoutWrite
(
windowsMessage
);
}
}
...
...
packages/flutter_tools/lib/src/base/terminal.dart
View file @
dce8f712
...
...
@@ -84,7 +84,7 @@ abstract class Terminal {
/// Create a new test [Terminal].
///
/// If not specified, [supportsColor] defaults to `false`.
factory
Terminal
.
test
({
bool
supportsColor
})
=
_TestTerminal
;
factory
Terminal
.
test
({
bool
supportsColor
,
bool
supportsEmoji
})
=
_TestTerminal
;
/// Whether the current terminal supports color escape codes.
bool
get
supportsColor
;
...
...
@@ -317,7 +317,7 @@ class AnsiTerminal implements Terminal {
}
class
_TestTerminal
implements
Terminal
{
_TestTerminal
({
this
.
supportsColor
=
false
});
_TestTerminal
({
this
.
supportsColor
=
false
,
this
.
supportsEmoji
=
false
});
@override
bool
usesTerminalUi
;
...
...
@@ -351,7 +351,7 @@ class _TestTerminal implements Terminal {
final
bool
supportsColor
;
@override
bool
get
supportsEmoji
=>
false
;
final
bool
supportsEmoji
;
@override
bool
get
stdinHasTerminal
=>
false
;
...
...
packages/flutter_tools/lib/src/context_runner.dart
View file @
dce8f712
...
...
@@ -79,7 +79,9 @@ Future<T> runInContext<T>(
body:
runnerWrapper
,
overrides:
overrides
,
fallbacks:
<
Type
,
Generator
>{
AndroidBuilder:
()
=>
AndroidGradleBuilder
(),
AndroidBuilder:
()
=>
AndroidGradleBuilder
(
logger:
globals
.
logger
,
),
AndroidLicenseValidator:
()
=>
AndroidLicenseValidator
(
operatingSystemUtils:
globals
.
os
,
platform:
globals
.
platform
,
...
...
packages/flutter_tools/test/general.shard/android/android_gradle_builder_test.dart
View file @
dce8f712
...
...
@@ -14,6 +14,7 @@ import 'package:flutter_tools/src/artifacts.dart';
import
'package:flutter_tools/src/base/context.dart'
;
import
'package:flutter_tools/src/base/file_system.dart'
;
import
'package:flutter_tools/src/base/io.dart'
;
import
'package:flutter_tools/src/base/logger.dart'
;
import
'package:flutter_tools/src/base/platform.dart'
;
import
'package:flutter_tools/src/build_info.dart'
;
import
'package:flutter_tools/src/cache.dart'
;
...
...
@@ -29,6 +30,7 @@ import '../../src/mocks.dart';
void
main
(
)
{
group
(
'gradle build'
,
()
{
BufferLogger
logger
;
TestUsage
testUsage
;
MockAndroidSdk
mockAndroidSdk
;
MockAndroidStudio
mockAndroidStudio
;
...
...
@@ -41,6 +43,7 @@ void main() {
AndroidGradleBuilder
builder
;
setUp
(()
{
logger
=
BufferLogger
.
test
();
testUsage
=
TestUsage
();
fileSystem
=
MemoryFileSystem
.
test
();
fileSystemUtils
=
MockFileSystemUtils
();
...
...
@@ -49,7 +52,9 @@ void main() {
mockArtifacts
=
MockLocalEngineArtifacts
();
mockProcessManager
=
MockProcessManager
();
android
=
fakePlatform
(
'android'
);
builder
=
AndroidGradleBuilder
();
builder
=
AndroidGradleBuilder
(
logger:
logger
,
);
when
(
mockAndroidSdk
.
directory
).
thenReturn
(
'irrelevant'
);
...
...
@@ -660,7 +665,7 @@ void main() {
);
expect
(
testL
ogger
.
statusText
,
l
ogger
.
statusText
,
contains
(
'Built build/app/outputs/flutter-apk/app-release.apk (0.0MB)'
),
);
...
...
@@ -708,11 +713,11 @@ void main() {
);
expect
(
testL
ogger
.
statusText
,
l
ogger
.
statusText
,
contains
(
'Built build/outputs/repo'
),
);
expect
(
testL
ogger
.
statusText
.
contains
(
'Consuming the Module'
),
l
ogger
.
statusText
.
contains
(
'Consuming the Module'
),
isFalse
,
);
...
...
packages/flutter_tools/test/general.shard/android/gradle_test.dart
View file @
dce8f712
...
...
@@ -462,7 +462,7 @@ include ':app'
globals
.
fs
.
file
(
globals
.
fs
.
path
.
join
(
toolGradlePath
,
'settings_aar.gradle.tmpl'
))
.
writeAsStringSync
(
settingsAarFile
);
createSettingsAarGradle
(
tempDir
);
createSettingsAarGradle
(
tempDir
,
testLogger
);
expect
(
testLogger
.
statusText
,
contains
(
'created successfully'
));
expect
(
tempDir
.
childFile
(
'settings_aar.gradle'
).
existsSync
(),
isTrue
);
...
...
@@ -495,7 +495,7 @@ include ':app'
globals
.
fs
.
file
(
globals
.
fs
.
path
.
join
(
toolGradlePath
,
'settings_aar.gradle.tmpl'
))
.
writeAsStringSync
(
settingsAarFile
);
createSettingsAarGradle
(
tempDir
);
createSettingsAarGradle
(
tempDir
,
testLogger
);
expect
(
testLogger
.
statusText
,
contains
(
'created successfully'
));
expect
(
tempDir
.
childFile
(
'settings_aar.gradle'
).
existsSync
(),
isTrue
);
...
...
@@ -834,13 +834,15 @@ flutter:
FakeProcessManager
fakeProcessManager
;
MockAndroidSdk
mockAndroidSdk
;
AndroidGradleBuilder
builder
;
BufferLogger
logger
;
setUp
(()
{
logger
=
BufferLogger
.
test
();
fs
=
MemoryFileSystem
.
test
();
fakeProcessManager
=
FakeProcessManager
.
list
(<
FakeCommand
>[]);
mockAndroidSdk
=
MockAndroidSdk
();
when
(
mockAndroidSdk
.
directory
).
thenReturn
(
'irrelevant'
);
builder
=
AndroidGradleBuilder
();
builder
=
AndroidGradleBuilder
(
logger:
logger
);
});
testUsingContext
(
'calls gradle'
,
()
async
{
...
...
packages/flutter_tools/test/general.shard/base/logger_test.dart
View file @
dce8f712
...
...
@@ -87,6 +87,32 @@ void main() {
),
isA
<
AppRunLogger
>());
});
testWithoutContext
(
'WindowsStdoutLogger rewrites emojis when terminal does not support emoji'
,
()
{
final
FakeStdio
stdio
=
FakeStdio
();
final
WindowsStdoutLogger
logger
=
WindowsStdoutLogger
(
outputPreferences:
OutputPreferences
.
test
(),
stdio:
stdio
,
terminal:
Terminal
.
test
(
supportsColor:
false
,
supportsEmoji:
false
),
);
logger
.
printStatus
(
'🔥🖼️✗✓🔨💪✏️'
);
expect
(
stdio
.
writtenToStdout
,
<
String
>[
'X√
\n
'
]);
});
testWithoutContext
(
'WindowsStdoutLogger does not rewrite emojis when terminal does support emoji'
,
()
{
final
FakeStdio
stdio
=
FakeStdio
();
final
WindowsStdoutLogger
logger
=
WindowsStdoutLogger
(
outputPreferences:
OutputPreferences
.
test
(),
stdio:
stdio
,
terminal:
Terminal
.
test
(
supportsColor:
true
,
supportsEmoji:
true
),
);
logger
.
printStatus
(
'🔥🖼️✗✓🔨💪✏️'
);
expect
(
stdio
.
writtenToStdout
,
<
String
>[
'🔥🖼️✗✓🔨💪✏️
\n
'
]);
});
testWithoutContext
(
'DelegatingLogger delegates'
,
()
{
final
FakeLogger
fakeLogger
=
FakeLogger
();
final
DelegatingLogger
delegatingLogger
=
DelegatingLogger
(
fakeLogger
);
...
...
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