// Copyright (c) 2015, 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. // Regression test for http://dartbug.com/22987. // Ensure that functions whose signature only differs in optionality of // parameters are reflected correctly. library optional_parameter_test; import "dart:mirrors"; import 'package:expect/expect.dart'; class A { foo(int x) => x; } class B { foo([int x = -1]) => x + 1; } main() { var x = {}; x["A"] = reflect(new A()); x["B"] = reflect(new B()); Expect.equals(1, x["A"].invoke(#foo, [1]).reflectee); Expect.equals(2, x["B"].invoke(#foo, [1]).reflectee); }