Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(170)

Unified Diff: tests/language/src/IntrinsifiedMethodsTest.dart

Issue 9320023: Intrinisifed more core library methods: isNaN, isNegative, cos, sin. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: '' Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tests/language/src/IntrinsifiedMethodsTest.dart
===================================================================
--- tests/language/src/IntrinsifiedMethodsTest.dart (revision 3812)
+++ tests/language/src/IntrinsifiedMethodsTest.dart (working copy)
@@ -3,13 +3,40 @@
// BSD-style license that can be found in the LICENSE file.
// Dart test program for testing the instanceof operation.
+
+testIsNegative() {
+ Expect.isFalse((12.0).isNegative());
+ Expect.isTrue((-12.0).isNegative());
+ Expect.isFalse((double.NAN).isNegative());
+ Expect.isFalse((0.0).isNegative());
+ Expect.isTrue((-0.0).isNegative());
+ Expect.isFalse((double.INFINITY).isNegative());
+ Expect.isTrue((double.NEGATIVE_INFINITY).isNegative());
+}
+
+testIsNaN() {
+ Expect.isFalse((1.0).isNaN());
+ Expect.isTrue((double.NAN).isNaN());
+}
+
+
+testTrigonometric() {
+ Expect.approxEquals(1.0, Math.sin(Math.PI / 2.0), 0.0001);
+ Expect.approxEquals(1.0, Math.cos(0), 0.0001);
+ Expect.approxEquals(1.0, Math.cos(0.0), 0.0001);
+}
+
num foo(int n) {
var x;
- for(var i = 0; i <= n; ++i)
- x = Math.sqrt(i);
+ for(var i = 0; i <= n; ++i) {
+ Expect.equals(2.0, Math.sqrt(4.0));
+ testIsNegative();
+ testIsNaN();
+ testTrigonometric();
+ }
return x;
}
void main() {
- var m = foo(40000);
+ var m = foo(4000);
}

Powered by Google App Engine
This is Rietveld 408576698