Ranides Atterwim 12 лет назад
Родитель
Сommit
d9ab910a3c
1 измененных файлов с 20 добавлено и 25 удалено
  1. 20 25
      src/test/java/net/ranides/assira/math/PVNumberTest.java

+ 20 - 25
src/test/java/net/ranides/assira/math/PVNumberTest.java

@@ -8,14 +8,17 @@ package net.ranides.assira.math;
 
 
 import java.util.SortedMap;
 import java.util.SortedMap;
 import java.util.TreeMap;
 import java.util.TreeMap;
+import net.ranides.assira.annotations.PMD;
 import net.ranides.assira.text.StringUtils;
 import net.ranides.assira.text.StringUtils;
 import static org.junit.Assert.*;
 import static org.junit.Assert.*;
 import org.junit.Test;
 import org.junit.Test;
 
 
 /**
 /**
- * 
+ *
  * @author ranides
  * @author ranides
  */
  */
+@PMD.UnitTest
+@SuppressWarnings("PMD.AvoidDuplicateLiterals")
  public class PVNumberTest {
  public class PVNumberTest {
 
 
     private static final class RINumber extends PVNumber {
     private static final class RINumber extends PVNumber {
@@ -75,14 +78,6 @@ import org.junit.Test;
             data.put(exponent, value);
             data.put(exponent, value);
         }
         }
 
 
-//        public static RINumber valueOf(PVNumber value) {
-//            RINumber ret = new RINumber(value.base());
-//            for(int i=value.begin(), n=value.end(); i<=n; i++) {
-//                ret.set(i, value.get(i));
-//            }
-//            return ret;
-//        }
-
     }
     }
 
 
     public PVNumberTest() {
     public PVNumberTest() {
@@ -100,30 +95,30 @@ import org.junit.Test;
         assertEquals(367.75, a.doubleValue(), 1e-6);
         assertEquals(367.75, a.doubleValue(), 1e-6);
         assertEquals(367.75, a.floatValue(), 1e-6);
         assertEquals(367.75, a.floatValue(), 1e-6);
         assertEquals("367.75", a.toString() );
         assertEquals("367.75", a.toString() );
+        assertEquals("4567.12",  ri("1234567.1234567").toString(4,2) );
 
 
+        assertEquals(2.345678E-21,  ri(20,  "23456789").floatValue(),  0.000001E-21 );
+        assertEquals(2.3456E-41,    ri(40,  "23456789").floatValue(),  0.0001E-41 );
+        assertEquals(2.345678E-316, ri(315, "23456789").doubleValue(), 0.000001E-316 );
+        assertEquals(2.3456789E-31, ri(30,  "23456789").doubleValue(), 0.0000001E-31 );
 
 
-        System.out.println( new RINumber("1234567.1234567").toString(4,2) );
-
-        System.out.println( new RINumber("0."+D(20)+"23456789").floatValue() );
-
-        System.out.println( new RINumber("0."+D(40)+"23456789").floatValue() );
+        assertTrue( ri("367.75").compareTo(ri("367.72")) > 0 );
+        assertTrue( ri("367.72").compareTo(ri("367.75")) < 0);
 
 
-        System.out.println( new RINumber("0."+D(315)+"23456789").doubleValue() );
+        assertTrue( ri("367.75").compareTo(ri("3677.5")) < 0);
+        assertTrue( ri("3677.5").compareTo(ri("367.75")) > 0);
 
 
-        System.out.println( new RINumber("0."+D(30)+"23456789").doubleValue() );
+        assertTrue( ri("15").compareTo(ri("14")) > 0);
+        assertTrue( ri("14").compareTo(ri("15")) < 0);
 
 
-        System.out.println( new RINumber("367.75").compareTo(new RINumber("367.72")) > 0);
-        System.out.println( new RINumber("367.72").compareTo(new RINumber("367.75")) < 0);
-        System.out.println( new RINumber("367.75").compareTo(new RINumber("3677.5")) < 0);
-        System.out.println( new RINumber("3677.5").compareTo(new RINumber("367.75")) > 0);
-
-        System.out.println( new RINumber("15").compareTo(new RINumber("14")) > 0);
-        System.out.println( new RINumber("14").compareTo(new RINumber("15")) < 0);
+    }
 
 
+    private static PVNumber ri(int zeros, String value) {
+        return new RINumber("0." + StringUtils.nCopies(zeros, '0') + value);
     }
     }
 
 
-    private static String D(int n) {
-        return StringUtils.nCopies(n, '0').toString();
+    private static PVNumber ri(String value) {
+        return new RINumber(value);
     }
     }
 
 
 }
 }