You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ni...@apache.org on 2008/04/16 01:34:32 UTC
svn commit: r648456 - in /commons/sandbox/me/trunk: ./ build-lib/ src/org/
src/org/apache/ src/org/apache/commons/ src/org/apache/commons/me/
src/org/apache/commons/me/math/ src/org/apache/commons/me/util/
test-src/org/ test-src/org/apache/ test-src/or...
Author: nick
Date: Tue Apr 15 16:34:27 2008
New Revision: 648456
URL: http://svn.apache.org/viewvc?rev=648456&view=rev
Log:
Update the build to fetch junit on demand, and add first bit of code
Added:
commons/sandbox/me/trunk/src/org/
commons/sandbox/me/trunk/src/org/apache/
commons/sandbox/me/trunk/src/org/apache/commons/
commons/sandbox/me/trunk/src/org/apache/commons/me/
commons/sandbox/me/trunk/src/org/apache/commons/me/math/ (with props)
commons/sandbox/me/trunk/src/org/apache/commons/me/util/ (with props)
commons/sandbox/me/trunk/src/org/apache/commons/me/util/ArrayHelper.java (with props)
commons/sandbox/me/trunk/test-src/org/
commons/sandbox/me/trunk/test-src/org/apache/
commons/sandbox/me/trunk/test-src/org/apache/commons/
commons/sandbox/me/trunk/test-src/org/apache/commons/me/
commons/sandbox/me/trunk/test-src/org/apache/commons/me/math/ (with props)
commons/sandbox/me/trunk/test-src/org/apache/commons/me/util/ (with props)
commons/sandbox/me/trunk/test-src/org/apache/commons/me/util/TestArrayHelper.java (with props)
Removed:
commons/sandbox/me/trunk/build-lib/junit-3.8.1.jar
Modified:
commons/sandbox/me/trunk/build.xml
Modified: commons/sandbox/me/trunk/build.xml
URL: http://svn.apache.org/viewvc/commons/sandbox/me/trunk/build.xml?rev=648456&r1=648455&r2=648456&view=diff
==============================================================================
--- commons/sandbox/me/trunk/build.xml (original)
+++ commons/sandbox/me/trunk/build.xml Tue Apr 15 16:34:27 2008
@@ -117,13 +117,17 @@
</path>
+ <property name="repository" value="http://www.ibiblio.org/maven"/>
+ <property name="junit.jar1.dir" location="build-lib/junit-3.8.1.jar"/>
+ <property name="junit.jar1.url" value="${repository}/junit/jars/junit-3.8.1.jar"/>
+
<!-- ******************************************** -->
<!-- Core setup tasks -->
<!-- ******************************************** -->
<!-- Ensure that all the directories we need exist -->
- <target name="init">
+ <target name="init" depends="check-jars,fetch-jars">
<mkdir dir="build"/>
<mkdir dir="build/ant-classes"/>
<mkdir dir="build/mobile-classes"/>
@@ -131,6 +135,17 @@
<mkdir dir="build/dist"/>
<mkdir dir="build/tests"/>
<mkdir dir="build/ide-classes"/>
+ </target>
+
+ <!-- Ensure all jars we need are found -->
+ <target name="check-jars">
+ <condition property="junit.present">
+ <available file="${junit.jar1.dir}"/>
+ </condition>
+ </target>
+ <target name="fetch-jars" depends="fetch-junit" />
+ <target name="fetch-junit" unless="junit.present">
+ <get src="${junit.jar1.url}" dest="${junit.jar1.dir}"/>
</target>
<!-- Delete all jars, and compiled classes -->
Propchange: commons/sandbox/me/trunk/src/org/apache/commons/me/math/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Apr 15 16:34:27 2008
@@ -0,0 +1,2 @@
+*.swp
+*.class
Propchange: commons/sandbox/me/trunk/src/org/apache/commons/me/util/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Apr 15 16:34:27 2008
@@ -0,0 +1,2 @@
+*.swp
+*.class
Added: commons/sandbox/me/trunk/src/org/apache/commons/me/util/ArrayHelper.java
URL: http://svn.apache.org/viewvc/commons/sandbox/me/trunk/src/org/apache/commons/me/util/ArrayHelper.java?rev=648456&view=auto
==============================================================================
--- commons/sandbox/me/trunk/src/org/apache/commons/me/util/ArrayHelper.java (added)
+++ commons/sandbox/me/trunk/src/org/apache/commons/me/util/ArrayHelper.java Tue Apr 15 16:34:27 2008
@@ -0,0 +1,34 @@
+package org.apache.commons.me.util;
+
+/**
+ * Array related helper methods
+ */
+public class ArrayHelper {
+ public static boolean equals(int[] a, int[] b) {
+ if(a == null || b == null) { return false; }
+ if(a.length != b.length) { return false; }
+ for(int i=0; i<a.length; i++) {
+ if(a[i] != b[i]) { return false; }
+ }
+ return true;
+ }
+ public static boolean equals(float[] a, float[] b) {
+ if(a == null || b == null) { return false; }
+ if(a.length != b.length) { return false; }
+ for(int i=0; i<a.length; i++) {
+ if(a[i] != b[i]) { return false; }
+ }
+ return true;
+ }
+ public static boolean equals(double[] a, double[] b) {
+ if(a == null || b == null) { return false; }
+ if(a.length != b.length) { return false; }
+ for(int i=0; i<a.length; i++) {
+ // We want within 0.001%
+ double delta = Math.abs(a[i]-b[i]);
+ double rel_delta = delta / a[i] * 100;
+ if(rel_delta > 0.001) { return false; }
+ }
+ return true;
+ }
+}
Propchange: commons/sandbox/me/trunk/src/org/apache/commons/me/util/ArrayHelper.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: commons/sandbox/me/trunk/test-src/org/apache/commons/me/math/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Apr 15 16:34:27 2008
@@ -0,0 +1,2 @@
+*.class
+*.swp
Propchange: commons/sandbox/me/trunk/test-src/org/apache/commons/me/util/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Apr 15 16:34:27 2008
@@ -0,0 +1,2 @@
+*.swp
+*.class
Added: commons/sandbox/me/trunk/test-src/org/apache/commons/me/util/TestArrayHelper.java
URL: http://svn.apache.org/viewvc/commons/sandbox/me/trunk/test-src/org/apache/commons/me/util/TestArrayHelper.java?rev=648456&view=auto
==============================================================================
--- commons/sandbox/me/trunk/test-src/org/apache/commons/me/util/TestArrayHelper.java (added)
+++ commons/sandbox/me/trunk/test-src/org/apache/commons/me/util/TestArrayHelper.java Tue Apr 15 16:34:27 2008
@@ -0,0 +1,134 @@
+/* ====================================================================
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+==================================================================== */
+package org.apache.commons.me.util;
+
+import junit.framework.TestCase;
+
+/**
+ * Tests for the Array Helper
+ */
+public class TestArrayHelper extends TestCase {
+ public void testEqualsInts() {
+ assertFalse(
+ ArrayHelper.equals(new int[0], null)
+ );
+ assertFalse(
+ ArrayHelper.equals(new int[0], new int[1])
+ );
+ assertFalse(
+ ArrayHelper.equals(new int[] { 1, 2 }, new int[] { 1 })
+ );
+ assertFalse(
+ ArrayHelper.equals(new int[] { 1, 2 }, new int[] { 1,3 })
+ );
+
+ assertTrue(
+ ArrayHelper.equals(new int[0], new int[0])
+ );
+ assertTrue(
+ ArrayHelper.equals(new int[1], new int[1])
+ );
+ assertTrue(
+ ArrayHelper.equals(new int[] { 1 }, new int[] { 1 })
+ );
+ assertTrue(
+ ArrayHelper.equals(new int[] { 1,5,6 }, new int[] { 1,5,6 })
+ );
+ }
+
+ public void testEqualsFloats() {
+ assertFalse(
+ ArrayHelper.equals(new float[0], null)
+ );
+ assertFalse(
+ ArrayHelper.equals(new float[0], new float[1])
+ );
+ assertFalse(
+ ArrayHelper.equals(new float[] { 1, 2 }, new float[] { 1 })
+ );
+ assertFalse(
+ ArrayHelper.equals(new float[] { 1, 2 }, new float[] { 1,3 })
+ );
+
+ assertTrue(
+ ArrayHelper.equals(new float[0], new float[0])
+ );
+ assertTrue(
+ ArrayHelper.equals(new float[1], new float[1])
+ );
+ assertTrue(
+ ArrayHelper.equals(new float[] { 1 }, new float[] { 1 })
+ );
+ assertTrue(
+ ArrayHelper.equals(new float[] { 1.66f }, new float[] { 1.66f })
+ );
+ assertTrue(
+ ArrayHelper.equals(new float[] { 1,5,6 }, new float[] { 1,5,6 })
+ );
+ }
+
+ public void testEqualsDoubles() {
+ assertFalse(
+ ArrayHelper.equals(new double[0], null)
+ );
+ assertFalse(
+ ArrayHelper.equals(new double[0], new double[1])
+ );
+ assertFalse(
+ ArrayHelper.equals(new double[] { 1, 2 }, new double[] { 1 })
+ );
+ assertFalse(
+ ArrayHelper.equals(new double[] { 1, 2 }, new double[] { 1,3 })
+ );
+
+ assertTrue(
+ ArrayHelper.equals(new double[0], new double[0])
+ );
+ assertTrue(
+ ArrayHelper.equals(new double[1], new double[1])
+ );
+ assertTrue(
+ ArrayHelper.equals(new double[] { 1 }, new double[] { 1 })
+ );
+ assertTrue(
+ ArrayHelper.equals(new double[] { 1.66f }, new double[] { 1.66f })
+ );
+ assertTrue(
+ ArrayHelper.equals(new double[] { 1.66 }, new double[] { 1.66 })
+ );
+ assertTrue(
+ ArrayHelper.equals(new double[] { 1,5,6 }, new double[] { 1,5,6 })
+ );
+
+ // Must be within 0.001%
+ assertTrue(
+ ArrayHelper.equals(new double[] { 1.66000001 }, new double[] { 1.66000002 })
+ );
+ assertTrue(
+ ArrayHelper.equals(new double[] { 1.6600001 }, new double[] { 1.6600002 })
+ );
+ assertTrue(
+ ArrayHelper.equals(new double[] { 1.660001 }, new double[] { 1.660002 })
+ );
+ assertTrue(
+ ArrayHelper.equals(new double[] { 1.66001 }, new double[] { 1.66002 })
+ );
+ assertFalse(
+ ArrayHelper.equals(new double[] { 1.6601 }, new double[] { 1.6602 })
+ );
+ }
+}
Propchange: commons/sandbox/me/trunk/test-src/org/apache/commons/me/util/TestArrayHelper.java
------------------------------------------------------------------------------
svn:eol-style = native