blob: 6b3dbed3a4f999d0ed8689b3ead92f5ca85c6fdd [file] [log] [blame]
import 'dart:html';
import 'package:js/js.dart';
import 'package:expect/expect.dart';
@JS()
@anonymous
class C {
final foo;
external factory C({foo});
}
@JS()
@anonymous
class D {
final foo;
external factory D({foo});
}
class F {
final foo;
F(this.foo);
}
@NoInline()
testC(C o) {
return o.foo;
}
@NoInline()
testF(F o) {
return o.foo;
}
void expectValueOrTypeError(f(), value) {
try {
var i = 0;
String s = i; // Test for checked mode.
} on TypeError catch (error) {
Expect.throws(f, (ex) => ex is TypeError);
}
}
main() {
var d = new D(foo: 4);
var f = new F(6);
Expect.equals(testC(d), 4);
Expect.equals(testF(f), 6); /// 01: ok
}