dart-sdk/tests/corelib/uri_scheme_test.dart
Robert Nystrom b998b10f3e Migrate remaining corelib_2/ tests to NNBD.
Change-Id: I3a31632ce28fb87a410b759d092c7ebc9393574d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128306
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2019-12-17 23:06:24 +00:00

37 lines
1.1 KiB
Dart

// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
// for details. 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:expect/expect.dart";
void testInvalidArguments() {
Expect.throwsFormatException(() => new Uri(scheme: "_"));
Expect.throwsFormatException(() => new Uri(scheme: "http_s"));
Expect.throwsFormatException(() => new Uri(scheme: "127.0.0.1:80"));
}
void testScheme() {
test(String expectedScheme, String expectedUri, String scheme) {
var uri = new Uri(scheme: scheme);
Expect.equals(expectedScheme, uri.scheme);
Expect.equals(expectedUri, uri.toString());
uri = Uri.parse("$scheme:");
Expect.equals(expectedScheme, uri.scheme);
Expect.equals(expectedUri, uri.toString());
}
test("http", "http:", "http");
test("http", "http:", "HTTP");
test("http", "http:", "hTTP");
test("http", "http:", "Http");
test("http+ssl", "http+ssl:", "HTTP+ssl");
test("urn", "urn:", "urn");
test("urn", "urn:", "UrN");
test("a123.432", "a123.432:", "a123.432");
}
main() {
testInvalidArguments();
testScheme();
}