Updated shelf
This commit is contained in:
parent
6506a3e0de
commit
3afc91edfa
2 changed files with 14 additions and 14 deletions
|
@ -16,12 +16,12 @@ dependencies:
|
||||||
logging: ^1.2.0
|
logging: ^1.2.0
|
||||||
charcode: ^1.3.0
|
charcode: ^1.3.0
|
||||||
http: ^1.0.0
|
http: ^1.0.0
|
||||||
# dev_dependencies:
|
dev_dependencies:
|
||||||
# angel3_test: ^8.0.0
|
angel3_test: ^8.0.0
|
||||||
# belatuk_pretty_logging: ^6.0.0
|
belatuk_pretty_logging: ^6.0.0
|
||||||
# shelf_static: ^1.1.0
|
shelf_static: ^1.1.0
|
||||||
# test: ^1.24.0
|
test: ^1.24.0
|
||||||
# lints: ^2.1.0
|
lints: ^2.1.0
|
||||||
# dependency_overrides:
|
# dependency_overrides:
|
||||||
# angel3_test:
|
# angel3_test:
|
||||||
# path: ../test
|
# path: ../test
|
||||||
|
|
|
@ -16,7 +16,7 @@ void main() {
|
||||||
late http.Client client;
|
late http.Client client;
|
||||||
late HttpServer server;
|
late HttpServer server;
|
||||||
|
|
||||||
Uri _path(String p) {
|
Uri path(String p) {
|
||||||
return Uri(
|
return Uri(
|
||||||
scheme: 'http',
|
scheme: 'http',
|
||||||
host: server.address.address,
|
host: server.address.address,
|
||||||
|
@ -65,25 +65,25 @@ void main() {
|
||||||
});
|
});
|
||||||
|
|
||||||
test('expose angel side', () async {
|
test('expose angel side', () async {
|
||||||
var response = await client.get(_path('/angel'));
|
var response = await client.get(path('/angel'));
|
||||||
expect(json.decode(response.body), equals('Angel'));
|
expect(json.decode(response.body), equals('Angel'));
|
||||||
});
|
});
|
||||||
|
|
||||||
test('expose shelf side', () async {
|
test('expose shelf side', () async {
|
||||||
var response = await client.get(_path('/foo'));
|
var response = await client.get(path('/foo'));
|
||||||
expect(response, hasStatus(200));
|
expect(response, hasStatus(200));
|
||||||
expect(response.body, equals('Request for "foo"'));
|
expect(response.body, equals('Request for "foo"'));
|
||||||
});
|
});
|
||||||
|
|
||||||
test('shelf can return arbitrary values', () async {
|
test('shelf can return arbitrary values', () async {
|
||||||
var response = await client.get(_path('/two'));
|
var response = await client.get(path('/two'));
|
||||||
expect(response, isJson(2));
|
expect(response, isJson(2));
|
||||||
});
|
});
|
||||||
|
|
||||||
test('shelf can hijack', () async {
|
test('shelf can hijack', () async {
|
||||||
try {
|
try {
|
||||||
var client = HttpClient();
|
var client = HttpClient();
|
||||||
var rq = await client.openUrl('GET', _path('/hijack'));
|
var rq = await client.openUrl('GET', path('/hijack'));
|
||||||
var rs = await rq.close();
|
var rs = await rq.close();
|
||||||
var body = await rs.cast<List<int>>().transform(utf8.decoder).join();
|
var body = await rs.cast<List<int>>().transform(utf8.decoder).join();
|
||||||
print('Response: $body');
|
print('Response: $body');
|
||||||
|
@ -96,17 +96,17 @@ void main() {
|
||||||
});
|
});
|
||||||
|
|
||||||
test('shelf can set status code', () async {
|
test('shelf can set status code', () async {
|
||||||
var response = await client.get(_path('/status'));
|
var response = await client.get(path('/status'));
|
||||||
expect(response, allOf(hasStatus(304), hasHeader('foo', 'bar')));
|
expect(response, allOf(hasStatus(304), hasHeader('foo', 'bar')));
|
||||||
});
|
});
|
||||||
|
|
||||||
test('shelf can throw error', () async {
|
test('shelf can throw error', () async {
|
||||||
var response = await client.get(_path('/error'));
|
var response = await client.get(path('/error'));
|
||||||
expect(response, hasStatus(404));
|
expect(response, hasStatus(404));
|
||||||
});
|
});
|
||||||
|
|
||||||
test('throw on null', () async {
|
test('throw on null', () async {
|
||||||
var response = await client.get(_path('/throw'));
|
var response = await client.get(path('/throw'));
|
||||||
expect(response, hasStatus(500));
|
expect(response, hasStatus(500));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue