diff tests/mini/floatcmp.d @ 341:1bb99290e03a trunk

[svn r362] Started merging the old 'test' dir as well as the newer 'tangotests' dir into 'tests/mini' and 'tests/minicomplex'.
author lindquist
date Sun, 13 Jul 2008 02:51:19 +0200
parents test/floatcmp.d@d9d5d59873d8
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/mini/floatcmp.d	Sun Jul 13 02:51:19 2008 +0200
@@ -0,0 +1,161 @@
+module floatcmp;
+extern(C) int printf(char*, ...);
+
+void eq()
+{
+    float _3 = 3;
+    assert(!(_3 == 4));
+    assert(!(_3 == 2));
+    assert(_3 == 3);
+    assert(!(_3 == float.nan));
+}
+
+void neq()
+{
+    float _3 = 3;
+    assert(_3 != 4);
+    assert(_3 != 2);
+    assert(!(_3 != 3));
+    assert(_3 != float.nan);
+}
+
+void gt()
+{
+    float _3 = 3;
+    assert(_3 > 2);
+    assert(!(_3 > 4));
+    assert(!(_3 > 3));
+    assert(!(_3 > float.nan));
+}
+
+void ge()
+{
+    float _3 = 3;
+    assert(_3 >= 2);
+    assert(!(_3 >= 4));
+    assert(_3 >= 3);
+    assert(!(_3 >= float.nan));
+}
+
+void lt()
+{
+    float _3 = 3;
+    assert(_3 < 4);
+    assert(!(_3 < 2));
+    assert(!(_3 < 3));
+    assert(!(_3 < float.nan));
+}
+
+void le()
+{
+    float _3 = 3;
+    assert(_3 <= 4);
+    assert(!(_3 <= 2));
+    assert(_3 <= 3);
+    assert(!(_3 <= float.nan));
+}
+
+void uno()
+{
+    float _3 = 3;
+    assert(!(_3 !<>= 2));
+    assert(!(_3 !<>= 3));
+    assert(!(_3 !<>= 4));
+    assert(_3 !<>= float.nan);
+}
+
+void lg()
+{
+    float _3 = 3;
+    assert(_3 <> 4);
+    assert(_3 <> 2);
+    assert(!(_3 <> 3));
+    assert(!(_3 <> float.nan));
+}
+
+void lge()
+{
+    float _3 = 3;
+    assert(_3 <>= 4);
+    assert(_3 <>= 2);
+    assert(_3 <>= 3);
+    assert(!(_3 <>= float.nan));
+}
+
+void ugt()
+{
+    float _3 = 3;
+    assert(_3 !<= 2);
+    assert(!(_3 !<= 4));
+    assert(!(_3 !<= 3));
+    assert(_3 !<= float.nan);
+}
+
+void uge()
+{
+    float _3 = 3;
+    assert(_3 !< 2);
+    assert(!(_3 !< 4));
+    assert(_3 !< 3);
+    assert(_3 !< float.nan);
+}
+
+void ult()
+{
+    float _3 = 3;
+    assert(_3 !>= 4);
+    assert(!(_3 !>= 2));
+    assert(!(_3 !>= 3));
+    assert(_3 !>= float.nan);
+}
+
+void ule()
+{
+    float _3 = 3;
+    assert(_3 !> 4);
+    assert(!(_3 !> 2));
+    assert(_3 !> 3);
+    assert(_3 !> float.nan);
+}
+
+void ueq()
+{
+    float _3 = 3;
+    assert(!(_3 !<> 2));
+    assert(!(_3 !<> 4));
+    assert(_3 !<> 3);
+    assert(_3 !<> float.nan);
+}
+
+void main()
+{
+    printf("floating point comparison test\n");
+    
+    eq();
+    neq();
+    gt();
+    ge();
+    lt();
+    le();
+    uno();
+    lg();
+    lge();
+    ugt();
+    uge();
+    ult();
+    ule();
+    ueq();
+    
+    printf("  SUCCESS\n");
+}
+
+/+
+void gt()
+{
+    float _3 = 3;
+    assert();
+    assert();
+    assert();
+    assert();
+}
++/