Updated skipped tests for flutter_tools. (#87925)
* Updated skipped tests for flutter_tools. * Turned the flaky overall_experience test off as it was still failing on CI.
This commit is contained in:
parent
a628e4f422
commit
b08366ce7b
@ -703,7 +703,8 @@ flutter:
|
|||||||
legacySettingsDotGradleFiles.readAsStringSync().split(';EOF').map<String>((String body) => body.trim()),
|
legacySettingsDotGradleFiles.readAsStringSync().split(';EOF').map<String>((String body) => body.trim()),
|
||||||
contains(templateSettingsDotGradle.readAsStringSync().trim()),
|
contains(templateSettingsDotGradle.readAsStringSync().trim()),
|
||||||
);
|
);
|
||||||
}, skip: true); // TODO(jonahwilliams): This is an integration test and should be moved to the integration shard.
|
// TODO(jonahwilliams): This is an integration test and should be moved to the integration shard.
|
||||||
|
}, skip: true); // https://github.com/flutter/flutter/issues/87922
|
||||||
}
|
}
|
||||||
|
|
||||||
class FakeGradleUtils extends GradleUtils {
|
class FakeGradleUtils extends GradleUtils {
|
||||||
|
@ -94,7 +94,8 @@ void main() {
|
|||||||
} finally {
|
} finally {
|
||||||
Cache.flutterRoot = oldRoot;
|
Cache.flutterRoot = oldRoot;
|
||||||
}
|
}
|
||||||
}, skip: true); // TODO(jonahwilliams): implement support for lock so this can be tested with the memory file system.
|
// TODO(jonahwilliams): implement support for lock so this can be tested with the memory file system.
|
||||||
|
}, skip: true); // https://github.com/flutter/flutter/issues/87923
|
||||||
|
|
||||||
testWithoutContext('throws tool exit when lockfile open fails', () async {
|
testWithoutContext('throws tool exit when lockfile open fails', () async {
|
||||||
final FileSystem fileSystem = MemoryFileSystem.test();
|
final FileSystem fileSystem = MemoryFileSystem.test();
|
||||||
@ -103,7 +104,8 @@ void main() {
|
|||||||
.createSync(recursive: true);
|
.createSync(recursive: true);
|
||||||
|
|
||||||
expect(() async => cache.lock(), throwsToolExit());
|
expect(() async => cache.lock(), throwsToolExit());
|
||||||
}, skip: true); // TODO(jonahwilliams): implement support for lock so this can be tested with the memory file system.
|
// TODO(jonahwilliams): implement support for lock so this can be tested with the memory file system.
|
||||||
|
}, skip: true); // https://github.com/flutter/flutter/issues/87923
|
||||||
|
|
||||||
testWithoutContext('should not throw when FLUTTER_ALREADY_LOCKED is set', () {
|
testWithoutContext('should not throw when FLUTTER_ALREADY_LOCKED is set', () {
|
||||||
final Cache cache = Cache.test(
|
final Cache cache = Cache.test(
|
||||||
|
@ -69,7 +69,7 @@ void main() {
|
|||||||
expect(result.type, ValidationType.partial);
|
expect(result.type, ValidationType.partial);
|
||||||
expect(result.messages.last.type, ValidationMessageType.hint);
|
expect(result.messages.last.type, ValidationMessageType.hint);
|
||||||
expect(result.messages.last.message, contains('Xcode 11.0.0 out of date (12.0.1 is recommended)'));
|
expect(result.messages.last.message, contains('Xcode 11.0.0 out of date (12.0.1 is recommended)'));
|
||||||
}, skip: true); // Unskip and update when minimum and required check versions diverge.
|
}, skip: true); // [intended] Unskip and update when minimum and required check versions diverge.
|
||||||
|
|
||||||
testWithoutContext('Emits partial status when Xcode EULA not signed', () async {
|
testWithoutContext('Emits partial status when Xcode EULA not signed', () async {
|
||||||
final ProcessManager processManager = FakeProcessManager.list(<FakeCommand>[
|
final ProcessManager processManager = FakeProcessManager.list(<FakeCommand>[
|
||||||
|
@ -88,7 +88,7 @@ void main() {
|
|||||||
expect(codeSizeDir.existsSync(), true);
|
expect(codeSizeDir.existsSync(), true);
|
||||||
expect(result.exitCode, 0);
|
expect(result.exitCode, 0);
|
||||||
tempDir.deleteSync(recursive: true);
|
tempDir.deleteSync(recursive: true);
|
||||||
}, skip: !platform.isMacOS);
|
}, skip: !platform.isMacOS); // [intended] iOS can only be built on macos.
|
||||||
|
|
||||||
testWithoutContext('--analyze-size flag produces expected output on hello_world for macOS', () async {
|
testWithoutContext('--analyze-size flag produces expected output on hello_world for macOS', () async {
|
||||||
final String workingDirectory = fileSystem.path.join(getFlutterRoot(), 'examples', 'hello_world');
|
final String workingDirectory = fileSystem.path.join(getFlutterRoot(), 'examples', 'hello_world');
|
||||||
@ -134,7 +134,7 @@ void main() {
|
|||||||
expect(codeSizeDir.existsSync(), true);
|
expect(codeSizeDir.existsSync(), true);
|
||||||
expect(result.exitCode, 0);
|
expect(result.exitCode, 0);
|
||||||
tempDir.deleteSync(recursive: true);
|
tempDir.deleteSync(recursive: true);
|
||||||
}, skip: !platform.isMacOS);
|
}, skip: !platform.isMacOS); // [intended] this is a macos only test.
|
||||||
|
|
||||||
testWithoutContext('--analyze-size is only supported in release mode', () async {
|
testWithoutContext('--analyze-size is only supported in release mode', () async {
|
||||||
final String flutterBin = fileSystem.path.join(getFlutterRoot(), 'bin', 'flutter');
|
final String flutterBin = fileSystem.path.join(getFlutterRoot(), 'bin', 'flutter');
|
||||||
|
@ -50,5 +50,5 @@ void main() {
|
|||||||
fileSystem.path.join(woringDirectory, 'build', 'ios', 'iphoneos', 'Runner.app', 'AppFrameworkInfo.plist'));
|
fileSystem.path.join(woringDirectory, 'build', 'ios', 'iphoneos', 'Runner.app', 'AppFrameworkInfo.plist'));
|
||||||
|
|
||||||
expect(frameworkPlist, isNot(exists));
|
expect(frameworkPlist, isNot(exists));
|
||||||
}, skip: !platform.isMacOS);
|
}, skip: !platform.isMacOS); // [intended] iOS builds only work on macos.
|
||||||
}
|
}
|
||||||
|
@ -195,7 +195,7 @@ void main() {
|
|||||||
expect(xcodeBackendResult.exitCode, 0);
|
expect(xcodeBackendResult.exitCode, 0);
|
||||||
expect(outputFlutterFrameworkBinary.existsSync(), isTrue);
|
expect(outputFlutterFrameworkBinary.existsSync(), isTrue);
|
||||||
expect(outputAppFrameworkBinary.existsSync(), isTrue);
|
expect(outputAppFrameworkBinary.existsSync(), isTrue);
|
||||||
}, skip: !platform.isMacOS || buildMode != BuildMode.release);
|
}, skip: !platform.isMacOS || buildMode != BuildMode.release); // [intended] only makes sense on macos.
|
||||||
|
|
||||||
testWithoutContext('validate obfuscation', () {
|
testWithoutContext('validate obfuscation', () {
|
||||||
final ProcessResult grepResult = processManager.runSync(<String>[
|
final ProcessResult grepResult = processManager.runSync(<String>[
|
||||||
@ -245,6 +245,7 @@ void main() {
|
|||||||
expect(archs.stdout, contains('Mach-O 64-bit dynamically linked shared library x86_64'));
|
expect(archs.stdout, contains('Mach-O 64-bit dynamically linked shared library x86_64'));
|
||||||
expect(archs.stdout, contains('Mach-O 64-bit dynamically linked shared library arm64'));
|
expect(archs.stdout, contains('Mach-O 64-bit dynamically linked shared library arm64'));
|
||||||
});
|
});
|
||||||
}, skip: !platform.isMacOS, timeout: const Timeout(Duration(minutes: 5))
|
}, skip: !platform.isMacOS, // [intended] only makes sense for macos platform.
|
||||||
|
timeout: const Timeout(Duration(minutes: 5))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -145,7 +145,7 @@ void main() {
|
|||||||
...getLocalEngineArguments(),
|
...getLocalEngineArguments(),
|
||||||
'clean',
|
'clean',
|
||||||
], workingDirectory: workingDirectory);
|
], workingDirectory: workingDirectory);
|
||||||
}, skip: !platform.isMacOS,
|
}, skip: !platform.isMacOS, // [intended] only makes sense for macos platform.
|
||||||
timeout: const Timeout(Duration(minutes: 5)),
|
timeout: const Timeout(Duration(minutes: 5)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -358,7 +358,7 @@ void main() {
|
|||||||
} finally {
|
} finally {
|
||||||
tryToDelete(fileSystem.directory(tempDirectory));
|
tryToDelete(fileSystem.directory(tempDirectory));
|
||||||
}
|
}
|
||||||
}, skip: platform.isWindows);
|
}, skip: platform.isWindows); // https://github.com/flutter/flutter/issues/87924
|
||||||
|
|
||||||
testWithoutContext('flutter run handle SIGUSR1/2', () async {
|
testWithoutContext('flutter run handle SIGUSR1/2', () async {
|
||||||
final String tempDirectory = fileSystem.systemTempDirectory.createTempSync('flutter_overall_experience_test.').resolveSymbolicLinksSync();
|
final String tempDirectory = fileSystem.systemTempDirectory.createTempSync('flutter_overall_experience_test.').resolveSymbolicLinksSync();
|
||||||
@ -415,7 +415,7 @@ void main() {
|
|||||||
} finally {
|
} finally {
|
||||||
tryToDelete(fileSystem.directory(tempDirectory));
|
tryToDelete(fileSystem.directory(tempDirectory));
|
||||||
}
|
}
|
||||||
}, skip: Platform.isWindows); // Windows doesn't support sending signals.
|
}, skip: Platform.isWindows); // [intended] Windows doesn't support sending signals.
|
||||||
|
|
||||||
testWithoutContext('flutter run can hot reload and hot restart, handle "p" key', () async {
|
testWithoutContext('flutter run can hot reload and hot restart, handle "p" key', () async {
|
||||||
final String tempDirectory = fileSystem.systemTempDirectory.createTempSync('flutter_overall_experience_test.').resolveSymbolicLinksSync();
|
final String tempDirectory = fileSystem.systemTempDirectory.createTempSync('flutter_overall_experience_test.').resolveSymbolicLinksSync();
|
||||||
|
@ -68,7 +68,7 @@ void main() {
|
|||||||
expect(parser.getValueFromFile(file.absolute.path, 'CFBundleIdentifier'), 'io.flutter.flutter.app');
|
expect(parser.getValueFromFile(file.absolute.path, 'CFBundleIdentifier'), 'io.flutter.flutter.app');
|
||||||
expect(logger.statusText, isEmpty);
|
expect(logger.statusText, isEmpty);
|
||||||
expect(logger.errorText, isEmpty);
|
expect(logger.errorText, isEmpty);
|
||||||
}, skip: !platform.isMacOS);
|
}, skip: !platform.isMacOS); // [intended] requires macos tool chain.
|
||||||
|
|
||||||
testWithoutContext('PlistParser.getValueFromFile works with binary file', () {
|
testWithoutContext('PlistParser.getValueFromFile works with binary file', () {
|
||||||
file.writeAsBytesSync(base64.decode(base64PlistBinary));
|
file.writeAsBytesSync(base64.decode(base64PlistBinary));
|
||||||
@ -77,7 +77,7 @@ void main() {
|
|||||||
expect(parser.getValueFromFile(file.absolute.path, 'CFBundleIdentifier'), 'io.flutter.flutter.app');
|
expect(parser.getValueFromFile(file.absolute.path, 'CFBundleIdentifier'), 'io.flutter.flutter.app');
|
||||||
expect(logger.statusText, isEmpty);
|
expect(logger.statusText, isEmpty);
|
||||||
expect(logger.errorText, isEmpty);
|
expect(logger.errorText, isEmpty);
|
||||||
}, skip: !platform.isMacOS);
|
}, skip: !platform.isMacOS); // [intended] requires macos tool chain.
|
||||||
|
|
||||||
testWithoutContext('PlistParser.getValueFromFile works with json file', () {
|
testWithoutContext('PlistParser.getValueFromFile works with json file', () {
|
||||||
file.writeAsBytesSync(base64.decode(base64PlistJson));
|
file.writeAsBytesSync(base64.decode(base64PlistJson));
|
||||||
@ -86,13 +86,13 @@ void main() {
|
|||||||
expect(parser.getValueFromFile(file.absolute.path, 'CFBundleIdentifier'), 'io.flutter.flutter.app');
|
expect(parser.getValueFromFile(file.absolute.path, 'CFBundleIdentifier'), 'io.flutter.flutter.app');
|
||||||
expect(logger.statusText, isEmpty);
|
expect(logger.statusText, isEmpty);
|
||||||
expect(logger.errorText, isEmpty);
|
expect(logger.errorText, isEmpty);
|
||||||
}, skip: !platform.isMacOS);
|
}, skip: !platform.isMacOS); // [intended] requires macos tool chain.
|
||||||
|
|
||||||
testWithoutContext('PlistParser.getValueFromFile returns null for non-existent plist file', () {
|
testWithoutContext('PlistParser.getValueFromFile returns null for non-existent plist file', () {
|
||||||
expect(parser.getValueFromFile('missing.plist', 'CFBundleIdentifier'), null);
|
expect(parser.getValueFromFile('missing.plist', 'CFBundleIdentifier'), null);
|
||||||
expect(logger.statusText, isEmpty);
|
expect(logger.statusText, isEmpty);
|
||||||
expect(logger.errorText, isEmpty);
|
expect(logger.errorText, isEmpty);
|
||||||
}, skip: !platform.isMacOS);
|
}, skip: !platform.isMacOS); // [intended] requires macos tool chain.
|
||||||
|
|
||||||
testWithoutContext('PlistParser.getValueFromFile returns null for non-existent key within plist', () {
|
testWithoutContext('PlistParser.getValueFromFile returns null for non-existent key within plist', () {
|
||||||
file.writeAsBytesSync(base64.decode(base64PlistXml));
|
file.writeAsBytesSync(base64.decode(base64PlistXml));
|
||||||
@ -101,7 +101,7 @@ void main() {
|
|||||||
expect(parser.getValueFromFile(file.absolute.path, 'BadKey'), null);
|
expect(parser.getValueFromFile(file.absolute.path, 'BadKey'), null);
|
||||||
expect(logger.statusText, isEmpty);
|
expect(logger.statusText, isEmpty);
|
||||||
expect(logger.errorText, isEmpty);
|
expect(logger.errorText, isEmpty);
|
||||||
}, skip: !platform.isMacOS);
|
}, skip: !platform.isMacOS); // [intended] requires macos tool chain.
|
||||||
|
|
||||||
testWithoutContext('PlistParser.getValueFromFile returns null for malformed plist file', () {
|
testWithoutContext('PlistParser.getValueFromFile returns null for malformed plist file', () {
|
||||||
file.writeAsBytesSync(const <int>[1, 2, 3, 4, 5, 6]);
|
file.writeAsBytesSync(const <int>[1, 2, 3, 4, 5, 6]);
|
||||||
@ -109,7 +109,7 @@ void main() {
|
|||||||
expect(parser.getValueFromFile(file.path, 'CFBundleIdentifier'), null);
|
expect(parser.getValueFromFile(file.path, 'CFBundleIdentifier'), null);
|
||||||
expect(logger.statusText, isNotEmpty);
|
expect(logger.statusText, isNotEmpty);
|
||||||
expect(logger.errorText, isEmpty);
|
expect(logger.errorText, isEmpty);
|
||||||
}, skip: !platform.isMacOS);
|
}, skip: !platform.isMacOS); // [intended] requires macos tool chain.
|
||||||
|
|
||||||
testWithoutContext('PlistParser.getValueFromFile throws when /usr/bin/plutil is not found', () async {
|
testWithoutContext('PlistParser.getValueFromFile throws when /usr/bin/plutil is not found', () async {
|
||||||
expect(
|
expect(
|
||||||
@ -118,5 +118,5 @@ void main() {
|
|||||||
);
|
);
|
||||||
expect(logger.statusText, isEmpty);
|
expect(logger.statusText, isEmpty);
|
||||||
expect(logger.errorText, isEmpty);
|
expect(logger.errorText, isEmpty);
|
||||||
}, skip: platform.isMacOS);
|
}, skip: platform.isMacOS); // [intended] requires macos tool chain.
|
||||||
}
|
}
|
||||||
|
@ -17,5 +17,5 @@ void main() {
|
|||||||
'"^(?!Golden).+"',
|
'"^(?!Golden).+"',
|
||||||
]);
|
]);
|
||||||
expect(result.stdout, contains('args: ["(?!Golden).+"]'));
|
expect(result.stdout, contains('args: ["(?!Golden).+"]'));
|
||||||
}, skip: 'Reverted in https://github.com/flutter/flutter/pull/86000');
|
}, skip: 'Reverted in https://github.com/flutter/flutter/pull/86000'); // https://github.com/flutter/flutter/issues/87934
|
||||||
}
|
}
|
||||||
|
@ -65,14 +65,14 @@ void main() {
|
|||||||
);
|
);
|
||||||
expect(result.stderr, startsWith('error: Your Xcode project is incompatible with this version of Flutter.'));
|
expect(result.stderr, startsWith('error: Your Xcode project is incompatible with this version of Flutter.'));
|
||||||
expect(result.exitCode, isNot(0));
|
expect(result.exitCode, isNot(0));
|
||||||
}, skip: !io.Platform.isMacOS);
|
}, skip: !io.Platform.isMacOS); // [intended] requires macos toolchain.
|
||||||
|
|
||||||
test('Xcode backend fails for on unsupported configuration combinations', () async {
|
test('Xcode backend fails for on unsupported configuration combinations', () async {
|
||||||
await expectXcodeBackendFails(unknownConfiguration);
|
await expectXcodeBackendFails(unknownConfiguration);
|
||||||
await expectXcodeBackendFails(unknownFlutterBuildMode);
|
await expectXcodeBackendFails(unknownFlutterBuildMode);
|
||||||
await expectXcodeBackendFails(localEngineDebugBuildModeRelease);
|
await expectXcodeBackendFails(localEngineDebugBuildModeRelease);
|
||||||
await expectXcodeBackendFails(localEngineProfileBuildModeRelease);
|
await expectXcodeBackendFails(localEngineProfileBuildModeRelease);
|
||||||
}, skip: !io.Platform.isMacOS);
|
}, skip: !io.Platform.isMacOS); // [intended] requires macos toolchain.
|
||||||
|
|
||||||
test('Xcode backend warns archiving a non-release build.', () async {
|
test('Xcode backend warns archiving a non-release build.', () async {
|
||||||
final ProcessResult result = await Process.run(
|
final ProcessResult result = await Process.run(
|
||||||
@ -85,7 +85,7 @@ void main() {
|
|||||||
);
|
);
|
||||||
expect(result.stdout, contains('warning: Flutter archive not built in Release mode.'));
|
expect(result.stdout, contains('warning: Flutter archive not built in Release mode.'));
|
||||||
expect(result.exitCode, isNot(0));
|
expect(result.exitCode, isNot(0));
|
||||||
}, skip: !io.Platform.isMacOS);
|
}, skip: !io.Platform.isMacOS); // [intended] requires macos toolchain.
|
||||||
|
|
||||||
group('observatory Bonjour service keys', () {
|
group('observatory Bonjour service keys', () {
|
||||||
Directory buildDirectory;
|
Directory buildDirectory;
|
||||||
@ -204,5 +204,5 @@ void main() {
|
|||||||
''');
|
''');
|
||||||
expect(result.exitCode, 0);
|
expect(result.exitCode, 0);
|
||||||
});
|
});
|
||||||
}, skip: !io.Platform.isMacOS);
|
}, skip: !io.Platform.isMacOS); // [intended] requires macos toolchain.
|
||||||
}
|
}
|
||||||
|
@ -70,5 +70,5 @@ void main() {
|
|||||||
} finally {
|
} finally {
|
||||||
await subscription.cancel();
|
await subscription.cancel();
|
||||||
}
|
}
|
||||||
}, skip: true); // Skipping for https://github.com/flutter/flutter/issues/85575.
|
}, skip: true); // Skipping for https://github.com/flutter/flutter/issues/85043.
|
||||||
}
|
}
|
||||||
|
@ -62,7 +62,7 @@ void main() {
|
|||||||
validateFlutterVersion(client1),
|
validateFlutterVersion(client1),
|
||||||
validateFlutterVersion(client2)]
|
validateFlutterVersion(client2)]
|
||||||
);
|
);
|
||||||
}, skip: 'DDS failure: https://github.com/dart-lang/sdk/issues/45569');
|
}, skip: true); // DDS failure: https://github.com/dart-lang/sdk/issues/45569
|
||||||
});
|
});
|
||||||
|
|
||||||
group('Clients of flutter run on web with DDS disabled', () {
|
group('Clients of flutter run on web with DDS disabled', () {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user