|
@@ -442,4 +442,30 @@ typedef Foo = {
|
|
|
var result = parseHover();
|
|
|
Assert.equals("A", result.result.item.type.args.path.typeName /* lol */);
|
|
|
}
|
|
|
+
|
|
|
+ function testIssue7754() {
|
|
|
+ var content = '
|
|
|
+ class Main {
|
|
|
+ static function main() {
|
|
|
+ Foo.foo({-1-});
|
|
|
+ }
|
|
|
+ }
|
|
|
+ extern class Foo {
|
|
|
+ @:overload(function(?s:String):Void {})
|
|
|
+ static function foo(?i:Int):Void;
|
|
|
+ }
|
|
|
+ ';
|
|
|
+ var transform = Marker.extractMarkers(content);
|
|
|
+ vfs.putContent("Main.hx", transform.source);
|
|
|
+ runHaxeJson([], DisplayMethods.SignatureHelp, {
|
|
|
+ file: new FsPath("Main.hx"),
|
|
|
+ offset: transform.markers[1],
|
|
|
+ wasAutoTriggered: true
|
|
|
+ });
|
|
|
+ var result = parseSignatureHelp();
|
|
|
+ var sigs = result.result.signatures;
|
|
|
+ Assert.equals(2, sigs.length);
|
|
|
+ Assert.equals('Null<String>', strType(sigs[0].args[0].t));
|
|
|
+ Assert.equals('Null<Int>', strType(sigs[1].args[0].t));
|
|
|
+ }
|
|
|
}
|