flutter/packages/flutter_tools/test/general.shard/create_config_test.dart
Valentin Vignal be7c7e3e45
Suggest a potential valid name for the flutter project when using flutter create (#130900)
Fixes https://github.com/flutter/flutter/issues/109775

*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
2023-07-21 19:09:25 +00:00

44 lines
1.5 KiB
Dart

// 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:flutter_tools/src/commands/create_base.dart';
import '../src/common.dart';
void main() {
test('Validates Pub package name', () {
expect(isValidPackageName('is'), false);
expect(isValidPackageName('92'), false);
expect(isValidPackageName('a-b-c'), false);
expect(isValidPackageName('foo_bar'), true);
expect(isValidPackageName('_foo_bar'), true);
expect(isValidPackageName('fizz93'), true);
expect(isValidPackageName('Foo_bar'), false);
});
test('Suggests a valid Pub package name', () {
expect(potentialValidPackageName('92'), '_92');
expect(potentialValidPackageName('a-b-c'), 'a_b_c');
expect(potentialValidPackageName('Foo_bar'), 'foo_bar');
expect(potentialValidPackageName('foo-_bar'), 'foo__bar');
expect(potentialValidPackageName('잘못된 이름'), isNull, reason: 'It should return null if it cannot find a valid name.');
});
test('kWindowsDrivePattern', () {
expect(CreateBase.kWindowsDrivePattern.hasMatch(r'D:\'), isFalse);
expect(CreateBase.kWindowsDrivePattern.hasMatch(r'z:\'), isFalse);
expect(CreateBase.kWindowsDrivePattern.hasMatch(r'\d:'), isFalse);
expect(CreateBase.kWindowsDrivePattern.hasMatch(r'ef:'), isFalse);
expect(CreateBase.kWindowsDrivePattern.hasMatch(r'D:'), isTrue);
expect(CreateBase.kWindowsDrivePattern.hasMatch(r'c:'), isTrue);
});
}