Search in sources :

Example 6 with BValue

use of org.ballerinalang.model.values.BValue in project carbon-apimgt by wso2.

the class MapRemoveTestCase method testCacheOperations.

@Test
public void testCacheOperations() {
    // Create arguments to initiate map put
    BValue[] args = { new BString("testMapEntry"), new BString("testMapValue") };
    // Test ballerina map put, remove and get
    BValue[] returns = BLangFunctions.invokeNew(bLangProgram, "testMapRemove", args);
    // Assert if cache entry is BValue
    Assert.assertTrue(returns[0] instanceof BValue);
}
Also used : BValue(org.ballerinalang.model.values.BValue) BString(org.ballerinalang.model.values.BString) Test(org.testng.annotations.Test)

Example 7 with BValue

use of org.ballerinalang.model.values.BValue in project carbon-apimgt by wso2.

the class GetKeysTestCase method testGetKeys.

@Test(description = "Get keys from a JSON object")
public void testGetKeys() {
    BValue[] args = {};
    BValue[] returns = BLangFunctions.invokeNew(bLangProgram, "testGetKeys", args);
    Assert.assertTrue(returns[0] instanceof BStringArray);
    BStringArray keys = (BStringArray) returns[0];
    Assert.assertEquals(keys.size(), 3);
    Assert.assertEquals(keys.get(0), "fname");
    Assert.assertEquals(keys.get(1), "lname");
    Assert.assertEquals(keys.get(2), "age");
    Assert.assertTrue(returns[1] instanceof BStringArray);
    Assert.assertEquals(((BStringArray) returns[1]).size(), 0);
    Assert.assertTrue(returns[2] instanceof BStringArray);
    Assert.assertEquals(((BStringArray) returns[2]).size(), 0);
    Assert.assertTrue(returns[3] instanceof BStringArray);
    Assert.assertEquals(((BStringArray) returns[3]).size(), 0);
}
Also used : BValue(org.ballerinalang.model.values.BValue) BStringArray(org.ballerinalang.model.values.BStringArray) Test(org.testng.annotations.Test)

Example 8 with BValue

use of org.ballerinalang.model.values.BValue in project carbon-apimgt by wso2.

the class ListFilesTestCase method testListJsonFiles.

@Test(description = "Returns a string array of json file names")
public void testListJsonFiles() {
    BValue[] args = {};
    BValue[] returns = BLangFunctions.invokeNew(bLangProgram, "listJsonFiles", args);
    Assert.assertTrue(returns[0] instanceof BStringArray);
    Assert.assertEquals(((BStringArray) returns[0]).size(), 0);
    Assert.assertTrue(returns[1] instanceof BStringArray);
    BStringArray d1Files = (BStringArray) returns[1];
    Assert.assertEquals(d1Files.size(), 1);
    Assert.assertEquals(d1Files.get(0), "a.json");
}
Also used : BValue(org.ballerinalang.model.values.BValue) BStringArray(org.ballerinalang.model.values.BStringArray) Test(org.testng.annotations.Test)

Example 9 with BValue

use of org.ballerinalang.model.values.BValue in project carbon-apimgt by wso2.

the class WaitTestCase method testCacheDeleteOperation.

@Test
public void testCacheDeleteOperation() {
    // Create arguments to initiate cache
    BValue[] args = { new BInteger(15) };
    // Test ballerina cache create, put and get
    BValue[] returns = BLangFunctions.invokeNew(bLangProgram, "testWait", args);
    // Assert if cache entry is BValue
    Assert.assertTrue(returns[0] instanceof BValue);
}
Also used : BValue(org.ballerinalang.model.values.BValue) BInteger(org.ballerinalang.model.values.BInteger) Test(org.testng.annotations.Test)

Example 10 with BValue

use of org.ballerinalang.model.values.BValue in project ballerina by ballerina-lang.

the class BTestRunner method extractArguments.

/**
 * Extract function arguments from the values sets.
 * @param valueSets user provided value sets
 * @return a list of function arguments
 */
private List<BValue[]> extractArguments(BValue[] valueSets) {
    List<BValue[]> argsList = new ArrayList<>();
    for (BValue value : valueSets) {
        if (value instanceof BRefValueArray) {
            BRefValueArray array = (BRefValueArray) value;
            for (BIterator it = array.newIterator(); it.hasNext(); ) {
                BValue[] vals = it.getNext(0);
                if (vals[1] instanceof BNewArray) {
                    BNewArray bNewArray = (BNewArray) vals[1];
                    BValue[] args = new BValue[(int) bNewArray.size()];
                    for (int j = 0; j < bNewArray.size(); j++) {
                        args[j] = bNewArray.getBValue(j);
                    }
                    argsList.add(args);
                } else {
                // cannot happen due to validations done at annotation processor
                }
            }
        } else if (value instanceof BJSON) {
            BJSON jsonArrayOfArrays = (BJSON) value;
            for (BIterator it = jsonArrayOfArrays.newIterator(); it.hasNext(); ) {
                BValue[] vals = it.getNext(0);
                if (vals[1] instanceof BJSON) {
                    List<BValue> args = new ArrayList<>();
                    BJSON jsonArray = (BJSON) vals[1];
                    for (BIterator it2 = jsonArray.newIterator(); it2.hasNext(); ) {
                        BValue[] vals2 = it2.getNext(0);
                        args.add(vals2[1]);
                    }
                    argsList.add(args.toArray(new BValue[0]));
                } else {
                // cannot happen due to validations done at annotation processor
                }
            }
        } else {
            argsList.add(new BValue[] { value });
        }
    }
    return argsList;
}
Also used : BNewArray(org.ballerinalang.model.values.BNewArray) BValue(org.ballerinalang.model.values.BValue) ArrayList(java.util.ArrayList) BRefValueArray(org.ballerinalang.model.values.BRefValueArray) ArrayList(java.util.ArrayList) List(java.util.List) BIterator(org.ballerinalang.model.values.BIterator) BJSON(org.ballerinalang.model.values.BJSON)

Aggregations

BValue (org.ballerinalang.model.values.BValue)1043 Test (org.testng.annotations.Test)923 BString (org.ballerinalang.model.values.BString)437 BInteger (org.ballerinalang.model.values.BInteger)323 BStruct (org.ballerinalang.model.values.BStruct)188 BFloat (org.ballerinalang.model.values.BFloat)118 BJSON (org.ballerinalang.model.values.BJSON)112 BBoolean (org.ballerinalang.model.values.BBoolean)79 CompileResult (org.ballerinalang.launcher.util.CompileResult)60 BRefValueArray (org.ballerinalang.model.values.BRefValueArray)45 BMap (org.ballerinalang.model.values.BMap)43 BXMLItem (org.ballerinalang.model.values.BXMLItem)42 BXML (org.ballerinalang.model.values.BXML)40 BStringArray (org.ballerinalang.model.values.BStringArray)30 BIntArray (org.ballerinalang.model.values.BIntArray)25 BBlob (org.ballerinalang.model.values.BBlob)23 HttpHeaders (io.netty.handler.codec.http.HttpHeaders)19 BeforeTest (org.testng.annotations.BeforeTest)19 HTTPCarbonMessage (org.wso2.transport.http.netty.message.HTTPCarbonMessage)19 BallerinaException (org.ballerinalang.util.exceptions.BallerinaException)16