blob: a3beb0bfffd58a9c5796aca9d724eaca2ad1c9e1 [file] [log] [blame]
// 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.
library isolate_bad_class_test;
import 'dart:async';
import 'test_helper.dart';
import 'package:expect/expect.dart';
class NullCollectionTest extends VmServiceRequestHelper {
NullCollectionTest(port, id, collection) :
super('http://127.0.0.1:$port/$id/$collection/9999999');
onRequestCompleted(Map reply) {
Expect.equals('Error', reply['type']);
}
}
class BadCollectionTest extends VmServiceRequestHelper {
BadCollectionTest(port, id, collection) :
super('http://127.0.0.1:$port/$id/$collection');
onRequestCompleted(Map reply) {
Expect.equals('Error', reply['type']);
}
}
class IsolateListTest extends VmServiceRequestHelper {
IsolateListTest(port) : super('http://127.0.0.1:$port/isolates');
String _isolateId;
onRequestCompleted(Map reply) {
IsolateListTester tester = new IsolateListTester(reply);
tester.checkIsolateCount(1);
tester.checkIsolateNameContains('unknown_isolate_command_script.dart');
_isolateId = reply['members'][0]['id'];
}
}
main() {
var process = new TestLauncher('unknown_isolate_command_script.dart');
process.launch().then((port) {
var test = new IsolateListTest(port);
test.makeRequest().then((_) {
var badCollectionRequest =
new BadCollectionTest(port, test._isolateId,
'foobar').makeRequest();
var nullCollectionRequest =
new NullCollectionTest(port, test._isolateId,
'classes').makeRequest();
var requests = Future.wait([badCollectionRequest, nullCollectionRequest]);
requests.then((_) {
process.requestExit();
});
});
});
}