2017-03-23 19:40:21 +00:00
|
|
|
// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
|
2014-04-09 07:40:54 +00:00
|
|
|
// 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.
|
|
|
|
|
|
|
|
import 'package:expect/expect.dart';
|
|
|
|
|
|
|
|
class C {
|
|
|
|
final field;
|
|
|
|
const C(this.field);
|
|
|
|
}
|
|
|
|
|
|
|
|
const c1 = const C(0.0);
|
|
|
|
const c2 = const C(0);
|
|
|
|
const c3 = const C(0.5 + 0.5);
|
|
|
|
const c4 = const C(1);
|
|
|
|
|
|
|
|
main() {
|
2017-03-22 00:29:56 +00:00
|
|
|
Expect.equals('0.0', test(c1)); //# 01: ok
|
|
|
|
Expect.equals('0', test(c2)); // //# 02: ok
|
|
|
|
Expect.equals('1.0', test(c3)); //# 03: ok
|
|
|
|
Expect.equals('1', test(c4)); // //# 04: ok
|
2014-04-09 07:40:54 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
String test(C c) {
|
|
|
|
switch (c) {
|
2017-03-23 19:40:21 +00:00
|
|
|
case const C(0.0):
|
|
|
|
return '0.0';
|
|
|
|
case const C(0):
|
|
|
|
return '0';
|
|
|
|
case const C(1.0):
|
|
|
|
return '1.0';
|
|
|
|
case const C(1):
|
|
|
|
return '1';
|
2014-04-09 07:40:54 +00:00
|
|
|
}
|
|
|
|
return null;
|
2017-03-23 19:40:21 +00:00
|
|
|
}
|