Package org.boris.xlloop

Source Code of org.boris.xlloop.MarshallTest

/*******************************************************************************
* This program and the accompanying materials
* are made available under the terms of the Common Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/cpl-v10.html
*
* Contributors:
*     Peter Smith
*******************************************************************************/
package org.boris.xlloop;

import junit.framework.TestCase;

import org.boris.xlloop.util.XLoperObjectConverter;
import org.boris.xlloop.xloper.XLArray;

public class MarshallTest extends TestCase
{
    XLoperObjectConverter xlo = new XLoperObjectConverter();
    XLArray a = new XLArray(2, 2);
    {
        a.set(0, 0, "string");
        a.set(0, 1, true);
        a.set(1, 0, 3.2);
        a.set(1, 1, 45);
    }

    public void testObject2D() throws Exception {
        Object[][] o = (Object[][]) xlo.createFrom(a, Object[][].class);
        assertEquals(o[0][0], "string");
        assertEquals(o[0][1], Boolean.TRUE);
        assertEquals(o[1][0], new Double(3.2));
        assertEquals(o[1][1], new Integer(45));
    }

    public void testXLArray() throws Exception {
        XLArray a2 = (XLArray) xlo.createFrom(a, XLArray.class);
        assertEquals(a, a2);
    }

    public void testDouble2D() throws Exception {
        Double[][] d = (Double[][]) xlo.createFrom(a, Double[][].class);
        assertEquals(d[0][0], null);
        assertEquals(d[0][1], new Double(1));
        assertEquals(d[1][0], new Double(3.2));
        assertEquals(d[1][1], new Double(45));
    }

    public void testPrimitiveDouble2D() throws Exception {
        double[][] d2 = (double[][]) xlo.createFrom(a, double[][].class);
        assertEquals(d2[0][0], 0., 0);
        assertEquals(d2[0][1], 1., 0);
        assertEquals(d2[1][0], 3.2, 0);
        assertEquals(d2[1][1], 45., 0);
    }

    public void testInteger2D() throws Exception {
        Integer[][] i1 = (Integer[][]) xlo.createFrom(a, Integer[][].class);
        assertEquals(i1[0][0], null);
        assertEquals(i1[0][1], new Integer(1));
        assertEquals(i1[1][0], new Integer(3));
        assertEquals(i1[1][1], new Integer(45));
    }

    public void testPrimitiveInt2D() throws Exception {
        int[][] i2 = (int[][]) xlo.createFrom(a, int[][].class);
        assertEquals(i2[0][0], 0);
        assertEquals(i2[0][1], 1);
        assertEquals(i2[1][0], 3);
        assertEquals(i2[1][1], 45);
    }

    public void testObjectVector() throws Exception {
        Object[] o2 = (Object[]) xlo.createFrom(a, Object[].class);
        assertEquals(o2.length, 4);
        assertEquals(o2[0], "string");
        assertEquals(o2[1], Boolean.TRUE);
        assertEquals(o2[2], new Double(3.2));
        assertEquals(o2[3], new Integer(45));
    }

    public void testPrimitiveDoubleVector() throws Exception {
        double[] d = (double[]) xlo.createFrom(a, double[].class);
        assertEquals(d.length, 4);
        assertEquals(d[0], 0., 0);
        assertEquals(d[1], 1., 0);
        assertEquals(d[2], 3.2, 0);
        assertEquals(d[3], 45., 0);
    }

    public void testDoubleVector() throws Exception {
        Double[] d = (Double[]) xlo.createFrom(a, Double[].class);
        assertEquals(d.length, 4);
        assertEquals(d[0], null);
        assertEquals(d[1], new Double(1.));
        assertEquals(d[2], new Double(3.2));
        assertEquals(d[3], new Double(45.));
    }

    public void testIntegerVector() throws Exception {
        Integer[] d = (Integer[]) xlo.createFrom(a, Integer[].class);
        assertEquals(d.length, 4);
        assertEquals(d[0], null);
        assertEquals(d[1], new Integer(1));
        assertEquals(d[2], new Integer(3));
        assertEquals(d[3], new Integer(45));
    }

    public void testIntegerPrimitiveVector() throws Exception {
        int[] d = (int[]) xlo.createFrom(a, int[].class);
        assertEquals(d.length, 4);
        assertEquals(d[0], 0);
        assertEquals(d[1], 1);
        assertEquals(d[2], 3);
        assertEquals(d[3], 45);
    }

    public void testSingle() throws Exception {
        assertEquals("string", xlo.createFrom(a, Object.class));
        assertEquals(null, xlo.createFrom(a, double.class));
        assertEquals(null, xlo.createFrom(a, Integer.class));
    }
}
TOP

Related Classes of org.boris.xlloop.MarshallTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.