/* * (C) Copyright 2006-2011 Nuxeo SA (http://nuxeo.com/) and others. * * Licensed 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. * * Contributors: * Nuxeo - initial API and implementation * * $Id$ */ package org.nuxeo.common.xmap; import static org.junit.Assert.assertEquals; import java.util.Arrays; import java.util.Collection; import org.junit.Test; import org.nuxeo.common.collections.PrimitiveArrays; public class TestPrimitiveArrays { @SuppressWarnings("rawtypes") private Collection myColl; private Object[] myColl2; @Test public void testIntegerCase() { myColl = Arrays.asList(0, 1); @SuppressWarnings("unchecked") int[] result = (int[]) PrimitiveArrays.toPrimitiveArray(myColl, Integer.TYPE); assertEquals(2, result.length); assertEquals(0, result[0]); assertEquals(1, result[1]); myColl2 = new Integer[] { 0, 1 }; Integer[] result1 = (Integer[]) PrimitiveArrays.toObjectArray(myColl2); assertEquals(2, result1.length); assertEquals(Integer.valueOf(0), result1[0]); assertEquals(Integer.valueOf(1), result1[1]); } @Test public void testLongCase() { myColl = Arrays.asList(0L, 1L); @SuppressWarnings("unchecked") long[] result = (long[]) PrimitiveArrays.toPrimitiveArray(myColl, Long.TYPE); assertEquals(2, result.length, 2); assertEquals(0L, result[0]); assertEquals(1L, result[1]); myColl2 = new Long[] { 0L, 1L }; Long[] result1 = (Long[]) PrimitiveArrays.toObjectArray(myColl2); assertEquals(2, result1.length); assertEquals(Long.valueOf(0), result1[0]); assertEquals(Long.valueOf(1), result1[1]); } @Test public void testDoubleCase() { myColl = Arrays.asList(0.0, 1.0); @SuppressWarnings("unchecked") double[] result = (double[]) PrimitiveArrays.toPrimitiveArray(myColl, Double.TYPE); assertEquals(2, result.length); assertEquals(0.0, result[0], 1e-8); assertEquals(1.0, result[1], 1e-8); myColl2 = new Double[] { 0.0, 1.0 }; Double[] result1 = (Double[]) PrimitiveArrays.toObjectArray(myColl2); assertEquals(2, result1.length); assertEquals(0.0, result1[0], 1e-8); assertEquals(1.0, result1[1], 1e-8); } }