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
7cdf26d0
Unverified
Commit
7cdf26d0
authored
May 28, 2020
by
Jonah Williams
Committed by
GitHub
May 28, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[flutter_tools] forward flutter format to dart format and deprecate (#57829)
parent
4f0c82b7
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
56 additions
and
149 deletions
+56
-149
format.dart
packages/flutter_tools/lib/src/commands/format.dart
+18
-45
format_test.dart
...tter_tools/test/commands.shard/permeable/format_test.dart
+0
-104
format_test.dart
...lutter_tools/test/general.shard/commands/format_test.dart
+38
-0
No files found.
packages/flutter_tools/lib/src/commands/format.dart
View file @
7cdf26d0
...
@@ -4,36 +4,18 @@
...
@@ -4,36 +4,18 @@
import
'dart:async'
;
import
'dart:async'
;
import
'package:args/args.dart'
;
import
'../artifacts.dart'
;
import
'../base/common.dart'
;
import
'../base/common.dart'
;
import
'../base/process.dart'
;
import
'../base/process.dart'
;
import
'../
dart/sdk.dart'
;
import
'../
globals.dart'
as
globals
;
import
'../runner/flutter_command.dart'
;
import
'../runner/flutter_command.dart'
;
class
FormatCommand
extends
FlutterCommand
{
class
FormatCommand
extends
FlutterCommand
{
FormatCommand
()
{
@override
argParser
.
addFlag
(
'dry-run'
,
ArgParser
get
argParser
=>
_argParser
;
abbr:
'n'
,
final
ArgParser
_argParser
=
ArgParser
.
allowAnything
();
help:
'Show which files would be modified but make no changes.'
,
defaultsTo:
false
,
negatable:
false
,
);
argParser
.
addFlag
(
'set-exit-if-changed'
,
help:
'Return exit code 1 if there are any formatting changes.'
,
defaultsTo:
false
,
negatable:
false
,
);
argParser
.
addFlag
(
'machine'
,
abbr:
'm'
,
help:
'Produce machine-readable JSON output.'
,
defaultsTo:
false
,
negatable:
false
,
);
argParser
.
addOption
(
'line-length'
,
abbr:
'l'
,
help:
'Wrap lines longer than this length. Defaults to 80 characters.'
,
defaultsTo:
'80'
,
);
}
@override
@override
final
String
name
=
'format'
;
final
String
name
=
'format'
;
...
@@ -48,34 +30,25 @@ class FormatCommand extends FlutterCommand {
...
@@ -48,34 +30,25 @@ class FormatCommand extends FlutterCommand {
String
get
invocation
=>
'
${runner.executableName}
$name
<one or more paths>'
;
String
get
invocation
=>
'
${runner.executableName}
$name
<one or more paths>'
;
@override
@override
Future
<
FlutterCommandResult
>
runCommand
()
async
{
bool
get
shouldUpdateCache
=>
false
;
if
(
argResults
.
rest
.
isEmpty
)
{
throwToolExit
(
'No files specified to be formatted.
\n
'
'
\n
'
'To format all files in the current directory tree:
\n
'
'
${runner.executableName}
$name
.
\n
'
'
\n
'
'
$usage
'
);
}
final
String
dartfmt
=
sdkBinaryName
(
'dartfmt'
);
@override
Future
<
FlutterCommandResult
>
runCommand
()
async
{
final
String
dartBinary
=
globals
.
artifacts
.
getArtifactPath
(
Artifact
.
engineDartBinary
);
globals
.
printError
(
'"flutter format" is deprecated and will be removed in a'
' future release, use "dart format" instead.'
);
final
List
<
String
>
command
=
<
String
>[
final
List
<
String
>
command
=
<
String
>[
dartfmt
,
dartBinary
,
if
(
boolArg
(
'dry-run'
))
'-n'
,
'format'
,
if
(
boolArg
(
'machine'
))
'-m'
,
if
(
argResults
[
'line-length'
]
!=
null
)
'-l
${argResults['line-length']}
'
,
if
(!
boolArg
(
'dry-run'
)
&&
!
boolArg
(
'machine'
))
'-w'
,
if
(
boolArg
(
'set-exit-if-changed'
))
'--set-exit-if-changed'
,
...
argResults
.
rest
,
...
argResults
.
rest
,
];
];
final
int
result
=
await
processUtils
.
stream
(
command
);
final
int
result
=
await
processUtils
.
stream
(
command
);
if
(
result
!=
0
)
{
if
(
result
!=
0
)
{
throwToolExit
(
'
Formatting failed:
$result
'
,
exitCode:
result
);
throwToolExit
(
''
,
exitCode:
result
);
}
}
return
FlutterCommandResult
.
success
();
return
FlutterCommandResult
.
success
();
}
}
}
}
packages/flutter_tools/test/commands.shard/permeable/format_test.dart
deleted
100644 → 0
View file @
4f0c82b7
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import
'package:args/command_runner.dart'
;
import
'package:flutter_tools/src/base/file_system.dart'
;
import
'package:flutter_tools/src/cache.dart'
;
import
'package:flutter_tools/src/commands/format.dart'
;
import
'package:flutter_tools/src/globals.dart'
as
globals
;
import
'../../src/common.dart'
;
import
'../../src/context.dart'
;
void
main
(
)
{
group
(
'format'
,
()
{
Directory
tempDir
;
setUp
(()
{
Cache
.
disableLocking
();
tempDir
=
globals
.
fs
.
systemTempDirectory
.
createTempSync
(
'flutter_tools_format_test.'
);
});
tearDown
(()
{
tryToDelete
(
tempDir
);
});
testUsingContext
(
'a file'
,
()
async
{
final
String
projectPath
=
await
createProject
(
tempDir
);
final
File
srcFile
=
globals
.
fs
.
file
(
globals
.
fs
.
path
.
join
(
projectPath
,
'lib'
,
'main.dart'
));
final
String
original
=
srcFile
.
readAsStringSync
();
srcFile
.
writeAsStringSync
(
original
.
replaceFirst
(
'main()'
,
'main( )'
));
final
FormatCommand
command
=
FormatCommand
();
final
CommandRunner
<
void
>
runner
=
createTestCommandRunner
(
command
);
await
runner
.
run
(<
String
>[
'format'
,
srcFile
.
path
]);
final
String
formatted
=
srcFile
.
readAsStringSync
();
expect
(
formatted
,
original
);
});
testUsingContext
(
'dry-run'
,
()
async
{
final
String
projectPath
=
await
createProject
(
tempDir
);
final
File
srcFile
=
globals
.
fs
.
file
(
globals
.
fs
.
path
.
join
(
projectPath
,
'lib'
,
'main.dart'
));
final
String
nonFormatted
=
srcFile
.
readAsStringSync
().
replaceFirst
(
'main()'
,
'main( )'
);
srcFile
.
writeAsStringSync
(
nonFormatted
);
final
FormatCommand
command
=
FormatCommand
();
final
CommandRunner
<
void
>
runner
=
createTestCommandRunner
(
command
);
await
runner
.
run
(<
String
>[
'format'
,
'--dry-run'
,
srcFile
.
path
]);
final
String
shouldNotFormatted
=
srcFile
.
readAsStringSync
();
expect
(
shouldNotFormatted
,
nonFormatted
);
});
testUsingContext
(
'dry-run with set-exit-if-changed'
,
()
async
{
final
String
projectPath
=
await
createProject
(
tempDir
);
final
File
srcFile
=
globals
.
fs
.
file
(
globals
.
fs
.
path
.
join
(
projectPath
,
'lib'
,
'main.dart'
));
final
String
nonFormatted
=
srcFile
.
readAsStringSync
().
replaceFirst
(
'main()'
,
'main( )'
);
srcFile
.
writeAsStringSync
(
nonFormatted
);
final
FormatCommand
command
=
FormatCommand
();
final
CommandRunner
<
void
>
runner
=
createTestCommandRunner
(
command
);
expect
(
runner
.
run
(<
String
>[
'format'
,
'--dry-run'
,
'--set-exit-if-changed'
,
srcFile
.
path
,
]),
throwsException
);
final
String
shouldNotFormatted
=
srcFile
.
readAsStringSync
();
expect
(
shouldNotFormatted
,
nonFormatted
);
});
testUsingContext
(
'line-length'
,
()
async
{
const
int
lineLengthShort
=
50
;
const
int
lineLengthLong
=
120
;
final
String
projectPath
=
await
createProject
(
tempDir
);
final
File
srcFile
=
globals
.
fs
.
file
(
globals
.
fs
.
path
.
join
(
projectPath
,
'lib'
,
'main.dart'
));
final
String
nonFormatted
=
srcFile
.
readAsStringSync
();
srcFile
.
writeAsStringSync
(
nonFormatted
.
replaceFirst
(
'main()'
,
'main(anArgument1, anArgument2, anArgument3, anArgument4, anArgument5)'
));
final
String
nonFormattedWithLongLine
=
srcFile
.
readAsStringSync
();
final
FormatCommand
command
=
FormatCommand
();
final
CommandRunner
<
void
>
runner
=
createTestCommandRunner
(
command
);
await
runner
.
run
(<
String
>[
'format'
,
'--line-length'
,
'
$lineLengthLong
'
,
srcFile
.
path
]);
final
String
notFormatted
=
srcFile
.
readAsStringSync
();
expect
(
nonFormattedWithLongLine
,
notFormatted
);
await
runner
.
run
(<
String
>[
'format'
,
'--line-length'
,
'
$lineLengthShort
'
,
srcFile
.
path
]);
final
String
shouldFormatted
=
srcFile
.
readAsStringSync
();
expect
(
nonFormattedWithLongLine
,
isNot
(
shouldFormatted
));
});
});
}
packages/flutter_tools/test/general.shard/commands/format_test.dart
0 → 100644
View file @
7cdf26d0
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import
'package:args/command_runner.dart'
;
import
'package:file/memory.dart'
;
import
'package:flutter_tools/src/artifacts.dart'
;
import
'package:flutter_tools/src/base/file_system.dart'
;
import
'package:flutter_tools/src/commands/format.dart'
;
import
'package:flutter_tools/src/globals.dart'
as
globals
;
import
'../../src/common.dart'
;
import
'../../src/context.dart'
;
void
main
(
)
{
testUsingContext
(
'flutter format forward all arguments to dart format and '
'prints deprecation warning'
,
()
async
{
final
CommandRunner
<
void
>
runner
=
CommandRunner
<
void
>(
'flutter'
,
'test'
)
..
addCommand
(
FormatCommand
());
await
runner
.
run
(<
String
>[
'format'
,
'a'
,
'b'
,
'c'
]);
expect
(
testLogger
.
errorText
,
contains
(
'"flutter format" is deprecated'
));
expect
((
globals
.
processManager
as
FakeProcessManager
).
hasRemainingExpectations
,
false
);
},
overrides:
<
Type
,
Generator
>{
FileSystem:
()
=>
MemoryFileSystem
.
test
(),
ProcessManager:
()
=>
FakeProcessManager
.
list
(<
FakeCommand
>[
FakeCommand
(
command:
<
String
>[
globals
.
artifacts
.
getArtifactPath
(
Artifact
.
engineDartBinary
),
'format'
,
'a'
,
'b'
,
'c'
,
],
)
])
});
}
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