| // 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); |
| }); |
| } |