Unverified Commit 5627e0d1 authored by Jesús S Guerrero's avatar Jesús S Guerrero Committed by GitHub

Add info project validator status (#109169)

parent 0fa8f765
...@@ -76,6 +76,7 @@ class ValidateProject { ...@@ -76,6 +76,7 @@ class ValidateProject {
case StatusProjectValidator.error: case StatusProjectValidator.error:
icon = '[✗]'; icon = '[✗]';
break; break;
case StatusProjectValidator.info:
case StatusProjectValidator.success: case StatusProjectValidator.success:
icon = '[✓]'; icon = '[✓]';
break; break;
......
...@@ -153,24 +153,21 @@ class PubDependenciesProjectValidator extends ProjectValidator { ...@@ -153,24 +153,21 @@ class PubDependenciesProjectValidator extends ProjectValidator {
} }
} }
final String value;
if (dependencies.isNotEmpty) { if (dependencies.isNotEmpty) {
final String verb = dependencies.length == 1 ? 'is' : 'are'; final String verb = dependencies.length == 1 ? 'is' : 'are';
result.add( value = '${dependencies.join(', ')} $verb not hosted';
ProjectValidatorResult(
name: name,
value: '${dependencies.join(', ')} $verb not hosted',
status: StatusProjectValidator.warning,
)
);
} else { } else {
value = 'All pub dependencies are hosted on https://pub.dartlang.org';
}
result.add( result.add(
const ProjectValidatorResult( ProjectValidatorResult(
name: name, name: name,
value: 'All pub dependencies are hosted on https://pub.dartlang.org', value: value,
status: StatusProjectValidator.success, status: StatusProjectValidator.info,
) )
); );
}
return result; return result;
} }
......
...@@ -7,6 +7,7 @@ enum StatusProjectValidator { ...@@ -7,6 +7,7 @@ enum StatusProjectValidator {
warning, warning,
success, success,
crash, crash,
info,
} }
class ProjectValidatorResult { class ProjectValidatorResult {
......
...@@ -35,7 +35,7 @@ void main() { ...@@ -35,7 +35,7 @@ void main() {
const String expected = 'All pub dependencies are hosted on https://pub.dartlang.org'; const String expected = 'All pub dependencies are hosted on https://pub.dartlang.org';
expect(result.length, 1); expect(result.length, 1);
expect(result[0].value, expected); expect(result[0].value, expected);
expect(result[0].status, StatusProjectValidator.success); expect(result[0].status, StatusProjectValidator.info);
}); });
testWithoutContext('error when command dart pub deps fails', () async { testWithoutContext('error when command dart pub deps fails', () async {
...@@ -56,7 +56,7 @@ void main() { ...@@ -56,7 +56,7 @@ void main() {
expect(result[0].status, StatusProjectValidator.error); expect(result[0].status, StatusProjectValidator.error);
}); });
testWithoutContext('warning on dependencies not hosted', () async { testWithoutContext('info on dependencies not hosted', () async {
final ProcessManager processManager = FakeProcessManager.list(<FakeCommand>[ final ProcessManager processManager = FakeProcessManager.list(<FakeCommand>[
const FakeCommand( const FakeCommand(
command: <String>['dart', 'pub', 'deps', '--json'], command: <String>['dart', 'pub', 'deps', '--json'],
...@@ -71,7 +71,7 @@ void main() { ...@@ -71,7 +71,7 @@ void main() {
const String expected = 'dep1, dep2 are not hosted'; const String expected = 'dep1, dep2 are not hosted';
expect(result.length, 1); expect(result.length, 1);
expect(result[0].value, expected); expect(result[0].value, expected);
expect(result[0].status, StatusProjectValidator.warning); expect(result[0].status, StatusProjectValidator.info);
}); });
}); });
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment