Package com.googlecode.aviator.runtime.function.seq

Source Code of com.googlecode.aviator.runtime.function.seq.SeqIncludeFunctionUnitTest

package com.googlecode.aviator.runtime.function.seq;

import static org.junit.Assert.*;

import java.util.HashSet;
import java.util.Set;

import org.junit.Test;

import com.googlecode.aviator.runtime.type.AviatorNil;
import com.googlecode.aviator.runtime.type.AviatorObject;
import com.googlecode.aviator.runtime.type.AviatorRuntimeJavaType;


public class SeqIncludeFunctionUnitTest {

    @Test
    public void testInclude_Array() {
        Integer[] a = new Integer[3];
        a[0] = 1;
        a[1] = -100;

        AviatorObject[] args = new AviatorObject[2];
        args[0] = new AviatorRuntimeJavaType(a);
        args[1] = new AviatorRuntimeJavaType(-100);

        SeqIncludeFunction fun = new SeqIncludeFunction();
        AviatorObject result = fun.call(null, args);
        assertTrue(result.booleanValue(null));

        // contains null Object
        args[1] = AviatorNil.NIL;
        result = fun.call(null, args);
        assertTrue(result.booleanValue(null));

        // not match
        args[1] = new AviatorRuntimeJavaType(1000);
        result = fun.call(null, args);
        assertFalse(result.booleanValue(null));
    }


    @Test
    public void testInclude_HashSet() {
        Set<Integer> a = new HashSet<Integer>();
        a.add(1);
        a.add(-100);
        a.add(null);

        AviatorObject[] args = new AviatorObject[2];
        args[0] = new AviatorRuntimeJavaType(a);
        args[1] = new AviatorRuntimeJavaType(-100);

        SeqIncludeFunction fun = new SeqIncludeFunction();
        AviatorObject result = fun.call(null, args);
        assertTrue(result.booleanValue(null));

        // contains null Object
        args[1] = new AviatorRuntimeJavaType(null);
        result = fun.call(null, args);
        assertTrue(result.booleanValue(null));

        // not match
        args[1] = new AviatorRuntimeJavaType(1000);
        result = fun.call(null, args);
        assertFalse(result.booleanValue(null));

    }


    @Test(expected = IllegalArgumentException.class)
    public void testInclude_String() {
        AviatorObject[] args = new AviatorObject[2];
        args[0] = new AviatorRuntimeJavaType("hello");
        args[1] = new AviatorRuntimeJavaType("h");

        SeqIncludeFunction fun = new SeqIncludeFunction();
        AviatorObject result = fun.call(null, args);
    }

}
TOP

Related Classes of com.googlecode.aviator.runtime.function.seq.SeqIncludeFunctionUnitTest

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.